/* The navigation's quiet Gothic is the common voice across every page. */
body.layout-v3{--serif:'Noto Sans JP','Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;font-family:var(--serif);font-weight:400;font-synthesis:none}body.layout-v3 h1,body.layout-v3 h2,body.layout-v3 h3,body.layout-v3 h4,body.layout-v3 .brand-lockup strong{font-family:var(--serif);font-weight:500;letter-spacing:.065em}.layout-v3 p{letter-spacing:.035em}.layout-v3 .brand-lockup strong{font-size:2rem}.layout-v3 .brand-lockup small{font-size:.65rem;letter-spacing:.11em}.layout-v3 .rail-nav>a>span{font-weight:500}.layout-v3 .rail-visit{font-size:1.25rem}.layout-v3 .eyebrow{font-weight:400!important}.layout-v3 .prologue-copy>p{font-size:2rem;line-height:2.1;font-weight:400}.layout-v3 .editorial-opening h2{font-size:3.8rem;line-height:1.9}.layout-v3 .editorial-opening>p:not(.eyebrow){font-size:1.45rem;line-height:2.2}.layout-v3 .section-heading h2{font-size:3.3rem;font-weight:500;line-height:1.85}.layout-v3 .story-copy h3{font-size:2.3rem;font-weight:500}.layout-v3 .home-feature-intro h2{font-size:3.5rem}.layout-v3 .journal-card h3{font-weight:500}.layout-v3 .site-rail .rail-note{font-weight:400;font-size:.95rem}.layout-v3 .footer-identity .brand-lockup strong{font-size:2rem}
/* Vertical copy is reserved for short messages. Body copy remains horizontal. */
.layout-v3 .pt100vh>.head.rl{right:10%;top:20vh}.layout-v3 .head .rl__title-m{display:flex;align-items:flex-start;gap:24px;flex-direction:row-reverse}.layout-v3 .head .rl__title-m .hero-jp{writing-mode:vertical-rl!important;text-orientation:mixed;font-size:clamp(3.7rem,3.9vw,5.4rem);line-height:1.75;letter-spacing:.16em;white-space:nowrap;font-weight:500;max-height:none;order:initial}.layout-v3 .head .rl__title-m .hero-en{position:static!important;writing-mode:vertical-rl!important;letter-spacing:.19em;font-size:.9rem;line-height:1.7;order:initial;padding-top:5px}.layout-v3 .brand-scene h2{writing-mode:vertical-rl;text-orientation:mixed;font-size:4rem;line-height:1.9;letter-spacing:.12em;margin:25px 0 30px auto}.layout-v3 .brand-scene>div{max-width:440px}.layout-v3 .brand-scene>div>p:last-child{text-align:right;font-size:1.25rem}.layout-v3 .prologue-label>span{writing-mode:vertical-rl;line-height:2;letter-spacing:.12em;max-height:280px;font-size:1.4rem;margin-top:30px}.layout-v3 .photo-memo{writing-mode:vertical-rl;line-height:1.9;letter-spacing:.1em;font-size:1.2rem;padding:25px 23px}
/* The reveal's single transform is separate from image drift to prevent a double jump. */
html.motion-on .reveal{opacity:0;transform:translate3d(0,52px,0);filter:blur(5px);transition:opacity 1.05s ease,transform 1.25s cubic-bezier(.2,.7,.2,1),filter 1.2s ease;transition-delay:var(--reveal-delay,0ms)}html.motion-on .reveal.is-visible{opacity:1;transform:translate3d(0,0,0);filter:blur(0)}html.motion-on .story-photo img,html.motion-on .editorial-photo>img{transform:scale(var(--photo-scale,1.06));transform-origin:center;transition:transform .15s linear;will-change:transform}.layout-v3 .organic-card:after{background:linear-gradient(transparent 5%,rgba(43,31,38,.8))}.layout-v3 .organic-card h3{font-size:2.35rem;line-height:1.75}.reading-progress{position:fixed;top:0;left:var(--rail);width:calc(100% - var(--rail));height:3px;background:var(--rose);transform-origin:left;transform:scaleX(var(--read-progress,0));z-index:999;pointer-events:none}.layout-v3 .hero-caption b{display:inline-block;animation:scroll-cue 2.4s ease-in-out infinite}.layout-v3 .head{transition:opacity 1s ease,translate 1.3s cubic-bezier(.2,.7,.2,1)}body:not(.site-entered) .head{opacity:0;translate:0 22px}.layout-v3 .head .hero-jp{color:var(--paper)}
.site-loader{position:fixed;inset:0;z-index:10000;background:var(--ivory);color:var(--plum);display:grid;place-items:center;clip-path:inset(0 0 0 0);transition:clip-path 1.05s cubic-bezier(.77,0,.18,1),visibility 0s 1.1s;animation:loader-watchdog 0s 9s forwards}.site-loader.is-complete{clip-path:inset(0 0 100% 0);visibility:hidden}.loader-inner{text-align:center;width:260px;transition:opacity .45s,transform .7s}.site-loader.is-complete .loader-inner{opacity:0;transform:translateY(-24px)}.loader-sun{position:relative;display:block;width:54px;height:27px;border:1.5px solid var(--rose);border-bottom:0;border-radius:54px 54px 0 0;margin:0 auto 32px;animation:sun-rise 1.8s ease both}.loader-sun:after{content:'';position:absolute;bottom:-8px;left:-10px;width:72px;height:1px;background:var(--rose)}.loader-kind{font-size:.7rem;letter-spacing:.22em;margin-bottom:15px}.loader-name{font-size:2.6rem;font-weight:500;letter-spacing:.16em;margin:0 0 18px}.loader-copy{font-size:1.05rem;letter-spacing:.08em}.loader-track{width:100%;height:1px;background:var(--line);margin:38px 0 12px;overflow:hidden}.loader-track>span{display:block;width:100%;height:100%;background:var(--rose);transform:scaleX(var(--load-progress,0));transform-origin:left}.loader-count{text-align:right;font-size:1.1rem;font-variant-numeric:tabular-nums;letter-spacing:.07em}.loader-count small{font-size:.75rem;opacity:.55}.experience-ready:not(.site-entered){overflow:hidden}.site-loader[hidden]{display:none}.motion-noscript .reveal{opacity:1;transform:none;filter:none}
@keyframes loader-watchdog{to{visibility:hidden;pointer-events:none}}@keyframes sun-rise{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes scroll-cue{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}
@media(min-width:901px){.layout-v3 .section-nav{top:calc(100svh - 165px)}.layout-v3 .rail-nav>a{padding-top:12px;padding-bottom:12px}}
@media(max-width:1150px) and (min-width:901px){.layout-v3 .section-heading{grid-template-columns:115px 1fr;gap:25px}.layout-v3 .values-grid article{grid-template-columns:40px 160px 1fr;gap:20px}.layout-v3 .head .rl__title-m .hero-jp{font-size:4.2rem}}
@media(max-width:900px){.layout-v3 .site-rail .brand-lockup strong{font-size:1.65rem}.layout-v3 .site-rail .brand-lockup small{font-size:.56rem;letter-spacing:.065em}.layout-v3 .md__head .head.rl.md-block{top:18%;left:auto;right:10%;width:auto;max-width:80%}.layout-v3 .head .rl__title-m{display:flex;gap:16px;justify-content:flex-start}.layout-v3 .head .rl__title-m .hero-jp{writing-mode:vertical-rl!important;font-size:3.5rem;line-height:1.8;letter-spacing:.13em;max-height:none;white-space:nowrap}.layout-v3 .head .rl__title-m .hero-en{writing-mode:vertical-rl!important;font-size:.8rem;margin-top:3px!important;position:static!important}.layout-v3 .brand-scene h2{font-size:3.1rem}.layout-v3 .brand-scene>div>p:last-child{font-size:1.05rem}.layout-v3 .prologue-label{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.layout-v3 .prologue-label>span{writing-mode:vertical-rl;margin-top:0;max-height:210px;font-size:1.3rem}.layout-v3 .page-prologue{gap:30px;padding-top:50px;padding-bottom:55px}.layout-v3 .prologue-copy>p{font-size:1.65rem;line-height:2.1}.layout-v3 .editorial-opening h2{font-size:2.8rem;line-height:1.9}.layout-v3 .editorial-opening>p:not(.eyebrow){font-size:1.25rem}.layout-v3 .section-heading h2{font-size:2.7rem;line-height:1.85}.layout-v3 .story-copy h3{font-size:2.1rem}.layout-v3 .home-feature-intro h2{font-size:2.9rem}.layout-v3 .organic-card h3,.layout-v3 .organic-card:nth-child(2) h3,.layout-v3 .organic-card:nth-child(3) h3{font-size:2rem}.layout-v3 .photo-memo{font-size:1.1rem;padding:22px 18px}.reading-progress{left:0;width:100%}.layout-v3 .hero-caption>span:first-child{font-size:.8rem;letter-spacing:0}.layout-v3 .hero-caption>span:last-child{font-size:.85rem}.layout-v3 .hero-caption{gap:10px}.layout-v3 .hero-caption b{margin-left:10px}.layout-v3 .footer-identity .brand-lockup small{font-size:.7rem}.loader-inner{width:230px}.loader-name{font-size:2.5rem}}
@media(prefers-reduced-motion:reduce){.site-loader{transition:none;animation:loader-watchdog 0s 3s forwards}.loader-sun,.layout-v3 .hero-caption b{animation:none}html.motion-on .reveal{opacity:1;transform:none;filter:none;transition:none}html.motion-on .story-photo img,html.motion-on .editorial-photo>img{transform:none;transition:none}.layout-v3 .head{translate:none;transition:none}}
.layout-v3 .brand-lockup small{font-size:.85rem;letter-spacing:.1em}.layout-v3 .footer-identity .brand-lockup small{font-size:.9rem}@media(max-width:900px){.layout-v3 .site-rail .brand-lockup small{font-size:.75rem;letter-spacing:.07em}}
/* Dedicated album: a slow, continuous horizontal filmstrip. */
.album-ribbon .swiper-front .swiper-wrapper{transition-timing-function:linear!important}.album-ribbon .album-photo-open{display:block;width:100%;height:100%;border:0;padding:0;background:none;overflow:hidden;color:inherit;cursor:pointer}.album-ribbon .album-photo-open img{display:block;width:100%;height:100%;object-fit:cover}.album-controls{padding:28px 7% 0;display:flex;justify-content:space-between;align-items:center;gap:20px;color:var(--plum)}.album-controls p{font-size:1.1rem;letter-spacing:.05em}.album-controls button{font-family:inherit;border:0;border-bottom:1px solid #aa8b91;padding:8px 0;background:transparent;color:inherit;display:flex;gap:18px;align-items:center;font-size:1rem;cursor:pointer}.album-controls button span{font-size:1.5rem}.album-photo-open:focus-visible,.album-controls button:focus-visible{outline:2px solid var(--plum);outline-offset:4px}@media(max-width:900px){.album-controls{padding:22px 8% 0;align-items:flex-start}.album-controls p{font-size:.9rem;max-width:110px}.album-controls button{font-size:.9rem;white-space:nowrap}}
@media(max-width:900px){.album-controls p{max-width:none;white-space:nowrap}}
