:root { --paper:#eceee8; --hero:#e7e9e2; --hero-deep:#d9ddce; --ink:#20231d; --muted:#686d61; --line:#c5c9c0; --olive:#878d58; --red:#7a1f2b; --card:#f5f5f0; --dark:#263d31; }
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; background:var(--paper); color:var(--ink); font:14px Arial,Helvetica,sans-serif; } button,input { font:inherit; } button { cursor:pointer; } main { max-width:560px; margin:auto; padding:0 14px 40px; }
header { height:66px; display:flex; align-items:center; justify-content:space-between; } .brand { display:flex; align-items:center; gap:9px; min-height:42px; padding:4px 12px 4px 4px; border:1px solid #aeb2a8; border-radius:22px; letter-spacing:-.4px; font-size:12px; } .brand b { font-weight:900; } .brand strong { font-weight:400; } .mark { width:33px; height:33px; object-fit:cover; border-radius:50%; } .header-note { color:var(--muted); font-size:10px; font-weight:700; }
.hero { position:relative; min-height:490px; overflow:hidden; padding:34px 20px 22px; border:1px solid #cbd0c6; border-radius:30px; background:linear-gradient(125deg,#f1efed 0%,var(--hero) 55%,var(--hero-deep) 100%); } .eyebrow { display:flex; align-items:center; gap:8px; color:var(--muted); letter-spacing:1.1px; font-size:8px; font-weight:800; } .eyebrow span { width:20px; height:1px; background:var(--red); } .hero h1,.catalog h2,.results h2,.product h2 { margin:17px 0; font-family:Georgia,"Times New Roman",serif; font-weight:400; letter-spacing:-2.8px; line-height:.89; } .hero h1 { position:relative; z-index:1; max-width:290px; font-size:49px; } .hero>p { position:relative; z-index:1; max-width:290px; margin:0; color:#50564e; font-size:13px; line-height:1.55; } .hero-actions { position:relative; z-index:2; display:flex; align-items:center; gap:18px; margin-top:21px; } button { border:0; } .primary { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:14px 16px; color:#fff; background:var(--red); border-radius:13px; text-transform:none; letter-spacing:0; font-size:11px; font-weight:800; } .primary b { font-size:16px; line-height:0; } .hero-link { padding:8px 0; color:#3c5140; background:transparent; border-bottom:1px solid #8d9287; font-size:11px; font-weight:700; } .hero-link span { margin-left:9px; }
.trust-row { position:relative; z-index:3; display:grid; grid-template-columns:repeat(3,1fr); gap:7px; margin-top:28px; } .trust-row span { min-height:76px; padding:9px; border:1px solid #c7ccc2; border-radius:14px; background:#f3f3ef; color:#4f564c; font-size:9px; line-height:1.25; } .trust-row i { display:block; margin-bottom:9px; color:#8c9285; font-style:normal; font-size:8px; }
.route-art { position:absolute; right:-7px; bottom:116px; width:190px; height:218px; } .china,.russia { position:absolute; display:flex; flex-direction:column; } .china { left:3px; bottom:22px; } .russia { right:17px; top:14px; } .china i,.russia i { display:grid; place-items:center; width:27px; height:27px; color:#fff; border-radius:50%; background:var(--dark); font-size:8px; font-style:normal; font-weight:800; box-shadow:0 0 0 6px #ffffff55; } .russia i { background:#4084df; } .china b,.russia b { margin-top:7px; font-size:13px; } .china small,.russia small { color:#777e73; margin-top:2px; font-size:8px; } .route-line { position:absolute; top:80px; left:27px; width:134px; height:56px; border:1px dashed #93996e; border-bottom:0; border-radius:100% 100% 0 0; transform:rotate(-19deg); } .route-line em { position:absolute; top:-16px; left:62px; color:var(--red); font-size:21px; font-style:normal; } .shipment-card { position:absolute; right:8px; bottom:-52px; width:135px; padding:12px; color:#f2f2e9; background:#20231d; box-shadow:0 12px 28px #686d6140; } .shipment-card small { display:block; color:#a8ad77; letter-spacing:1px; font-size:7px; } .shipment-card b { display:block; margin:9px 0; font-size:12px; } .shipment-card span { color:#9ca094; font-size:8px; }
.strip { display:grid; grid-template-columns:repeat(4,1fr); min-height:69px; margin:7px 0 34px; padding:10px 4px; color:#fff; background:var(--dark); border-radius:22px; } .strip span { padding:0 8px; border-right:1px solid #647166; color:#c8d0c5; font-size:7px; line-height:1.2; } .strip span:last-child { border:0; } .strip b { display:block; margin-bottom:5px; color:#fff; font-family:Georgia,"Times New Roman",serif; font-size:13px; font-weight:400; }
.catalog { margin:0 0 28px; } .catalog-head { display:flex; align-items:end; justify-content:space-between; gap:14px; margin-bottom:18px; } .catalog h2 { margin:12px 0 0; font-size:45px; } .catalog-head>span { max-width:112px; color:var(--muted); font-size:10px; line-height:1.4; text-align:right; } .chips { display:flex; gap:6px; overflow:auto; margin:0 0 16px; padding-bottom:2px; } .chips button { flex:0 0 auto; padding:9px 12px; color:#fff; background:#4A1828; border:1px solid #4A1828; border-radius:14px; font-size:10px; font-weight:700; } .chips button:first-child { color:#fff; background:#4A1828; border-color:#4A1828; }
.catalog-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; } .catalog-card { position:relative; isolation:isolate; aspect-ratio:1.13/1; min-height:0; overflow:hidden; padding:13px; color:var(--ink); background:var(--card); background-size:cover; background-position:center; text-align:left; } .catalog-card.has-photo { display:flex; flex-direction:column; justify-content:end; color:#fff; background-color:#465144; background-blend-mode:soft-light; } .catalog-card.has-photo::before { content:""; position:absolute; z-index:-1; inset:0; background:linear-gradient(150deg,#20231d05 12%,#20231dbb 100%); } .catalog-card b,.catalog-card small { display:block; } .catalog-card b { font-family:Georgia,"Times New Roman",serif; font-size:18px; font-weight:400; } .catalog-card small { margin-top:6px; color:var(--muted); font-size:9px; font-weight:700; } .catalog-card.has-photo small { color:#e7e9e2; } .hint { color:var(--muted); font-size:10px; line-height:1.45; }
.card { margin:14px 0; padding:16px; background:var(--card); } label { display:block; margin-bottom:9px; font-weight:700; font-size:11px; } input { width:100%; margin-bottom:10px; padding:12px 0; color:var(--ink); background:transparent; border:0; border-bottom:1px solid #9ba096; outline:0; } input::placeholder { color:#8b9087; } .pair { display:grid; grid-template-columns:88px 1fr; gap:10px; } #search,.secondary,.full { width:100%; padding:14px 17px; color:#fff; background:var(--dark); text-transform:uppercase; letter-spacing:.45px; font-size:10px; font-weight:800; } .text { width:auto; padding:9px 0; color:var(--ink); background:transparent; font-size:10px; font-weight:700; } .save { display:block; margin:6px 0 0; } .row { display:flex; align-items:center; justify-content:space-between; } .calc-panel { margin:14px 0; } .calc-panel summary { width:max-content; padding:10px 0; list-style:none; cursor:pointer; border-bottom:1px solid var(--ink); color:var(--ink); font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.35px; } .calc-panel summary::-webkit-details-marker { display:none; } .calc-panel[open] summary { color:var(--muted); border-color:var(--muted); } .calc-fields { margin-top:10px; }
.favorite { display:flex; justify-content:space-between; gap:8px; padding:11px 0; border-top:1px solid var(--line); } .favorite:first-child { border-top:0; } .favorite button { width:auto; padding:6px 0; color:var(--ink); background:transparent; font-size:10px; }
.results,.product { margin:28px 0; } .results h2,.product h2 { font-size:36px; } .product-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; } .product-card { position:relative; display:block; overflow:hidden; padding:0 0 12px; color:var(--ink); background:var(--card); text-align:left; text-transform:none; letter-spacing:0; } .product-card img { display:block; width:100%; aspect-ratio:1; object-fit:cover; background:#d7dacd; } .product-card b,.product-card small { display:block; padding:0 10px; } .product-card b { min-height:32px; margin-top:10px; font-family:Georgia,"Times New Roman",serif; font-size:13px; font-weight:400; line-height:1.2; } .product-card small { margin-top:6px; color:var(--muted); font-size:10px; text-transform:none; } .card-number { position:absolute; top:8px; left:8px; display:grid; place-items:center; width:26px; height:26px; color:#fff; background:var(--dark); font-size:10px; font-weight:700; } .image-placeholder { opacity:.35; } .detail-gallery { display:flex; gap:8px; overflow:auto; margin-top:13px; padding-bottom:5px; scroll-snap-type:x mandatory; } .detail-gallery img { width:86%; flex:0 0 86%; aspect-ratio:1; object-fit:cover; scroll-snap-align:start; background:var(--card); } .back { margin:0 0 13px; } .price { margin:0; color:var(--muted); font-size:12px; font-weight:700; }
@media (prefers-color-scheme:dark) { :root { --paper:#20231d; --hero:#2b3028; --hero-deep:#343b31; --ink:#f2f2e9; --muted:#b4b8ad; --line:#4a4f47; --olive:#a8ad77; --card:#2b2f29; --dark:#e7e9e2; } header { border-color:#3a3e37; } .hero { border-color:#4a4f47; } .primary { background:var(--red); } .shipment-card { color:#20231d; background:#e7e9e2; } .catalog-card.has-photo { background-color:#20231d; } }
.route-art { bottom:220px; }
/* Unified rounded burgundy controls. */
.primary,#search,.secondary,.full { background:#4A1828; border-radius:14px; }
.card { border-radius:20px; }
.calc-panel summary { padding:10px 13px; color:#fff; background:#4A1828; border:0; border-radius:14px; }
.calc-panel[open] summary { color:#fff; background:#7A1F2B; }
.catalog-card,.product-card,.detail-gallery img { border-radius:18px; }
.photo-unavailable { display:grid; place-items:center; width:100%; aspect-ratio:1; padding:12px; box-sizing:border-box; color:var(--muted); background:#d7dacd; font-size:11px; text-align:center; }
.search-row { display:grid; grid-template-columns:minmax(0,3fr) minmax(82px,1fr); gap:8px; align-items:stretch; }
.quick-search { margin:0 0 12px; }
.search-row input { min-width:0; margin:0; }
.search-row #search { width:auto; min-height:44px; padding:10px 12px; }
.detail-gallery .photo-unavailable { flex:0 0 86%; width:86%; border-radius:18px; }
.loading-grid .product-card { pointer-events:none; }
.loading-grid .photo-unavailable { background:#d7dacd; }
.cart-toggle { padding:10px 12px; color:#fff; background:#4A1828; border-radius:14px; font-size:11px; font-weight:800; white-space:nowrap; }
.cart-toggle span { display:inline-grid; place-items:center; min-width:18px; height:18px; margin-left:4px; padding:0 4px; color:#4A1828; background:#fff; border-radius:9px; }
.cart-panel { margin:0 0 12px; }
.cart-panel .row { margin-bottom:8px; }
.cart-items { font-size:12px; }
.cart-item { display:flex; justify-content:space-between; align-items:center; gap:8px; padding:10px 0; border-top:1px solid var(--line); }
.cart-item-info { flex:1; min-width:0; }
.cart-item-info b { display:-webkit-box; overflow:hidden; -webkit-line-clamp:2; -webkit-box-orient:vertical; font-size:12px; line-height:1.25; }
.cart-item-info small { display:block; margin-top:4px; color:var(--muted); font-size:10px; }
.cart-quantity { display:flex; align-items:center; gap:4px; flex:0 0 auto; }
.cart-quantity button { width:29px; height:29px; color:#fff; background:#4A1828; border-radius:9px; }
.cart-quantity span { min-width:18px; text-align:center; font-size:12px; }
.product h2 { margin:10px 0; font-size:25px; letter-spacing:-1px; line-height:1.05; }
.results h2 { font-size:29px; }
.product-actions { display:flex; align-items:center; gap:12px; margin-top:12px; }
.product-actions .secondary { width:auto; flex:1; padding:11px 14px; }
.product-actions .text { flex:0 0 auto; font-size:11px; }
.product-card b { display:-webkit-box; overflow:hidden; -webkit-line-clamp:3; -webkit-box-orient:vertical; max-height:48px; }
.card-number { background:#4A1828; border-radius:9px; }
.product-info { margin:7px 0 12px; }
.product-facts:not(:empty) { margin:10px 0; padding:10px 12px; background:var(--card); border-radius:14px; font-size:11px; }
.product-facts>b { display:block; margin-bottom:6px; color:var(--ink); font-size:11px; }
.product-fact { display:flex; justify-content:space-between; gap:10px; padding:4px 0; border-top:1px solid var(--line); }
.product-fact span { color:var(--muted); }
.product-fact strong { max-width:60%; text-align:right; font-weight:600; }
.product-variants { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin:10px 0; }
.variant-field { display:block; min-width:0; margin:0; font-size:11px; }
.variant-field span { display:block; margin-bottom:5px; font-size:11px; font-weight:700; }
.variant-field select,.variant-field input { width:100%; min-height:41px; margin:0; padding:9px 10px; color:var(--ink); background:var(--card); border:1px solid var(--line); border-radius:12px; font-size:12px; }
.quantity-field { max-width:140px; }
.availability { min-height:16px; margin:8px 0; }
.product-actions button:disabled,.cart-panel button:disabled { opacity:.5; cursor:not-allowed; }
.cart-edit { width:auto; margin:5px 10px 0 0; padding:0; color:#7A1F2B; background:transparent; font-size:10px; font-weight:700; }
.cart-note-label { display:flex; gap:5px; align-items:baseline; margin:10px 0 4px; }
.cart-note-label small { color:var(--muted); font-size:10px; font-weight:400; }
.cart-panel textarea { display:block; width:100%; min-height:52px; padding:9px 10px; color:var(--ink); background:transparent; border:1px solid var(--line); border-radius:12px; font:12px Arial,Helvetica,sans-serif; resize:vertical; }
@media (max-width:360px) { .product-variants { grid-template-columns:1fr; } }
/* Shopping flow: keep search, product options and ordering close together. */
.shopping-view .hero,.shopping-view .strip,.shopping-view .catalog { display:none; }
.shopping-view .results,.shopping-view .product { margin:12px 0 24px; }
.results-home { display:block; margin:-7px 0 12px; color:#4A1828; }
.card-action { display:block; margin:9px 10px 0; padding:8px 0 0; border-top:1px solid var(--line); color:#4A1828; font-size:11px; font-weight:800; }
.product { padding-bottom:18px; }
.product .detail-gallery { margin:0 0 12px; }
.product .detail-gallery img,.product .detail-gallery .photo-unavailable { flex-basis:72%; width:72%; max-height:270px; }
.product h2 { margin:7px 0 8px; }
.product .price { color:#4A1828; font-size:14px; font-weight:800; }
.product-variants { grid-template-columns:1fr; margin:12px 0 8px; }
.variant-field { padding:8px 10px; background:var(--card); border:1px solid var(--line); border-radius:13px; }
.variant-field span { margin-bottom:7px; }
.variant-choices { display:flex; flex-wrap:wrap; gap:6px; max-height:110px; overflow:auto; }
.variant-choice { min-width:40px; min-height:36px; padding:7px 10px; border:1px solid #aeb4a9; border-radius:10px; color:var(--ink); background:transparent; font-size:11px; font-weight:700; }
.variant-choice[aria-pressed="true"] { border-color:#4A1828; color:#fff; background:#4A1828; }
.variant-choice:disabled { opacity:.4; text-decoration:line-through; cursor:not-allowed; }
.variant-field.needs-choice { border-color:#7A1F2B; box-shadow:0 0 0 2px #7A1F2B40; }
.quantity-field { max-width:155px; }
.availability { min-height:0; margin:6px 1px 10px; font-size:11px; }
.product-actions { position:sticky; z-index:10; bottom:0; display:grid; grid-template-columns:1fr 1fr; gap:7px; margin:10px -14px 0; padding:9px 14px max(9px,env(safe-area-inset-bottom)); background:var(--paper); box-shadow:0 -6px 16px #00000012; }
.product-actions .secondary,.product-actions .primary { width:100%; min-height:44px; padding:11px 6px; justify-content:center; border-radius:12px; font-size:11px; text-transform:none; letter-spacing:0; }
.product-actions .primary { background:#4A1828; }
.product-actions .secondary { color:#4A1828; background:transparent; border:1px solid #4A1828; }
.order-hint { margin:5px 0 12px; }
.product-facts:not(:empty) { margin:12px 0; }
.product-facts summary { cursor:pointer; font-size:11px; font-weight:700; }
.product-facts:not([open]) .product-fact { display:none; }
.cart-panel { scroll-margin-top:8px; }
.cart-panel #cart-send { min-height:44px; text-transform:none; letter-spacing:0; font-size:12px; }
.product-card .similar-label { display:inline-block; width:max-content; margin:7px 10px 0; padding:4px 6px; color:#4A1828; background:#eee2e5; border-radius:6px; font-size:9px; font-weight:700; }
@media (max-width:360px) { .variant-choices { max-height:150px; } }

/* ANFAMA website visual system; product, cart and order handlers remain unchanged. */
:root { --paper:#eee9e2; --ink:#24382d; --muted:#747873; --line:#d5d7d0; --card:#ffffffad; --dark:#24382d; --red:#4a1828; }
body { background:linear-gradient(160deg,#f5f1ed 0%,#ebe8e0 42%,#dbe0d7 100%); color:var(--ink); font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Helvetica Neue",Arial,sans-serif; }
main { max-width:560px; margin:auto; padding:0 0 32px; }
header { position:sticky; z-index:30; top:0; height:52px; padding:0 18px; background:#f5f1edf0; border-bottom:1px solid #e3e2dc; backdrop-filter:blur(16px); box-shadow:0 1px 18px #2d37480f; }
.brand { min-height:0; height:46px; padding:4px 11px 4px 4px; border:1px solid #b6b9b2; border-radius:999px; gap:8px; font-size:11px; letter-spacing:-.3px; }
.brand .mark { width:37px; height:37px; box-shadow:0 0 0 2px #d4e3ef; }
.cart-toggle { height:32px; padding:5px 10px; border-radius:999px; font-size:10px; background:var(--red); }
.cart-toggle span { min-width:17px; height:17px; font-size:10px; }
.hero { min-height:294px; margin:14px 8px 0; padding:22px 18px; border:1px solid #b9d3ec; border-radius:20px; background:linear-gradient(120deg,#f5efed 0%,#e9e9e5 65%,#dde2d8 100%); box-shadow:0 18px 52px #2f445e1a; }
.eyebrow { color:#555f52; font-size:9px; letter-spacing:1px; text-transform:uppercase; }
.eyebrow span { width:18px; background:#9b5667; }
.hero h1 { max-width:none; margin:12px 0 10px; font-size:27px; letter-spacing:-1.2px; line-height:.96; color:var(--ink); }
.hero>p { max-width:none; margin:0; color:#343c2f; font-family:"Avenir Next",Avenir,"Helvetica Neue",Arial,sans-serif; font-size:14px; line-height:1.4; }
.hero-actions { display:flex; align-items:center; flex-wrap:wrap; gap:10px 20px; margin-top:18px; }
.primary { min-height:46px; padding:12px 20px; border-radius:14px; color:#fff; background:var(--red); font-family:"Avenir Next",Avenir,"Helvetica Neue",Arial,sans-serif; font-size:12px; text-transform:none; box-shadow:0 8px 28px #0071e321; }
.hero-link { padding:10px 0; border:0; color:#2477ca; font-size:12px; }
.hero-link span { margin-left:16px; }
.hero .trust-row,.hero .route-art { display:none; }
.strip { min-height:82px; margin:4px 8px 0; padding:8px 10px; border-radius:16px; background:#24382d; box-shadow:0 18px 52px #2f445e1a; grid-template-columns:repeat(2,1fr); gap:4px 8px; }
.strip span { min-height:28px; padding:0 6px; border:0; color:#aebaae; font-size:9px; }
.strip b { display:inline; margin:0 4px 0 0; color:#fff; font-family:Georgia,"Times New Roman",serif; font-size:14px; }
.catalog { margin:0; padding:32px 18px 18px; }
.catalog-head { display:block; margin:0 0 18px; }
.catalog h2 { margin:10px 0 0; font-size:27px; letter-spacing:-1.3px; line-height:.92; }
.catalog-head>span { display:block; max-width:none; margin-top:8px; color:#5c635b; font-size:12px; line-height:1.4; text-align:left; }
.catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; }
.catalog-card,.catalog-card.has-photo { display:flex; flex-direction:row; align-items:center; justify-content:flex-start; aspect-ratio:auto; min-height:46px; height:46px; padding:4px 8px 4px 50px; border:1px solid #aeb1b1; border-radius:14px; color:#fff; background-color:#4a1828; background-size:40px 38px; background-position:4px center; background-repeat:no-repeat; background-blend-mode:normal; box-shadow:inset 0 1px #ffffff35; }
.catalog-card.has-photo::before { z-index:-1; background:linear-gradient(90deg,#0000 0 42px,#4a1828 52px); }
.catalog-card b { font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Helvetica Neue",Arial,sans-serif; font-size:10px; font-weight:800; line-height:1.15; }
.catalog-card small { display:none; }
.catalog-card:after { content:"↗"; margin-left:auto; opacity:.8; font-size:14px; }
.chips { margin:10px 0 0; gap:6px; }
.chips button,.chips button:first-child { min-height:31px; padding:6px 11px; border:1px solid #ccbfc3; border-radius:999px; color:#4a1828; background:#f5f1edb8; font-size:10px; }
.quick-search { display:flex; align-items:center; gap:7px; min-height:40px; margin:8px 0 0; padding:4px 6px 4px 12px; border:1px solid #d5bfc6; border-radius:12px; background:#ffffffad; box-shadow:0 1px 2px #0000000c; }
.quick-search label { width:0; height:0; margin:0; overflow:hidden; }
.quick-search:before { content:"⌕"; color:#8c4359; font-size:18px; line-height:1; }
.search-row { display:flex; flex:1; min-width:0; gap:4px; }
.search-row input { flex:1; min-width:0; padding:4px 2px; border:0; color:var(--ink); font-size:12px; }
.search-row #search { flex:0 0 auto; min-height:29px; padding:5px 11px; border-radius:8px; font-size:10px; text-transform:none; }
.search-row #photo-search { flex:0 0 31px; width:31px; min-height:29px; padding:0; border:1px solid #d4bbc2; border-radius:8px; color:#4a1828; background:#f5ecee; font-size:16px; }
.search-row #photo-search:disabled { opacity:.55; }
.catalog>.hint { margin:10px 0 0; }
.calc-panel { margin:18px 8px; border:1px solid #b9d3ec; border-radius:20px; background:linear-gradient(120deg,#f6f1ed,#e2e7df); box-shadow:0 18px 52px #2f445e1a; overflow:hidden; }
.calc-panel summary,.calc-panel[open] summary { display:block; width:100%; padding:22px 18px; border:0; border-radius:0; color:var(--ink); background:transparent; text-transform:none; letter-spacing:0; }
.calc-panel summary .eyebrow { margin-bottom:14px; }
.calc-panel summary strong { display:block; margin-bottom:12px; font-size:20px; line-height:1.05; }
.calc-panel summary small { display:block; color:#71776e; font-size:12px; line-height:1.4; font-weight:400; }
.calc-panel summary em { display:inline-block; margin-top:17px; padding:9px 12px; border:1px solid #b8a5ab; border-radius:999px; color:#4a1828; background:#fff9; font-size:11px; font-style:normal; font-weight:800; }
.calc-fields { margin:0 12px 14px; border-radius:13px; }
.catalog+.results,.results,.product { margin:16px 18px; }
.results h2,.product h2 { color:var(--ink); }
.results-home,.card-action,.cart-edit { color:var(--red); }
.product-card { border:1px solid #dedfd9; background:#f7f6f2; }
.product-card img { background:#e3e6df; }
.product-card b { font-size:13px; }
.product-card small { font-size:10px; }
.card-number { background:var(--red); }
.product .price { color:var(--red); }
.variant-choice[aria-pressed="true"] { border-color:var(--red); background:var(--red); }
.product-actions { margin-left:-18px; margin-right:-18px; padding-left:18px; padding-right:18px; }
.product-actions .primary { background:var(--red); }
.product-actions .secondary { border-color:var(--red); color:var(--red); }
.cart-panel,.card:not(.quick-search) { margin-left:18px; margin-right:18px; border:1px solid #c5d6e6; background:#f8f8f5c7; box-shadow:0 10px 28px #2f445e12; }
.cart-panel { margin-top:12px; }
.calc-fields { margin-left:12px!important; margin-right:12px!important; }
#orders { display:block; width:calc(100% - 36px); margin:14px 18px 0; }
.shopping-view .hero,.shopping-view .strip,.shopping-view .catalog-head,.shopping-view .catalog-grid,.shopping-view .chips,.shopping-view .catalog>.hint { display:none; }
.shopping-view .catalog { display:block; padding:10px 18px 0; }
.shopping-view .quick-search { margin:0; }
.shopping-view .results,.shopping-view .product { margin:12px 18px 24px; }
@media (min-width:561px) { header { border-radius:0 0 14px 14px; } }

/* Keep labels and photos solid; only the button surfaces are 70% transparent. */
.primary,#search,.secondary,.full,.cart-toggle,.cart-quantity button,
.variant-choice[aria-pressed="true"],.chips button,.chips button:first-child {
  background-color:rgba(74,24,40,.3);
  color:#35101d;
  border:1px solid rgba(74,24,40,.55);
  box-shadow:none;
}
.product-actions .primary,.product-actions .secondary,
.search-row #search { background-color:rgba(74,24,40,.3); color:#35101d; }
.search-row #photo-search { background-color:rgba(74,24,40,.3); color:#35101d; }
.catalog-card,.catalog-card.has-photo { background-color:rgba(74,24,40,.3); }
.catalog-card.has-photo::before { background:linear-gradient(90deg,#0000 0 42px,rgba(74,24,40,.3) 52px); }
.product-card { background-color:rgba(245,245,240,.3); }
.cart-toggle span { background:rgba(255,255,255,.3); color:#35101d; }
.calc-panel summary em { background:rgba(74,24,40,.3); color:#35101d; }
.catalog-card,.catalog-card.has-photo { gap:6px; padding-left:4px; background-image:none; }
.catalog-card.has-photo::before { display:none; }
.catalog-thumb { display:block; flex:0 0 40px; width:40px; height:38px; object-fit:cover; border-radius:11px; }
