.gallery-tabs,.config-view-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.gallery-tabs{margin-bottom:12px;border-bottom:1px solid var(--line)}
.gallery-tabs button{padding:12px 14px;border-bottom:2px solid transparent;font-size:.75rem}
.gallery-tabs button[aria-pressed=true]{border-color:var(--bronze);color:var(--bronze)}
.config-viewer{background:#eeeceb;border:1px solid var(--line);position:relative;min-width:0}
.config-viewer canvas{width:100%;height:auto;display:block;aspect-ratio:1.6;background:radial-gradient(ellipse at center,#fbfaf9,#e6e3e1)}
.config-view-controls{justify-content:space-between;padding:12px;border-top:1px solid #cfccca;color:#2a2726;font-size:.625rem}
.config-view-controls>div{display:flex;gap:6px}
.config-view-controls button{padding:7px 10px;border:1px solid #b7b3b0}
.config-view-controls button[aria-pressed=true]{background:#302b29;color:#fff;border-color:#302b29}
.config-loading{padding:16px;color:#514843;font-size:.75rem}
.config-loading:empty{display:none}
.engraving-preview{display:grid;gap:5px;margin:16px 0;color:var(--muted);font-size:.6875rem}
.engraving-preview input{width:100%;padding:10px;border:1px solid var(--line);background:var(--paper)}
.configurator-note{font-size:.625rem;color:var(--muted);line-height:1.7;margin-top:12px}
.configurator-note:empty{display:none}
[hidden]{display:none!important}
.hero-feature-slot{position:relative;min-width:0;overflow:hidden;isolation:isolate;background:#e5e3e2}
.hero-feature-slot>.hero-mosaic-feature{position:absolute;inset:0;width:100%;height:100%}
.hero-feature-slot.is-rotating{pointer-events:none}
@media(max-width:740px){.gallery-tabs button{padding:11px 8px;font-size:.6875rem}.config-view-controls{gap:12px;font-size:.5625rem}.config-viewer canvas{aspect-ratio:1.4;object-fit:contain}.gallery{min-width:0}}
@media(prefers-reduced-motion:reduce){.hero-mosaic-photo img{transition:none}}

/* Keep the visual configurator easy to discover in both gallery modes. */
.gallery-tabs{padding-bottom:12px;gap:12px}
.gallery-tabs [data-gallery-mode="configurator"]{display:inline-flex;align-items:center;justify-content:center;gap:12px;margin-left:auto;min-height:52px;padding:13px 22px;border:1px solid var(--bronze);background:var(--bronze);color:var(--configurator-ink,#fff);font-size:.875rem;font-weight:700;box-shadow:0 4px 12px #00000018;transition:filter .2s,box-shadow .2s}
.gallery-tabs [data-gallery-mode="configurator"]:hover{filter:brightness(.9);box-shadow:0 6px 16px #00000026}
.gallery-tabs [data-gallery-mode="configurator"][aria-pressed="true"]{border-color:var(--bronze);color:var(--configurator-ink,#fff);box-shadow:inset 0 0 0 2px currentColor,0 4px 12px #00000018}
.configurator-tab-icon{width:22px;height:22px;flex:none}
@media(max-width:740px){.gallery-tabs [data-gallery-mode="configurator"]{flex:1;min-height:52px;padding:13px 16px;font-size:.875rem;gap:10px}}

.configurator-poster{position:absolute;inset:0 0 auto;width:100%;aspect-ratio:1.6;object-fit:contain;background:#eeeceb;pointer-events:none}
.config-viewer[data-ready="true"] .configurator-poster{display:none}
.config-viewer:not([data-ready="true"]) .config-loading{position:relative;margin:0;padding:14px 16px;background:#eeeceb;border-top:1px solid #d5d0ca}
@media(max-width:740px){.configurator-poster{aspect-ratio:1.4}}

.card-configure{background:var(--bronze);color:var(--configurator-ink,#fff);padding:12px 14px;font-weight:700;min-height:48px}

.product-configurator-cta{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:56px;margin:20px 0 26px;padding:15px 20px;background:var(--bronze);border:1px solid var(--bronze);color:var(--configurator-ink,#fff);font-size:1rem;font-weight:700;box-shadow:0 4px 12px #00000018}
.button.product-configurator-cta:hover{background:var(--bronze);color:var(--configurator-ink,#fff);filter:brightness(.9)}

.basket-total{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:20px 0 8px;font-size:1rem}.basket-total strong{font-size:1.25rem}
