/* Editorial timeline. Existing About styles retain the shared navigation and footer. */
body{background:#16171b}.story-opening{min-height:80svh;padding-bottom:90px}.story-opening h1{font-size:clamp(48px,6vw,80px)}.story-opening .lead{max-width:470px}.vertical-story{position:relative;max-width:1320px;margin:auto;padding:0 64px 100px;color:#f2f0ea}.year-list{list-style:none;padding:0;margin:0}.timeline-track{position:absolute;left:50%;top:0;bottom:110px;width:1px;background:#b5c4d12b}.timeline-fill{height:100%;background:#eb89bc;transform:scaleY(0);transform-origin:top;box-shadow:0 0 16px #eb89bc66}.year{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:130px;align-items:center;min-height:650px;padding:80px 0}.year-dot{position:absolute;left:50%;top:50%;width:9px;height:9px;transform:translate(-50%,-50%);background:#16171b;border:1px solid #b5c4d1;border-radius:50%;z-index:1;transition:background .6s,box-shadow .6s}.year.is-visible .year-dot{background:#eb89bc;border-color:#eb89bc;box-shadow:0 0 0 8px #eb89bc12}.year-number{font-size:clamp(40px,4.5vw,60px);letter-spacing:-.07em;line-height:1;margin-bottom:34px;color:#b5c4d1;font-weight:300}.year .eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.18em;color:#eb89bc;margin-bottom:20px}.year h2{font-size:clamp(26px,2.6vw,36px);line-height:1.08;letter-spacing:-.045em;margin-bottom:22px}.year-intro{font-size:16px;color:#c8cbd0;line-height:1.7}.year details{border-color:#b5c4d12b;margin-top:22px}.year summary{font-size:13px;color:#f2f0ea;padding:18px 30px 18px 0}.year details p{color:#b5c4d1;line-height:1.8}.year details[open] p{animation:detail-in .3s ease-out}.year-visual{margin:0;position:relative;--angle:2deg}.year:nth-child(even) .year-visual{grid-column:1;grid-row:1;--angle:-2deg}.year:nth-child(even) .year-copy{grid-column:2;grid-row:1}.image-window{overflow:hidden;aspect-ratio:4/5;background:#24272c}.year-visual img{width:100%;height:100%;object-fit:cover;display:block}.year-visual figcaption{font-size:11px;color:#9ba6b0;margin-top:14px;letter-spacing:.03em}.pouch-visual .image-window{background:radial-gradient(ellipse at center,#34303e 0,#202127 62%);display:grid;place-items:center;border:1px solid #ffffff0a}.pouch-visual img{object-fit:contain;width:66%;height:80%;filter:drop-shadow(15px 25px 15px #0006);transform:rotate(-9deg)}.year:nth-child(9) .pouch-visual .image-window{background:radial-gradient(ellipse,#41344e,#222129 68%)}.year:nth-child(10) .pouch-visual .image-window{background:radial-gradient(ellipse,#494333,#232321 68%)}.type-visual{aspect-ratio:1;display:flex;flex-direction:column;justify-content:center;align-items:center;overflow:hidden;border:1px solid #b5c4d120;background:#1b1d23}.type-visual>span{font-size:clamp(38px,4.5vw,60px);line-height:1.2;letter-spacing:-.06em;font-weight:300}.type-visual>strong{font-size:26px;font-weight:300;color:#eb89bc;letter-spacing:.07em}.type-visual small{font-size:10px;text-transform:uppercase;letter-spacing:.15em;margin-top:28px;color:#b5c4d1}.graphic-orbit{position:absolute;border:1px solid #b5c4d125;width:88%;aspect-ratio:1;border-radius:50%;transform:rotate(-25deg) scaleY(.8)}.graphic-orbit:after{content:'';position:absolute;inset:15%;border:1px solid #eb89bc20;border-radius:50%}.motion-ready .year-copy{opacity:0;transform:translateY(32px);transition:opacity .8s ease,transform .9s cubic-bezier(.16,1,.3,1)}.motion-ready .year-visual{opacity:0;transform:translateY(65px) scale(.92) rotate(var(--angle));transition:opacity .9s ease .1s,transform 1.15s cubic-bezier(.16,1,.3,1) .1s}.motion-ready .is-visible .year-copy,.motion-ready .is-visible .year-visual{opacity:1;transform:translateY(0) scale(1) rotate(0)}.year-visual:hover .image-window img{scale:1.035}.image-window img{transition:scale .7s ease}.closing{color:#f2f0ea}.year:target .year-number{color:#eb89bc}@keyframes detail-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:800px){.vertical-story{padding:0 24px 60px 56px}.timeline-track{left:28px;bottom:70px}.year{grid-template-columns:1fr;gap:32px;padding:48px 0 60px;min-height:0}.year-dot{left:-28px;top:85px}.year:nth-child(even) .year-copy,.year:nth-child(even) .year-visual{grid-column:auto;grid-row:auto}.year-copy{max-width:530px}.year-number{font-size:44px;margin-bottom:24px}.year h2{font-size:28px}.year-visual{width:100%;max-width:530px}.image-window{aspect-ratio:5/4}.pouch-visual .image-window{aspect-ratio:1}.type-visual{aspect-ratio:5/3}.type-visual>span{font-size:44px}.story-opening{min-height:75svh;padding-bottom:50px}.story-opening h1{font-size:48px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready .year-copy,.motion-ready .year-visual{opacity:1;transform:none}.year-visual:hover .image-window img{scale:1}}

/* Keep introductory and closing copy in the same restrained type scale. */
.story-opening .lead{font-size:18px}.closing h2{font-size:clamp(30px,3.5vw,44px)}
@media(max-width:800px){.story-opening .lead{font-size:16px}}

/* Compact, offset editorial layout. A quiet left rail replaces the mirrored spine. */
.story-opening{min-height:0;padding-top:140px;padding-bottom:55px}
.story-opening h1{font-size:clamp(40px,4.6vw,60px);margin-bottom:18px}
.story-opening .lead{font-size:16px}.story-opening .heritage-art{max-width:210px}
.vertical-story{max-width:1180px;padding:0 56px 60px 92px}
.timeline-track{left:48px;bottom:65px}
.year{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:48px;min-height:0;padding:30px 0 42px;align-items:center}
.year-dot{left:-44px;top:51px}
.year-copy{max-width:440px}
.year-number{font-size:32px;letter-spacing:-.045em;margin-bottom:12px}
.year h2{font-size:25px;line-height:1.18;margin-bottom:14px}
.year-intro{font-size:14px;line-height:1.75;margin-bottom:0;max-width:430px}
.year-visual{width:100%;max-width:285px;justify-self:end}
.image-window{aspect-ratio:3/2}.year-visual figcaption{font-size:10px;margin-top:8px}
.year:nth-child(even) .year-copy{grid-column:1;grid-row:1}
.year:nth-child(even) .year-visual{grid-column:2;grid-row:1}
.year:nth-child(3n+2){grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);padding-left:48px}
.year:nth-child(3n+2) .year-dot{left:-44px}
.year:nth-child(3n+2) .year-visual{justify-self:start;max-width:230px;margin-left:28px}
.year:nth-child(3n) .year-copy{padding-left:24px}
.year:nth-child(3n) .year-visual{max-width:210px;justify-self:center}
.pouch-visual .image-window{aspect-ratio:4/3}.pouch-visual img{height:170px;width:70%}
.type-visual{aspect-ratio:5/3;max-width:210px;background:transparent;border:0}
.type-visual>span{font-size:36px}.type-visual>strong{font-size:20px}.type-visual small{font-size:9px;margin-top:12px}
.year-gallery{display:grid;grid-template-columns:1.35fr 1fr;gap:14px;align-items:start;max-width:390px;justify-self:end}
.year-gallery .year-visual,.year:nth-child(even) .year-gallery .year-visual{grid-column:auto;grid-row:auto;max-width:none;margin:0}
.year-gallery .secondary-visual{padding-top:52px}.year-gallery .image-window{aspect-ratio:4/5}
.year-gallery .pouch-visual img{height:150px;width:85%}
.motion-ready .year-gallery .secondary-visual{transition-delay:.23s}
.closing{padding:55px 24px}.closing h2{font-size:30px}
@media(max-width:800px){
 .story-opening{min-height:0;padding-top:110px;padding-bottom:40px}.story-opening h1{font-size:40px}
 .vertical-story{padding:0 22px 40px 50px}.timeline-track{left:24px;bottom:45px}
 .year,.year:nth-child(3n+2){grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:24px;padding:24px 0 32px}
 .year-dot,.year:nth-child(3n+2) .year-dot{left:-26px;top:42px}
 .year-copy,.year:nth-child(3n) .year-copy{padding-left:0}.year-number{font-size:28px}
 .year h2{font-size:22px}.year-intro{font-size:14px}
 .year .year-visual,.year:nth-child(3n+2) .year-visual,.year:nth-child(3n) .year-visual{max-width:240px;margin-left:0;justify-self:end}
 .year-gallery{gap:10px}.year-gallery .secondary-visual{padding-top:28px}
 .pouch-visual img{height:140px}.year-gallery .pouch-visual img{height:115px}
}
@media(max-width:540px){
 .year,.year:nth-child(3n+2){grid-template-columns:1fr;gap:18px}
 .year:nth-child(even) .year-copy,.year:nth-child(even) .year-visual{grid-column:auto;grid-row:auto}
 .year .year-visual,.year:nth-child(3n+2) .year-visual,.year:nth-child(3n) .year-visual{max-width:210px;justify-self:end}
 .year:nth-child(3n+2)>.year-visual{justify-self:start;margin-left:12px}
 .year-gallery{width:100%;max-width:320px}.year-gallery .year-visual{width:100%}
 .type-visual{display:none}.year h2{font-size:21px}.year-number{font-size:26px}
}

