/* V3: each category is one continuous photographic set, not image fragments. */
/* Category scene cells retain the square proportions of the original photographs. */
.in-category #shelf-rail{align-items:flex-end;padding-inline:var(--scene-gutter,0px);background-image:var(--scene-photo),url('assets/scene/continuous-shelf.webp');background-size:var(--rail-world-width) var(--scene-unit),auto 100%;background-position:center bottom,center bottom;background-repeat:no-repeat,repeat-x;background-attachment:local,local}
.in-category #shelf-rail .shelf,.in-category #shelf-rail .shelf:first-child{flex:0 0 var(--scene-unit);width:var(--scene-unit);height:var(--scene-unit);aspect-ratio:1}
.in-category #shelf-rail::before,.in-category #shelf-rail::after{content:'';position:absolute;bottom:0;width:var(--scene-gutter);height:var(--scene-unit);background-image:var(--scene-photo);background-size:100000px 100%;background-repeat:no-repeat;pointer-events:none;z-index:1;filter:blur(6px)}
.in-category #shelf-rail::before{left:0;background-position:left bottom}
.in-category #shelf-rail::after{right:0;background-position:right bottom}
/* Caption anchors below are measured against the photographed shelf fascia. */
.in-category .shelf-rail{background-image:var(--scene-photo);background-color:#eadac2;background-repeat:no-repeat;background-attachment:local;background-position:left top;background-size:var(--rail-world-width,100%) 100%}
.shelf-rail .depth-wall,.shelf-rail .sole-projection,.shelf-rail .object::before,.shelf-rail .object::after{display:none!important}
.shelf-rail .product-cutout{opacity:0}
.shelf-rail .shelf,.shelf-rail .shelf:first-child{flex-basis:max(50vw,430px);aspect-ratio:1}
.shelf-rail .shelf .object,.shelf-rail .depth-trial .object{left:6%;width:88%;bottom:29%;height:42%;cursor:pointer}
.shelf-rail[data-scene="sneakers"] .object{bottom:27%;height:43%}
.shelf-rail[data-scene="sandals"] .object{bottom:27%;height:48%}
.shelf-rail[data-scene="bags"]{width:100%;max-width:none;margin:0}
.shelf-rail[data-scene="bags"] .shelf{flex-basis:100%}
.shelf-rail .depth-trial.bag-shelf .object{left:14%;width:72%;height:70%;bottom:22%}
.shelf-rail .shelf>.object-label{bottom:13%;color:#29251f}
.rail-end{display:none!important}
#category-home{background:#eadac2}
#category-home>.welcome{background:#eadac2 url('assets/scene/loafers-v3.webp') left top/auto 1100px no-repeat}
.category-grid{display:block;background:transparent}
.category-grid .category-door.shelf,.category-grid .category-door.shelf:first-child{aspect-ratio:var(--scene-count)/1;background-image:var(--scene-photo);background-size:100% 100%;background-repeat:no-repeat;isolation:isolate}
.category-grid .category-product{display:none}
.category-grid .category-door-copy,.category-grid .category-door:nth-child(-n+2) .category-door-copy{bottom:var(--caption-bottom,13%);left:6%;right:6%}
.category-grid .bag-category{width:100%;max-width:none;margin:0}
.category-door[data-category="loafers"]::after{background:linear-gradient(transparent 77%,#ffdc9628 86%,transparent)}
.scene-note{font-size:11px;line-height:1.6;color:#716a5e;text-align:center;margin:0;padding:12px 20px;background:#eee8de}
@media(max-width:900px){.shelf-rail .shelf,.shelf-rail .shelf:first-child{flex-basis:70vw}}
@media(max-width:600px){.shelf-rail .shelf,.shelf-rail .shelf:first-child{flex-basis:92vw;aspect-ratio:1}.shelf-rail[data-scene="bags"] .shelf{flex-basis:100%}.category-grid .category-door.shelf,.category-grid .category-door.shelf:first-child{aspect-ratio:1;background-size:calc(var(--scene-count)*100%) 100%;background-position:left top}.category-grid .category-door-copy h2{font-size:24px}.shelf-rail .shelf>.object-label{bottom:13%}.category-grid .category-door-copy{bottom:13%}}

/* The first scene fits by width: never crop the shoes to fill viewport height. */
#category-home{position:relative;background:#e7d8c3}
#category-home>.welcome{position:absolute;inset:0 0 auto;z-index:5;min-height:100svh;padding:145px 6% 45px;background:linear-gradient(180deg,#eadbc8a8 0%,#eadbc852 42%,transparent 72%);align-content:start;pointer-events:none}
.category-grid .category-door.shelf[data-category="loafers"],.category-grid .category-door.shelf:first-child{min-height:0;height:calc(50vw + 190px);aspect-ratio:auto;background-size:100% auto;background-position:center bottom;background-color:#e7d8c3}
.category-grid .category-door::after{display:block;content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(180deg,#d9c5a718,#ead8bc0f);opacity:1}
.category-grid .category-door[data-category="loafers"]::after{background:linear-gradient(180deg,#eadbc83d 0%,transparent 46%,#b8936020 100%)}
.category-grid .category-door[data-category="loafers"] .category-door-copy{bottom:5.5%}
@media(max-width:900px){#category-home>.welcome{padding-top:112px}}
@media(max-width:600px){#category-home>.welcome{min-height:100svh;padding:102px 24px 32px;background:linear-gradient(180deg,#eadbc8d9 0%,#eadbc879 39%,transparent 65%)}.category-grid .category-door.shelf[data-category="loafers"],.category-grid .category-door.shelf:first-child{min-height:100svh;aspect-ratio:auto;background-size:auto 100%;background-position:8% center}.category-grid .category-door[data-category="loafers"] .category-door-copy{bottom:6%}}
#category-home>.welcome{min-height:0;height:calc(190px + 24vw);background:linear-gradient(#e7d8c3 0%,#e7d8c3 190px,transparent 100%)}
.welcome .welcome-since{display:flex;align-items:center;gap:15px;letter-spacing:0;margin-bottom:24px}.welcome .welcome-since strong{font:italic 29px/1 Georgia,'Times New Roman',serif;color:#8b2028;letter-spacing:-.8px;font-weight:400;white-space:nowrap}.welcome .welcome-since span{font-size:11px;letter-spacing:.6px;color:#5e5549}
@media(max-width:600px){.welcome .welcome-since{gap:12px;margin-bottom:18px}.welcome .welcome-since strong{font-size:25px}.welcome .welcome-since span{font-size:10px}}
.welcome .welcome-since strong em{display:inline-block;font:italic 1.4em/1 'Palatino Linotype','Book Antiqua',Georgia,serif;font-weight:400;letter-spacing:-1.5px;color:#73604d;margin-right:5px}
.header .brand-signature{font:italic 24px/1 'Palatino Linotype','Book Antiqua',Georgia,serif;color:#756551;letter-spacing:-1px;white-space:nowrap;margin-left:8px}.header .brand-signature b{font-weight:400;color:#8b2028}
@media(max-width:600px){.header .brand-signature{grid-column:1;grid-row:1;align-self:center;margin-left:62px;font-size:17px;letter-spacing:-.5px}.header .brand-signature b{color:#8b2028}}
@media(max-width:600px){.category-grid .category-door.shelf[data-category="loafers"],.category-grid .category-door.shelf:first-child{min-height:0;height:calc(64vw + 270px);background-size:125% auto;background-position:center bottom}#category-home>.welcome{height:calc(270px + 30vw);background:linear-gradient(#e7d8c3 0%,#e7d8c3 270px,transparent 100%)}#category-home>.welcome>span{justify-self:start;text-align:left}}
.category-grid .category-door[data-category="loafers"] .category-door-copy{bottom:6.5vw;transform:none}
.category-grid .category-door[data-category="sneakers"] .category-door-copy,.category-grid .category-door[data-category="bags"] .category-door-copy{bottom:13%;transform:none}
.category-grid .category-door[data-category="sandals"] .category-door-copy{bottom:8%;transform:none}
/* Same two-line typography as Sneakers; center each label on its photographed fascia. */
.category-grid .category-door-copy h2{margin-top:4px;line-height:1.2}
.category-grid .category-door-count{font-size:clamp(15px,1.35vw,18px);gap:16px;font-weight:500}
.category-grid .category-door-count svg{width:26px;height:26px}
@media(max-width:600px){.category-grid .category-door[data-category="loafers"] .category-door-copy{bottom:6.5vw}.category-grid .category-door[data-category="sandals"] .category-door-copy{bottom:14.5%}.category-grid .category-door-copy h2{font-size:24px}.category-grid .category-door-count{font-size:15px;gap:10px}.category-grid .category-door-count svg{width:24px;height:24px}}
/* The sandals caption sits at the center of the photographed stone fascia (76–90% of the scene).
   Anchor it to the scene itself instead of a bottom offset that drifts with card sizing. */
.category-grid .category-door[data-category="sandals"] .category-door-copy{top:83%;bottom:auto;transform:translateY(-50%)}
.category-grid .category-door[data-category="sandals"] .category-door-copy>div:first-child{line-height:1}
.category-grid .category-door[data-category="sandals"] .category-door-copy h2{font-size:clamp(18px,2.3vw,32px);line-height:1;margin-top:2px}
.category-grid .category-door[data-category="sandals"] .category-door-count{font-size:clamp(12px,1.1vw,16px)}
.category-grid .category-door[data-category="sandals"] .category-door-count svg{width:clamp(18px,2vw,24px);height:clamp(18px,2vw,24px)}
@media(max-width:600px){.category-grid .category-door[data-category="sandals"] .category-door-copy span{font-size:9px;line-height:1.1}.category-grid .category-door[data-category="sandals"] .category-door-copy h2{font-size:clamp(18px,6vw,24px);line-height:1;margin-top:2px}.category-grid .category-door[data-category="sandals"] .category-door-count{font-size:13px}.category-grid .category-door[data-category="sandals"] .category-door-count svg{width:18px;height:18px}}

/* Render category photography as image layers so mobile Safari keeps it painted during momentum scrolling. */
.category-grid .category-door{background-image:none!important}
.category-grid .category-scene{position:absolute;z-index:0;left:0;top:0;width:100%;height:100%;max-width:none;object-fit:fill;pointer-events:none}
@media(max-width:600px){.category-grid .category-door[data-category="loafers"] .category-scene{left:50%;top:auto;bottom:0;width:125%;height:auto;max-height:100%;transform:translateX(-50%)}.category-grid .category-door:not([data-category="loafers"]) .category-scene{left:0;top:0;width:calc(var(--scene-count)*100%);height:100%}}


/* Preserve the source photograph proportions in the first showroom scene. */
.category-grid .category-scene{object-fit:cover}
@media(min-width:601px){.category-grid .category-door.shelf[data-category="loafers"]{height:auto;min-height:0;aspect-ratio:2/1}#category-home>.welcome{height:calc(190px + 24vw);background:linear-gradient(180deg,#e7d8c3 0 190px,transparent 290px)}}
/* Keep the opening photograph at its natural 2:1 ratio, lower behind the headline. */
@media(min-width:601px){.category-grid .category-door.shelf[data-category="loafers"]{height:calc(50vw + 190px);min-height:0;aspect-ratio:auto}.category-grid .category-door[data-category="loafers"] .category-scene{left:0;top:auto;bottom:0;width:100%;height:auto;max-height:100%;object-fit:contain}}
@media(max-width:600px){
 .header{height:132px;grid-template-rows:54px 34px 36px}
 .header .language-toggle{position:static;grid-column:1/-1;grid-row:3;justify-self:end;align-self:center;margin:0;padding:4px 9px}
 #category-home>.welcome{padding:145px 24px 32px;height:calc(310px + 30vw);background:linear-gradient(#e7d8c3 0 310px,transparent 390px)}
 .category-grid .category-door.shelf[data-category="loafers"]{height:calc(64vw + 310px);min-height:0}
 .category-grid .category-door[data-category="loafers"] .category-scene{width:125%;height:auto;max-height:100%;left:50%;top:auto;bottom:0;transform:translateX(-50%);object-fit:contain}
 .category-grid .category-door-copy h2{font-size:20px;line-height:1.05;margin:2px 0 0}
 .category-grid .category-door-copy span{font-size:8px;line-height:1;letter-spacing:.7px}
 .category-grid .category-door-count{font-size:12px;line-height:1;gap:7px}
 .category-grid .category-door-count svg{width:18px;height:18px}
 .category-grid .category-door[data-category="loafers"] .category-door-copy{top:90.5%;bottom:auto;transform:translateY(-50%)}
 .category-grid .category-door[data-category="sneakers"] .category-door-copy{top:81%;bottom:auto;transform:translateY(-50%)}
 .category-grid .category-door[data-category="sandals"] .category-door-copy{top:88%;bottom:auto;transform:translateY(-50%)}
 .category-grid .category-door[data-category="bags"] .category-door-copy{top:87%;bottom:auto;transform:translateY(-50%)}
}