/* Photographic rail: direct manipulation, independent compositor layers. */
.rail-showcase{position:relative;background:#e4e1db url('assets/models/sky.webp') center/cover;padding:24px 0 32px;overflow:hidden;border-top:0}
.rail-heading{position:relative;z-index:2;color:#383733}.rail-scroll{position:relative;overflow:hidden;touch-action:pan-y;margin:0;background:none}.rail-stage{display:block;position:relative;width:100%;max-width:none;height:420px;margin:28px 0 0;padding:0;touch-action:pan-y;cursor:grab;isolation:auto}.rail-stage:active{cursor:grabbing}.rail-stage:before{display:none}.chrome-rail{position:absolute;top:0;left:-10%;width:120%;height:90px;pointer-events:none}.rail-item,.rail-item[aria-pressed=true]{position:absolute;left:calc(50% - 190px);top:35px;width:380px;height:380px;padding:0;min-width:0;flex:none;perspective:1100px;transform-origin:50% 0;transition:none;will-change:transform;touch-action:pan-y}.rail-item img,.rail-item:nth-child(2n) img,.rail-item[aria-pressed=true] img{position:static;display:block;width:100%;height:100%;object-fit:contain;transform-origin:50% 5%;transition:none;filter:none;pointer-events:none;will-change:transform}.rail-bottom{position:relative;z-index:3;padding:20px 5% 0;grid-template-columns:1fr 2fr 1fr}.rail-arrows button{border-radius:50%;background:#f0eee866;border-color:#8c898077;width:44px;height:44px}.rail-discover{border:1px solid #080808;background:#080808;color:#f0eee8;padding:16px 24px;border-radius:28px}#rail-caption h2{font-size:20px}#rail-caption p,.rail-number{color:#45433e}.rail-hint{color:#45433e}
#rail-dialog{background:#e4e1db url('assets/models/sky.webp') center/cover;padding:72px 7vw 40px;overflow:auto}#rail-dialog::backdrop{background:#e4e1db}#rail-focus{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);align-items:center;gap:5vw;width:1100px;max-width:100%;padding:0;min-height:calc(100dvh - 112px);text-align:left}.piece-gallery{min-width:0;align-self:center;animation:piece-in .4s ease-out}.gallery-images{height:min(65dvh,670px);position:relative}.gallery-image{position:absolute;width:100%;height:100%;object-fit:contain;opacity:0;transform:translateY(8px);transition:opacity .3s ease-out,transform .3s ease-out;pointer-events:none}.gallery-image.is-visible{opacity:1;transform:translateY(0)}.model-view{mask-image:linear-gradient(#000 87%,transparent 100%)}.gallery-tabs{display:flex;justify-content:center;gap:4px;margin:8px auto 0;width:fit-content;padding:4px;border-radius:24px;background:#f0eee8a8;border:1px solid #fff8}.gallery-tabs button{min-height:40px;padding:0 16px;font-size:10px;border-radius:20px;color:#47443e}.gallery-tabs button[aria-pressed=true]{background:#080808;color:#f0eee8}.gallery-status{height:16px;margin:8px 0;text-align:center;font-size:10px}.piece-panel{padding:30px;border:1px solid #fff9;border-radius:16px;background:#f0eee8d9;box-shadow:0 2px 6px #00003,0 24px 60px #0001;animation:panel-in .3s ease-out}#rail-focus .eyebrow{margin:0 0 20px}#rail-product-title{font-size:clamp(26px,3vw,42px);line-height:1.02;font-weight:500;letter-spacing:-1.2px;text-wrap:balance}.focus-description{margin:20px 0;font-size:13px;color:#504e48;line-height:1.65}.focus-price{margin:14px 0;font-size:20px}.focus-options{display:block;margin:24px 0;text-align:left}.focus-options fieldset{margin:22px 0 0}.focus-options .sizes{display:flex;flex-wrap:wrap;gap:5px}.focus-options .sizes span{min-width:38px;height:42px}.colour-option{justify-content:start;height:auto}#rail-add-form>.solid-button{max-width:none;width:100%;margin:0;border-radius:6px}.piece-panel details{border-top:1px solid #b7b4ab;margin-top:16px;font-size:11px}.piece-panel summary{padding:15px 0;cursor:pointer}.piece-panel details p{font-size:12px;line-height:1.6}.piece-panel .small-note{color:#615d55;font-size:10px}.rail-close{top:20px;left:4vw;background:#f0eee880;border:1px solid #fff8;border-radius:24px;padding:14px 20px}.focus-arrow{top:50%;background:#f0eee880;border-color:#aaa8}.focus-arrow.previous{left:1vw}.focus-arrow.next{right:1vw}.rail-close,.focus-arrow{min-height:44px}
@keyframes piece-in{from{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@keyframes panel-in{from{opacity:0;transform:translateX(16px)}to{opacity:1;transform:translateX(0)}}
@media(max-width:700px){.rail-stage{height:330px;margin-top:15px}.rail-item,.rail-item[aria-pressed=true]{width:280px;height:280px;left:calc(50% - 140px);top:48px}.chrome-rail{height:90px}.rail-heading{padding:0 16px;letter-spacing:.4px}.rail-heading>span:first-child{font-size:8px}.rail-bottom{grid-template-columns:1fr;justify-items:center;gap:12px;padding:6px 16px 0}.rail-arrows{position:absolute;top:8px;left:12px;right:12px;justify-content:space-between;pointer-events:none}.rail-arrows button{pointer-events:auto}#rail-caption{max-width:calc(100% - 90px);min-height:66px}#rail-caption h2{font-size:16px;line-height:1.2}.rail-discover{justify-self:center;grid-column:auto;padding:14px 25px}.rail-showcase{padding:18px 0 24px}#rail-dialog{padding:66px 16px 24px}#rail-focus{display:block;min-height:0}.gallery-images{height:40dvh;min-height:270px;max-height:420px}.gallery-tabs{margin:0 auto}.gallery-tabs button{min-height:40px;padding:0 15px}.gallery-status{margin:4px 0}.piece-panel{padding:23px;border-radius:14px}.focus-arrow{position:fixed;top:24dvh}.focus-arrow.previous{left:8px}.focus-arrow.next{right:8px}.rail-close{top:12px;left:16px}.focus-options{text-align:left}.focus-options fieldset{margin-top:16px}.focus-description{font-size:12px;margin:16px 0}#rail-product-title{font-size:29px}.focus-price{margin:12px 0}.piece-panel .small-note{margin-top:15px}}
@media(prefers-reduced-motion:reduce){.piece-gallery,.piece-panel{animation:none}.gallery-image{transition:none;transform:none}}
.rail-showcase{isolation:isolate}
@media(min-width:701px){.identity{padding:10px 32px}.identity .wordmark{height:72px}.rail-stage{height:400px}.rail-item,.rail-item[aria-pressed=true]{width:360px;height:360px;left:calc(50% - 180px)}}
