/* Draw arrows consistently instead of relying on platform emoji fonts. */
.arrow-icon{display:inline-block;width:18px;height:18px;flex-shrink:0;vertical-align:middle;color:inherit}
.family-explore .arrow-icon,.chapter-back .arrow-icon{width:16px;height:16px}
.image-arrow .arrow-icon,.gallery-prev .arrow-icon,.gallery-next .arrow-icon{width:20px;height:20px}
.card-open-icon .arrow-icon{width:17px;height:17px}
@media(max-width:680px){
 .chapter-pieces{grid-template-columns:minmax(0,1fr);gap:40px}
 .chapter-pieces .ring-photo,.product-dialog .product-image-wrap{aspect-ratio:1 / 1}
 .chapter-pieces .ring-photo img,.ring-open:hover .ring-photo img{transform:none;object-fit:cover;object-position:var(--mobile-object-x,50%) 50%}
 .chapter-pieces .ring-meta{font-size:9px;letter-spacing:1.1px;margin:17px 0 9px}
 .chapter-pieces .ring-name{font-size:43px;line-height:1.05}
 .chapter-pieces .ring-phrase{font-size:12px;line-height:1.7;margin-top:9px;min-height:0}
 .chapter-pieces .ring-state{font-size:10px;line-height:1.6;margin-top:15px;padding-top:12px}
 .ring-photo:has(img[src*="crete-concept"]),.ring-photo:has(img[src*="pli-concept"]),.ring-photo:has(img[src*="estran-concept"]),.ring-photo:has(img[src*="strate-concept"]){--mobile-object-x:70%}
 .ring-photo:has(img[src*="vestige-concept"]),.ring-photo:has(img[src*="etreinte-concept"]){--mobile-object-x:65%}
 .card-open-icon{width:34px;height:34px;right:14px;bottom:14px;opacity:1;transform:none;background:#f1efe8ed}
 .card-open-icon .arrow-icon{width:18px;height:18px}
 .gallery-prev,.gallery-next{width:42px;height:42px}
 .chapter-signature .arrow-icon{width:19px;height:19px}
}

/* Keep the signature image captions readable over dark mineral stone. */
.hero-image{background:#302e27}
.hero-image .image-index{color:#f1efe8;text-shadow:0 1px 6px #0005}
.hero-image .image-arrow{background:#f1efe8eb;border-color:#f1efe888;color:#38382f}
