.product-page .product-colors {
 border:0;
 padding:0;
 margin:24px 0;
 min-inline-size:0;
 color:#1a433c;
}
.product-page .product-colors legend { padding:0; margin-bottom:10px; font-size:16px; font-weight:500; }
.product-color-options { display:flex; gap:12px; flex-wrap:wrap; }
.product-color-option { position:relative; cursor:pointer; }
.product-color-option input { position:absolute; width:1px; height:1px; opacity:0; }
.product-color-label {
 display:flex;
 align-items:center;
 justify-content:center;
 gap:10px;
 min-height:48px;
 padding:10px 16px;
 border:2px solid #1a433c24;
 border-radius:999px;
 box-sizing:border-box;
 font-size:16px;
 line-height:1.25;
 background:#fff;
}
.product-color-swatch { width:22px; height:22px; border-radius:50%; box-shadow:inset 0 0 0 1px #1a433c22; }
.product-color-swatch-blue { background:#149bd7; }
.product-color-swatch-black { background:#20292b; }
.product-color-option input:checked + .product-color-label { border-color:#1a433c; background:#e8eae9; }
.product-color-option input:focus-visible + .product-color-label { outline:3px solid #57bedb; outline-offset:4px; }
@media (hover:hover) {
 .product-color-option:hover .product-color-label { border-color:#1a433c; }
}
