.social-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.social-links a{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 14px;border:1px solid #b9c9d8;border-radius:8px;font-weight:700}
.social-links .shop-icon{width:23px;height:23px}
.mobile-menu-dialog{padding:0;border:0;margin:0;width:100%;max-width:none;height:100dvh;max-height:none;background:#f5f7f9;color:#15202c;overflow:hidden}
.mobile-menu-dialog::backdrop{background:#15202c99}
.mobile-menu-panel{box-sizing:border-box;display:flex;flex-direction:column;height:100dvh;width:100%;background:linear-gradient(130deg,#fff,#edf2f6);text-align:center}
.mobile-menu-heading{display:flex;align-items:center;justify-content:space-between;flex:none;padding:12px 20px;border-bottom:3px solid #0c4c91;background:#fff}
.mobile-menu-heading>a{display:block;line-height:0}
.mobile-menu-heading img{display:block;width:145px;height:65px;object-fit:contain}
.mobile-menu-heading button{display:grid;place-items:center;min-width:48px;min-height:48px;padding:13px;border:1px solid #c9d3dc;border-radius:12px;background:#edf1f4;color:#15202c;cursor:pointer}
.mobile-menu-heading button svg{width:21px;height:21px}
.mobile-menu-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:20px max(16px,calc((100% - 740px)/2)) 24px}
.mobile-worlds h2,.mobile-menu-social h2{font-size:24px;margin:0 0 16px;text-align:center}
.mobile-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
a.mobile-photo-tile{position:relative;display:block;min-width:0;aspect-ratio:1.18;overflow:hidden;border-radius:16px;background:#dce3e9;isolation:isolate;color:#fff;text-align:center;box-shadow:0 5px 15px #15202c12}
.mobile-photo-tile::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#071825e6,transparent 75%)}
.mobile-photo-tile>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .3s}
.mobile-photo-tile:focus-visible{outline:3px solid #0c4c91;outline-offset:3px}
.mobile-photo-tile:hover>img{transform:scale(1.04)}
.mobile-photo-tile>strong{position:absolute;bottom:15px;left:7px;right:7px;font-size:clamp(17px,4.6vw,24px);line-height:1.12;text-shadow:0 1px 5px #0008;font-family:var(--font-heading,inherit)}
.mobile-tile-icon{position:absolute;top:10px;left:10px;display:grid;place-items:center;width:36px;height:36px;background:#ffffffed;border-radius:9px;color:#0c4c91}
.mobile-tile-icon svg{width:22px;height:22px}
.mobile-menu-group{border-bottom:1px solid #c7d2dc;padding:4px 0}
.mobile-worlds{padding-bottom:24px;border-bottom:1px solid #c7d2dc}
.mobile-menu-group>summary{display:flex;justify-content:space-between;align-items:center;list-style:none;cursor:pointer;padding:21px 4px;font-size:23px;font-weight:800;line-height:1.2}
.mobile-menu-group>summary::-webkit-details-marker{display:none}
.mobile-menu-group>summary>span{display:grid;place-items:center;background:#e1e7ed;border-radius:50%;width:36px;height:36px;flex:none;transition:transform .2s}
.mobile-menu-group[open]>summary>span{transform:rotate(180deg)}
.mobile-menu-group .mobile-photo-grid{padding-bottom:14px}
.mobile-menu-all{display:block;color:#0c4c91;padding:4px 0 20px;font-weight:800}
.mobile-menu-links,.mobile-menu-panel .menu-logo-links{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:0 0 20px;margin:0;border:0}
.mobile-menu-links a,.mobile-menu-panel .menu-logo-links a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:64px;padding:12px;border-radius:10px;border:1px solid #c7d2dc;background:#fff;font-size:17px;font-weight:700;line-height:1.3}
.mobile-menu-panel .menu-logo-links>span{display:none}
.mobile-menu-links svg{width:24px;height:24px;flex:none}
.mobile-menu-quick{display:grid;gap:0;border-bottom:1px solid #c7d2dc}
.mobile-menu-quick a{padding:17px;font-size:21px;font-weight:800}
.mobile-menu-social{padding-top:24px}
.mobile-menu-social .social-links{justify-content:center;margin-top:0}
.mobile-original-store{display:block;margin-top:18px;color:#0c4c91;font-weight:700}
.mobile-menu-bottom{flex:none;display:grid;padding:12px 20px max(12px,env(safe-area-inset-bottom));border-top:1px solid #c7d2dc;background:#fff;box-shadow:0 -6px 18px #15202c09}
.mobile-menu-bottom .button{width:100%;justify-content:center}
body.menu-open .mobile-quote-bar{visibility:hidden}
@media(max-width:1200px){
 .mobile-navigation[open]>.mobile-menu-panel{position:absolute;inset:100% 0 auto;z-index:1000;padding:0;height:calc(100dvh - 90px);max-height:none;overflow:hidden;border:0;grid-template-columns:none}
 .mobile-navigation .mobile-menu-heading button{display:none}
 .header-shell:has(.mobile-navigation[open]){backdrop-filter:none;transform:none}
 .mobile-navigation>summary{min-height:44px}
 .footer .social-links{justify-content:center}
}
@media(min-width:1201px){.mobile-menu-dialog{display:none}}
@media(prefers-reduced-motion:reduce){.mobile-photo-tile>img,.mobile-menu-group>summary>span{transition:none}}

/* Long color ranges stay available without dominating the product page. */
.pdp-options fieldset>.color-options.all-color-options{grid-template-columns:repeat(6,minmax(0,1fr))}
.all-product-colors{margin-top:12px;border:1px solid #b9c9d8;border-radius:10px;background:#fff;overflow:hidden}
.all-product-colors>summary{display:flex;justify-content:space-between;gap:14px;list-style:none;padding:16px;cursor:pointer;font-size:17px;font-weight:800;color:#0c4c91}
.all-product-colors>summary::-webkit-details-marker{display:none}
.all-product-colors[open]>summary>span{transform:rotate(45deg)}
.all-product-colors .selected-color-note{margin:0;padding:0 16px 10px;font-size:16px}
.all-product-colors .color-options.all-color-options{margin:0;padding:4px 12px 12px;max-height:310px;overflow-y:auto;overscroll-behavior:contain}
.all-product-photos .pdp-gallery-thumbs button{height:auto;min-height:148px;grid-template-rows:88px auto}
.all-product-photos .pdp-gallery-thumbs span{padding-bottom:6px}
@media(max-width:600px){.pdp-options fieldset>.color-options.all-color-options{grid-template-columns:repeat(3,minmax(0,1fr))}}