/* Centered spine with alternating, uneven editorial groupings. */
@media(min-width:801px){
 .vertical-story{padding:0 56px 60px;max-width:1180px}
 .timeline-track{left:50%;bottom:65px}
 .year,.year:nth-child(3n+2){grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:100px;padding:30px 0 42px;align-items:center}
 .year-dot,.year:nth-child(3n+2) .year-dot{left:50%;top:50%;transform:translate(-50%,-50%)}
 .year .year-copy,.year:nth-child(3n) .year-copy{grid-column:1;grid-row:1;padding:0;max-width:340px;justify-self:end;width:100%}
 .year>.year-visual,.year>.year-gallery{grid-column:2;grid-row:1;justify-self:start}
 .year:nth-child(even) .year-copy{grid-column:2;justify-self:start;max-width:310px}
 .year:nth-child(even)>.year-visual,.year:nth-child(even)>.year-gallery{grid-column:1;grid-row:1;justify-self:end}
 .year>.year-visual,.year:nth-child(3n+2)>.year-visual,.year:nth-child(3n)>.year-visual{max-width:260px;margin:0}
 .year:nth-child(3n+2)>.year-visual{max-width:220px;align-self:start;margin-top:24px}
 .year:nth-child(3n)>.year-visual{max-width:290px;align-self:end;margin-bottom:12px}
 .year:nth-child(4n+1) .year-copy{max-width:300px;padding-top:20px}
 .year-gallery{width:100%;max-width:340px;gap:14px}
 .year-gallery .year-visual,.year:nth-child(even) .year-gallery .year-visual{grid-column:auto;grid-row:auto;width:100%;max-width:none;margin:0}
 .year-gallery .secondary-visual{padding-top:42px}
}

