/* Existing typography and palette stay inherited. */
footer{display:block}
.footer-information{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.social-section{padding:30px 0 0;margin:30px 0 0;border-top:1px solid var(--line);text-align:center}
.social-section h2{font-family:inherit;font-size:16px;line-height:1.5;color:var(--paper);margin:0 0 20px}
.social-list{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:min(440px,100%);padding:0;margin:0 auto}
.social-list li{min-width:0}
.social-channel{display:flex;flex-direction:column;align-items:center;gap:8px;min-height:88px;padding:10px 2px;font-size:12px;line-height:1.5;text-decoration:none;color:#f4f3ee;overflow-wrap:anywhere}
.social-channel svg{width:26px;height:26px;flex:none}
.social-channel small{font-size:11px;line-height:1.5}
.social-channel.is-pending{color:#a7a7a1;cursor:default}
.social-channel:not(.is-pending):hover{color:#c4ddba}
.social-channel:focus-visible{outline:2px solid #c4ddba;outline-offset:2px}
#product-view{touch-action:pan-y pinch-zoom;cursor:grab;user-select:none}
#product-view:active{cursor:grabbing}
#product-view img{-webkit-user-drag:none;user-select:none}
#angle-help{max-width:36em;margin:10px auto 0}
.purchase-companion{position:fixed;z-index:40;left:0;right:0;bottom:0;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:14px 6% calc(14px + env(safe-area-inset-bottom,0px));background:#000;border-top:1px solid var(--line);box-shadow:0 -8px 24px #0006;max-width:100%;box-sizing:border-box}
.purchase-companion[hidden]{display:none!important}
.companion-summary{display:grid;gap:4px;min-width:0;overflow-wrap:anywhere}
.companion-name{color:var(--paper);font-size:16px;line-height:1.4}
.companion-price{color:var(--muted);font-size:13px;line-height:1.5}
.companion-actions{display:flex;gap:8px;flex:0 1 430px;min-width:0}
.companion-actions .button{flex:1;min-width:0;min-height:44px;padding:10px 12px;white-space:normal;overflow-wrap:anywhere}
body:has(dialog[open]) .purchase-companion{display:none}
.detail-description{scroll-margin-bottom:180px}
@media(max-width:700px){.footer-information{flex-direction:column;gap:8px}.purchase-companion{display:grid;gap:10px;padding:12px 6% calc(12px + env(safe-area-inset-bottom,0px))}.companion-summary{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.companion-price{text-align:right}.companion-actions{width:100%}}
@media(max-width:300px){.social-list{grid-template-columns:repeat(2,minmax(0,1fr))}.companion-summary{display:grid;gap:4px}.companion-price{text-align:left}}
@media(max-height:450px){.purchase-companion{padding-top:8px;padding-bottom:calc(8px + env(safe-area-inset-bottom,0px));gap:6px}.companion-name{font-size:14px}.companion-price{font-size:12px}}
