/* Unified controls: Moroccan red, rounded forms, restrained motion. */
:root{--action:#a71930;--action-hover:#821127;--action-soft:#f4ded8;--action-ink:#761327}
.button,.header-cta,.mobile-sticky{border-radius:999px;background:var(--action);color:#fff;border:1px solid transparent;box-shadow:0 5px 14px #79162b18;transition:background .2s,box-shadow .2s,transform .2s}
.button.outline{background:transparent;border-color:var(--action);color:var(--action-ink);box-shadow:none}.button.cream{background:#fff0cc;color:#761327}
.button span,.header-cta span{transition:transform .2s}.button:hover span,.header-cta:hover span{transform:translate(3px,-2px)}
.button:disabled{background:#ded7c9;color:#6a6259;box-shadow:none;cursor:not-allowed;transform:none}
.viewer-controls button,.detail-controls button,.photo-tabs button,.stepper button{border-radius:14px;border:1px solid #d9b6aa;background:#fff8e9;color:var(--action-ink);transition:background .18s,transform .18s,box-shadow .18s;min-height:44px}
.viewer-controls button{border-radius:999px;min-width:44px}.viewer-controls button[aria-pressed=true],.photo-tabs button[aria-pressed=true]{background:var(--action);border-color:var(--action);color:white;box-shadow:0 4px 12px #79162b20}
.finish-options label>span{border-radius:17px;background:#fff8e980;border:1px solid #d9c6af;transition:background .2s,border-color .2s,box-shadow .2s}.finish-options input:checked+span{border-color:var(--action);background:var(--action-soft);color:var(--action-ink);box-shadow:inset 0 0 0 1px var(--action)}.finish-options input:checked+span b{color:var(--action-ink)}
.stepper{border-radius:999px;overflow:hidden}.stepper button{border:0;border-radius:999px}.text-button{color:var(--action-ink);text-underline-offset:5px}
button:focus-visible,a:focus-visible,.finish-options input:focus-visible+span{outline:3px solid #af7037;outline-offset:4px}
#product-photo,#viewer-fallback{background:transparent}.photo-tabs img{border-radius:8px}
@media(hover:hover){.button:not(:disabled):hover,.header-cta:hover{background:var(--action-hover);color:white;transform:translateY(-2px);box-shadow:0 9px 20px #79162b25}.viewer-controls button:hover,.detail-controls button:hover,.stepper button:hover{background:var(--action-soft);color:var(--action-ink);transform:translateY(-2px)}.photo-tabs button:hover{box-shadow:0 4px 13px #79162b20;transform:translateY(-2px)}}
.button:not(:disabled):active,.viewer-controls button:active,.detail-controls button:active,.photo-tabs button:active{transform:scale(.97);box-shadow:none}
@media(prefers-reduced-motion:reduce){.button,.header-cta,.mobile-sticky,.button span,.header-cta span,.viewer-controls button,.detail-controls button,.photo-tabs button,.stepper button,.finish-options label>span{transition:none;transform:none!important}}

.header-cta{padding:12px 20px;gap:16px;display:inline-flex;align-items:center}

/* Five gallery views after removing the real-photo option. */
.photo-tabs{grid-template-columns:repeat(5,minmax(0,1fr))}.photo-tabs button{flex-direction:column;gap:5px}@media(max-width:700px){.photo-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}}

.story-section{align-items:center}.story-artwork{min-width:0;line-height:0;background:#f4eedf}.story-artwork img{display:block;width:100%;height:auto;object-fit:contain}.story-copy .button{display:inline-flex;margin-top:20px;gap:24px}.story-copy h2{font-size:clamp(36px,4.3vw,64px);line-height:1.05}.story-copy>p:not(.eyebrow){max-width:480px;line-height:1.8}@media(max-width:700px){.story-section{display:flex;flex-direction:column}.story-artwork{width:100%}.story-copy{width:100%;padding:36px 7%;box-sizing:border-box}}

.social-links{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:24px;padding-top:18px;border-top:1px solid var(--sand-line,#ded6c1)}.social-links a{display:inline-flex;align-items:center;min-height:44px;font-size:12px;font-weight:700;color:#173e34;text-decoration:underline;text-underline-offset:4px}.social-links a:hover{color:#a71932}
@media(max-width:380px){.header{padding-inline:4%;gap:6px}.header-end{gap:7px;min-width:0}.header .logo-crop{width:68px;height:68px}.header .languages{gap:5px}.header-cta{padding:12px 10px;gap:7px;font-size:10px;min-width:0}.header-cta span{flex-shrink:0}}
