/* Cascading windows: one hero panel, two progressively narrower neighbours. */
.category-journey{background:var(--green);color:var(--ivory);padding:84px 0 54px;scroll-margin-top:103px;overflow:hidden}
.category-journey .eyebrow{color:var(--gold)}
.category-journey .section-top{margin-bottom:42px;align-items:center}
.category-journey .section-top h2{font-size:clamp(30px,3.7vw,58px)}
.cascade-viewport{position:relative;margin:0 auto;width:min(94%,1540px);height:clamp(300px,38vw,590px);overflow:hidden;touch-action:pan-y;isolation:isolate}
.cascade-panel{position:absolute;left:0;top:0;height:100%;padding:0;border:0;border-radius:5px;overflow:hidden;background:#17372b;color:#fff;cursor:pointer;transition:width 1050ms cubic-bezier(.76,0,.24,1),transform 1050ms cubic-bezier(.76,0,.24,1),opacity 600ms;will-change:transform,width;-webkit-user-drag:none}
.cascade-media{position:absolute;left:50%;top:0;bottom:0;width:var(--full-width);transform:translateX(-50%);pointer-events:none}
.cascade-panel img{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;user-select:none}
.cascade-backdrop{object-fit:cover;filter:blur(18px) brightness(.65) saturate(.65);transform:scale(1.13)}
.cascade-photo{object-fit:contain;object-position:center;filter:brightness(.85);transition:filter 700ms}
.cascade-panel.is-active .cascade-photo{filter:brightness(1)}
.cascade-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,#001a1255 78%,#001a12dc 100%);pointer-events:none;opacity:.45;transition:opacity 650ms}
.cascade-panel.is-active .cascade-shade{opacity:1}
.cascade-panel:focus-visible{outline:2px solid #e4c884;outline-offset:-4px}
.cascade-panel:hover .cascade-photo{filter:brightness(1.06)}
.cascade-label{position:absolute;left:28px;right:28px;bottom:26px;display:grid;grid-template-columns:1fr 42px;gap:6px 14px;opacity:0;transform:translateY(18px);transition:opacity 250ms,transform 400ms;pointer-events:none;white-space:nowrap}
.is-active .cascade-label{opacity:1;transform:none;transition:opacity 600ms 500ms,transform 700ms 450ms}
.cascade-kicker{grid-column:1;letter-spacing:.2em;text-transform:uppercase;font-size:10px;color:#e4d7b4}
.cascade-title{grid-column:1;font-family:'Archivo',sans-serif;font-size:clamp(20px,2.1vw,33px);line-height:1.2;font-weight:400;letter-spacing:-.025em}
.cascade-enter{grid-column:2;grid-row:1/3;align-self:end;display:grid;place-items:center;width:40px;height:40px;border:1px solid #ffffff65;border-radius:50%;font-size:23px;transition:background .25s,transform .25s}
.cascade-panel:hover .cascade-enter{background:#f5f1e7;color:#012118;transform:rotate(8deg)}
.cascade-controls{position:relative;display:flex;justify-content:center;align-items:center;gap:8px;margin:24px auto 0;width:fit-content;padding-bottom:18px}
.cascade-controls:after{content:'';position:absolute;bottom:0;left:0;width:100%;height:1px;background:#c4a56830}
.cascade-controls:before{content:'';position:absolute;bottom:0;left:0;width:100%;height:1px;background:#dfc47d;transform:scaleX(0);transform-origin:left;z-index:1}
.is-playing .cascade-controls:before{animation:category-clock 4.3s linear forwards}
@keyframes category-clock{to{transform:scaleX(1)}}
.cascade-controls button{display:grid;place-items:center;border:0;background:#d6ddc7;color:#012118;cursor:pointer;width:34px;height:34px;font-size:18px;line-height:1;transition:background .2s,transform .2s}
.cascade-controls button:hover{background:#dfc47d;transform:translateY(-2px)}
.cascade-count{order:-1;font-size:10px;color:#becab7;letter-spacing:.12em;font-variant-numeric:tabular-nums;margin-right:18px;min-width:54px;text-align:center}
.cascade-controls .cascade-play{margin-left:12px;background:transparent;color:#d6ddc7;border:1px solid #d6ddc740;font-size:13px}
.cascade-details{max-width:1400px;margin:30px auto 0;width:86%;display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:25px;border-top:1px solid #c4a56825;min-height:92px}
.cascade-statement{font-family:'Cinzel',serif;font-size:clamp(20px,2.2vw,29px);color:#dfc47d;margin:0 0 7px}
.cascade-description{color:#a7b8aa;margin:0;font-size:13px}
.cascade-link{font-size:12px;flex-shrink:0;color:#e3d5ac}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.collection-overview{scroll-margin-top:103px}.collection-overview .eyebrow{font-size:12px;color:#766239}.collection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px 28px}.collection-tile-image{background:#e8e2d5}.collection-tile img{width:100%;height:auto;aspect-ratio:767/920;object-fit:contain}.collection-tile-label{display:flex;align-items:baseline;gap:12px;margin-top:18px}.collection-tile-label>span{font-size:12px;color:#79673f}.collection-tile-label h3{font-size:clamp(20px,2vw,28px);line-height:1.25;margin:0;flex:1}.story-skip{color:#dfc47d;font-size:14px;letter-spacing:0;text-transform:none}

@media(max-width:700px){
 .category-journey{padding:50px 0 36px;scroll-margin-top:86px}
 .category-journey .section-top{margin-bottom:28px}.category-journey .section-top h2{font-size:32px}
 .cascade-viewport{width:96%;height:clamp(320px,90vw,460px)}
 .cascade-label{left:16px;right:16px;bottom:20px;grid-template-columns:1fr 28px;gap:8px}
 .cascade-title{font-size:20px;white-space:normal}.cascade-kicker{font-size:8px}
 .cascade-enter{width:28px;height:28px;font-size:18px}
 .cascade-details{display:block;min-height:166px;margin-top:24px}.cascade-link{margin-top:20px}
 .collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 18px}
 .collection-tile-label h3{font-size:19px}.collection-tile-label>span:first-child{display:none}
 .hero-home .bottom{flex-wrap:wrap;gap:12px}.story-skip{font-size:12px}.hero-home .bottom .phases{display:none}
}
.cascade-viewport{cursor:grab}
.cascade-panel{translate:var(--drag-offset,0px) 0;transition:width 1050ms cubic-bezier(.76,0,.24,1),transform 1050ms cubic-bezier(.76,0,.24,1),opacity 600ms,translate 220ms ease}
.cascade-panel:not(.is-active){cursor:grab}
.cascade-viewport.is-dragging,.cascade-viewport.is-dragging .cascade-panel{cursor:grabbing;user-select:none}
.cascade-viewport.is-dragging .cascade-panel{transition:none}
.cascade-hint{color:#a7b8aa;text-align:center;font-size:11px;letter-spacing:.035em;margin:20px 6vw 0}
.cascade-controls{margin-top:16px}
@media(max-width:700px){.cascade-hint{font-size:10px;max-width:300px;margin:18px auto 0;line-height:1.8}}
@media(prefers-reduced-motion:reduce){.cascade-panel,.cascade-label,.cascade-photo{transition:none;will-change:auto}.cascade-controls:before{animation:none!important}}

.cascade-viewport,.cascade-panel{touch-action:pan-y pinch-zoom;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
@media(pointer:coarse){.cascade-panel{transition-duration:480ms,480ms,320ms,160ms}}
