.memories{padding-block:70px 82px;scroll-margin-top:28px;border-top:1px solid var(--line)}
.memories-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.35fr);gap:65px;align-items:center}
.memories-intro .eyebrow{color:#b7a494;font-size:10px}
.memories-intro h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(46px,5vw,72px);letter-spacing:-.055em;line-height:1.1;margin-top:20px}
.memories-intro>p{font-size:14px;line-height:1.9;color:#b3bdc8;max-width:310px;margin-top:22px}
.memory-album-note{display:flex;align-items:center;gap:15px;margin-top:30px;color:#b79c87;font:10px/1.7 Consolas,monospace}
.memory-album-note:before{content:'';width:26px;height:1px;background:#9f816b}
.memory-hint{font-size:11px;color:#8e9bab;line-height:1.8;margin-top:10px}
.memory-shelf{min-width:0}
.memory-grid{list-style:none;margin:0;padding:24px 14px 28px;display:grid;grid-auto-flow:column;grid-auto-columns:clamp(220px,45%,280px);gap:30px;align-items:start;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:14px;scrollbar-width:thin;scrollbar-color:#6e6358 #ffffff08}
.memory-card{min-width:0;scroll-snap-align:start}
.memory-grid:has(.memory-card:only-child){grid-template-columns:minmax(0,1fr);grid-auto-columns:auto;overflow:visible}
.memory-card:only-child{width:min(100%,365px);justify-self:center}
.memory-shelf-controls{display:flex;justify-content:flex-end;gap:10px;margin-top:13px;padding-right:4px}
.memory-shelf-controls[hidden]{display:none}
.memory-shelf-controls button{width:44px;height:44px;border:1px solid #536171;border-radius:50%;background:#172231;color:var(--text);font-size:19px}
.memory-shelf-controls button:hover:enabled{border-color:var(--lime);color:var(--lime)}
.memory-shelf-controls button:disabled{opacity:.3;cursor:default}
.memory-card figure{margin:0}
.memory-print{display:block;transform:rotate(-3deg);border-radius:2px;background:#ede4d1;box-shadow:0 18px 40px #0005,0 2px 7px #0003;transition:transform .4s,box-shadow .4s;outline-offset:8px}
.memory-print img{width:100%;height:auto;display:block;border-radius:2px}
.memory-print:hover,.memory-print:focus-visible{transform:rotate(0deg) translateY(-7px);box-shadow:0 28px 55px #0007}
.memory-card:nth-child(3n+2) .memory-print{transform:rotate(2deg)}
.memory-card:nth-child(3n+3) .memory-print{transform:rotate(-1deg)}
.memory-card:nth-child(n) .memory-print:hover,.memory-card:nth-child(n) .memory-print:focus-visible{transform:rotate(0deg) translateY(-7px)}
.memory-card figcaption{display:flex;align-items:center;gap:13px;margin-top:25px;padding:0 3px;font-size:12px;line-height:1.6;color:#c5c0b8}
.memory-number{color:#a58d77;font:10px Consolas,monospace}
.memory-card figcaption>span:last-child{margin-left:auto;color:var(--lime);font-size:16px}
.memory-dialog{width:min(710px,calc(100% - 32px));max-height:94dvh;padding:18px;background:#0d1520;overflow:auto;border-color:#5c6470}
.memory-dialog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:14px}
.memory-dialog h2{font-size:14px;font-weight:400;letter-spacing:.01em}
.memory-close,.memory-dialog-controls button{width:40px;height:40px;border:1px solid #536171;border-radius:50%;font-size:24px;line-height:1;background:#172231;color:var(--text);flex-shrink:0}
.memory-close:hover,.memory-dialog-controls button:hover{border-color:var(--lime);color:var(--lime)}
.memory-dialog-image{display:flex;justify-content:center;align-items:center;min-height:100px}
.memory-dialog-image img{display:block;width:auto;max-width:100%;max-height:calc(94dvh - 155px);object-fit:contain;border-radius:2px}
.memory-dialog-controls{display:flex;justify-content:center;align-items:center;gap:22px;margin-top:13px}
.memory-dialog-controls button{font-size:19px}
.memory-dialog-controls [hidden],.memory-error[hidden]{display:none}
#memory-counter{font:10px Consolas,monospace;color:#b2a18f;letter-spacing:.1em}
.memory-error{font-size:12px;line-height:1.8;text-align:center;color:#dec2a8;margin-top:14px}
.motion-paused .memory-print{transition:none}
.motion-paused .memory-card:nth-child(n) .memory-print:hover,.motion-paused .memory-card:nth-child(n) .memory-print:focus-visible{transform:none}
@media(max-width:1100px){.memories-layout{gap:35px}.memories{padding-block:58px 70px}}
@media(max-width:760px){.memories{padding-block:42px 55px}.memories-layout{grid-template-columns:1fr;gap:18px}.memories-intro h2{font-size:48px;margin-top:15px}.memories-intro>p{font-size:13px;margin-top:15px;max-width:350px}.memory-album-note{margin-top:19px}.memory-grid{grid-auto-columns:clamp(220px,78%,280px);padding-inline:12px;scroll-padding-inline:12px;gap:24px}.memory-card:only-child{width:min(100%,330px)}.memory-dialog{padding:12px;max-height:96dvh}.memory-dialog-image img{max-height:calc(96dvh - 145px)}.memory-close,.memory-dialog-controls button{width:44px;height:44px}.memory-dialog h2{font-size:13px}}
@media(prefers-reduced-motion:reduce){.memory-print{transition:none}.memory-card:nth-child(n) .memory-print:hover,.memory-card:nth-child(n) .memory-print:focus-visible{transform:none}}
