.pdp{padding-top:108px}.pdp .breadcrumbs{margin-bottom:28px}.pdp-summary h1{margin-top:0}
body.catalog-route #header{color:#243c45}body.catalog-route .logo img{filter:none}body.catalog-route .menu-toggle span{background:currentColor}
.catalog-banner{height:380px;margin-top:0;position:relative;isolation:isolate;overflow:hidden;background:#bceaf2}.catalog-banner-image{position:absolute;right:var(--pad);top:0;height:100%;width:auto;max-width:none;display:block;mask-image:linear-gradient(90deg,transparent,#000 19%,#000 96%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 19%,#000 96%,transparent)}.catalog-banner-copy{position:relative;z-index:1;height:100%;padding:66px var(--pad) 0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;pointer-events:none}.catalog-banner-copy .breadcrumbs{margin:0 0 18px;color:#557b88;font-size:12px;pointer-events:auto}.catalog-banner-copy .breadcrumbs>span:nth-child(2){opacity:.5}.catalog-banner h1{font:500 clamp(48px,5vw,76px)/1.05 Manrope,sans-serif;letter-spacing:-.05em;margin:0;color:#23404c}.catalog-page{padding-top:22px}.catalog-page .catalog-top{justify-content:flex-end;margin-bottom:14px;min-height:20px}.catalog-page .catalog-top p{font-size:13px}.catalog-page .catalog-controls{margin-bottom:22px}
@media(min-width:1800px){.catalog-banner-image{right:calc(var(--pad) + 2vw)}}
@media(max-width:1000px){.catalog-banner{height:355px}.catalog-banner-image{height:320px;top:auto;bottom:0;right:0}.catalog-banner h1{font-size:58px}}
@media(max-width:700px){.pdp{padding-top:100px}.pdp .breadcrumbs{margin-bottom:20px}}
@media(max-width:600px){.pdp{padding-top:92px}.catalog-banner{margin-top:0;height:360px;background:#bceaf2}.catalog-banner-image{height:215px;top:auto;bottom:0;right:0;mask-image:linear-gradient(180deg,transparent,#000 7%,#000 100%);-webkit-mask-image:linear-gradient(180deg,transparent,#000 7%,#000 100%)}.catalog-banner-copy{padding:92px 22px 0;justify-content:flex-start}.catalog-banner-copy .breadcrumbs{font-size:11px;margin-bottom:10px}.catalog-banner h1{font-size:43px;line-height:1.05}.catalog-page{padding-top:18px}.catalog-page .catalog-top{display:flex;margin-bottom:12px}.catalog-page .catalog-controls{margin-bottom:20px}}

/* Quiet, rounded catalog controls; focus stays on the field itself. */
.catalog-controls input,.catalog-sort>button{border-radius:8px;transition:border-color 160ms ease,background-color 160ms ease}
.catalog-controls input:focus,.catalog-controls input:focus-visible,.catalog-sort button:focus-visible{outline:none;outline-offset:0}
.catalog-controls input:focus{border-color:var(--aqua);background:#fbfdfe}
.catalog-sort{position:relative;flex:0 0 210px;min-width:0}
.catalog-sort>button{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;height:100%;min-height:54px;padding:14px 18px;border:1px solid #c9d9df;background:white;text-align:left;font-size:14px;color:var(--ink)}
.catalog-sort>button:active{transform:none}
.catalog-sort>button:hover{border-color:#95b7c4}
.catalog-sort>button[aria-expanded=true],.catalog-sort>button:focus-visible{border-color:var(--aqua);background:#fbfdfe}
.catalog-sort>button svg{flex-shrink:0;transition:transform 160ms ease}
.catalog-sort>button[aria-expanded=true] svg{transform:rotate(180deg)}
#sort-options{position:absolute;z-index:12;top:calc(100% + 8px);right:0;min-width:100%;padding:6px;border:1px solid #dce6ea;border-radius:12px;background:#fff;box-shadow:0 8px 30px #183c4a16;transform-origin:top right;animation:sort-reveal 160ms cubic-bezier(.23,1,.32,1)}
#sort-options[hidden]{display:none}
#sort-options button{display:flex;align-items:center;justify-content:space-between;gap:16px;white-space:nowrap;width:100%;text-align:left;padding:12px;font-size:14px;border-radius:6px;color:var(--ink)}
#sort-options button:hover,#sort-options button:focus-visible{background:#f1f7f9}
#sort-options button[aria-selected=true]{color:#247f9e;background:#edf7fa}
#sort-options button[aria-selected=true]::after{content:"";width:10px;height:6px;border-left:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg);margin-top:-4px}
@keyframes sort-reveal{from{opacity:0;transform:translateY(-3px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:600px){.catalog-sort{flex-basis:145px}.catalog-sort>button{font-size:12px;padding:12px 10px;gap:8px;min-height:48px}#sort-options{min-width:180px}.catalog-controls input{padding-inline:12px}}

.catalog-page{padding-top:28px}
.product-photo.has-trail{position:relative;isolation:isolate}
.product-trail{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0;opacity:.88}
.product-photo.has-trail img{position:relative;z-index:1;mix-blend-mode:normal}

@media(max-width:600px){.catalog-page{padding-top:22px}}

#catalog-grid .product-card{user-select:none;-webkit-user-select:none}

/* Keep product colors opaque above the revealed texture. */
#catalog-grid .product-photo img{mix-blend-mode:normal;transition:transform 480ms cubic-bezier(.22,1,.36,1)!important;transform-origin:50% 60%}
@media(hover:hover) and (pointer:fine){#catalog-grid .product-card:hover .product-photo img{transform:translateY(-4px) scale(1.018)}}
@media(prefers-reduced-motion:reduce){#catalog-grid .product-photo img{transition:transform 200ms ease-out!important}#catalog-grid .product-card:hover .product-photo img{transform:scale(1.008)}}

.catalog-alternate .product-photo{position:relative;isolation:isolate}
#catalog-grid .catalog-alternate .product-photo img{transition:opacity 240ms ease,transform 480ms cubic-bezier(.22,1,.36,1)!important}
#catalog-grid .catalog-alternate .product-photo-alternate{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#fff;opacity:0;z-index:2;pointer-events:none;transform:none}
#catalog-grid .catalog-alternate.has-active-gallery .product-photo>img:first-child{opacity:0}
#catalog-grid .catalog-alternate .product-photo-alternate.is-active{opacity:1;transform:none}
.product-photo-zones{position:absolute;inset:auto 12px 12px;display:flex;gap:4px;z-index:3;pointer-events:none;padding:5px 0}
.product-photo-zones>span{flex:1;height:2px;border-radius:2px;background:#b1c0c6a6;transition:background-color 140ms ease}
.product-photo-zones>span.is-active{background:#3296bd}
.product-photo-zones[hidden]{display:none}
@media(prefers-reduced-motion:reduce){#catalog-grid .catalog-alternate .product-photo img{transition:opacity 150ms ease-out,transform 200ms ease-out!important}}