/* Preserve the complete official photographs and product artwork. */
.official-photo .image-window{aspect-ratio:auto;background:transparent}.official-photo img{height:auto;object-fit:contain}.official-product .image-window{display:grid;place-items:center}.official-product img{height:180px;width:auto;max-width:100%}

/* Expanded family history keeps compact spacing between milestones. */
.heritage-year{padding-top:22px;padding-bottom:30px}#year-edo-meiji .year-number{font-size:24px;letter-spacing:-.025em}#year-2008 .year-number{font-size:28px}

/* Quiet spine, explicit year groupings, and consistent photographic windows. */
.timeline-track{background:#b5c4d126}
.timeline-fill{background:#b5c4d17a;box-shadow:none}
.year.is-visible .year-dot{background:#b5c4d1;border-color:#b5c4d1;box-shadow:0 0 0 5px #b5c4d10b}
.year:target .year-number{color:#d4dde4}
.year{isolation:isolate}
.year-visual .image-window{border-radius:3px;border:1px solid #b5c4d11a;overflow:hidden}
.official-photo:not(.official-product) .image-window{aspect-ratio:3/2;background:#202329}
.official-photo:not(.official-product) img{width:100%;height:100%;object-fit:cover}
/* The source portrait includes diagonal black/pink artwork. Crop within it. */
#year-2021 .image-window{aspect-ratio:3/2}
#year-2021 .image-window img{transform:scale(1.48);transform-origin:50% 43%;object-fit:cover}
@media(min-width:801px){
 .year:before{content:'';position:absolute;left:calc(50% - 34px);top:50%;width:68px;height:1px;background:#b5c4d12e;z-index:-1}
 .year{border-bottom:1px solid #b5c4d10b}
 .year:last-child{border-bottom:0}
}
@media(max-width:800px){
 .year:before{content:'';position:absolute;left:-26px;top:42px;width:16px;height:1px;background:#b5c4d12e}
}
