:root{--bg:#e9dfe1;--paper:#493e49;--soft:#776771;--line:#79616c30;--serif:'Hiragino Mincho ProN','Yu Mincho','YuMincho',serif;--sans:'Helvetica Neue',Arial,'Hiragino Kaku Gothic ProN',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:0}body{margin:0;background:var(--bg);color:var(--paper);font-family:var(--sans);font-weight:400}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:1px solid var(--paper);outline-offset:7px}button{border:0}.masthead{position:fixed;z-index:20;inset:0 0 auto;display:flex;justify-content:space-between;align-items:center;padding:30px 4.4%;pointer-events:none;mix-blend-mode:normal}.masthead>*{pointer-events:auto}.wordmark{font-family:var(--serif);font-size:36px;letter-spacing:.01em;line-height:1}.wordmark span{display:block;font-family:var(--sans);font-size:7px;letter-spacing:.23em;margin-top:9px}#menu-toggle{background:transparent;display:grid;grid-template-columns:auto 28px;align-items:center;gap:6px 17px;padding:12px 0 12px 12px}#menu-toggle>span{grid-row:1/3;font-size:9px;letter-spacing:.16em}#menu-toggle i{height:1px;background:var(--paper);width:28px;transition:transform .3s}#menu-toggle[aria-expanded=true] i:nth-of-type(1){transform:translateY(3.5px) rotate(45deg)}#menu-toggle[aria-expanded=true] i:nth-of-type(2){transform:translateY(-3.5px) rotate(-45deg)}#work-menu{position:fixed;z-index:15;inset:0;background:#eee4e8;padding:145px 12% 60px;overflow:auto}#work-menu[hidden]{display:none}.menu-label,.menu-foot{font-size:9px;letter-spacing:.2em;color:var(--soft)}#menu-links{margin:36px 0 50px}#menu-links a{display:flex;align-items:center;gap:35px;border-bottom:1px solid var(--line);padding:20px 0;font-family:var(--serif);font-size:clamp(24px,4vw,54px)}#menu-links a span{font:9px var(--sans);letter-spacing:.1em;color:var(--soft)}.chapter{position:relative;min-height:105svh;padding:135px 10% 110px;display:grid;align-items:center;grid-template-columns:19% 81%;gap:0;isolation:isolate}.chapter:after{content:'';position:absolute;bottom:0;left:10%;right:10%;height:1px;background:var(--line)}.chapter:nth-of-type(1){min-height:100svh;padding-top:125px}.work-copy{position:relative;z-index:2;align-self:center;margin-right:-65px;pointer-events:none}.work-no{font-family:var(--serif);font-size:16px;letter-spacing:.05em;display:block;margin-bottom:35px;color:var(--soft)}.work-copy h2{font-family:var(--serif);font-weight:400;font-size:clamp(38px,4.6vw,75px);line-height:1.04;letter-spacing:-.035em;margin:0 0 24px;text-shadow:0 2px 35px transparent}.work-category{font-size:8px;letter-spacing:.13em;line-height:1.8;color:var(--soft);text-transform:uppercase}.work-copy .view{pointer-events:auto;margin-top:35px;display:inline-flex;align-items:center;gap:25px;font-size:8px;letter-spacing:.17em;padding:9px 0;background:none;border-bottom:1px solid #79616c60}.view span{font-size:17px;transition:transform .3s}.view:hover span{transform:translate(3px,-3px)}.art-area{width:100%;position:relative}.art{background:none;padding:0;display:block;position:relative;width:100%;overflow:hidden;box-shadow:0 28px 60px #755e6e18;cursor:zoom-in}.art img{display:block;width:100%;height:auto;transition:transform 1.4s cubic-bezier(.2,.65,.2,1);object-fit:contain}.art:hover img{transform:scale(1.025)}.hero .art-area{width:105%;margin-left:-2%}.hero .art{transform:translateY(var(--float,0px));will-change:transform}.hero .work-copy{align-self:end;margin-bottom:1%}.hero h2{font-size:clamp(48px,6.4vw,100px)}.image-note{position:absolute;right:0;bottom:-28px;display:flex;gap:30px;font-size:7px;letter-spacing:.14em;color:var(--soft)}.chapter:nth-of-type(2){grid-template-columns:34% 66%;min-height:115svh}.chapter:nth-of-type(2) .work-copy{margin-right:0;align-self:start;padding-top:80px}.chapter:nth-of-type(2) .art-area{width:74%;margin-left:auto;margin-right:4%}.chapter:nth-of-type(2) .art{box-shadow:0 25px 60px #755e6e12}.brand-detail{position:absolute;bottom:-50px;left:-42%;width:59%;background:white;box-shadow:0 18px 45px #755e6e19;padding:0;cursor:zoom-in}.brand-detail img{width:100%;display:block}.chapter:nth-of-type(3){grid-template-columns:22% 78%;min-height:105svh}.chapter:nth-of-type(3) .work-copy{align-self:end;padding-bottom:15px}.chapter:nth-of-type(3) .art-area{width:103%}.chapter:nth-of-type(4){grid-template-columns:28% 72%;min-height:100svh}.social-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;align-items:center;box-shadow:none;overflow:visible}.social-preview img{width:100%;box-shadow:0 22px 45px #755e6e18}.social-preview img:nth-child(2){margin-top:90px}.social-preview img:nth-child(3){margin-top:-65px}.social-preview:hover img{transform:translateY(-8px)}.chapter{opacity:1}.js-ready .chapter .art-area,.js-ready .chapter .work-copy{opacity:0;transform:translateY(35px);transition:opacity 1.25s ease,transform 1.25s cubic-bezier(.2,.65,.2,1)}.js-ready .chapter.in-view .art-area,.js-ready .chapter.in-view .work-copy{opacity:1;transform:translateY(0)}.js-ready .chapter .work-copy{transition-delay:.12s}#rail{position:fixed;right:3.5%;top:50%;transform:translateY(-50%);z-index:10;display:grid;gap:17px}#rail a{display:block;width:16px;height:12px;position:relative}#rail a:after{content:'';height:3px;width:3px;background:#79616c60;border-radius:50%;position:absolute;left:6px;top:4px;transition:all .3s}#rail a[aria-current=true]:after{width:7px;height:7px;left:4px;top:2px;background:var(--paper)}.page-status{position:fixed;left:4.4%;bottom:34px;z-index:10;display:flex;align-items:center;gap:12px;font-size:9px;letter-spacing:.1em;color:var(--soft)}#current{color:var(--paper)}.status-line{width:54px;height:1px;background:#79616c30;position:relative}.status-line:after{content:'';display:block;width:var(--progress,25%);height:1px;background:var(--paper);transition:width .4s}.scroll-cue{position:absolute;top:calc(100svh - 55px);right:8%;font-size:7px;letter-spacing:.18em;display:flex;align-items:center;gap:25px;color:var(--soft)}.scroll-cue span{font-size:20px}footer{padding:35px 10% 40px;display:flex;justify-content:space-between;font-size:8px;letter-spacing:.13em;color:var(--soft)}footer>a span{margin-left:20px}dialog{position:fixed;max-width:none;max-height:none;width:100%;height:100%;margin:0;border:0;background:#f4edf1fa;color:var(--paper);padding:100px 7% 50px}dialog::backdrop{background:#f4edf1}.viewer-head{position:fixed;inset:0 0 auto;z-index:2;background:#f4edf1f5;display:flex;justify-content:space-between;align-items:center;padding:28px 4.4%;font-size:10px;letter-spacing:.12em}#close{background:none;font-size:9px;letter-spacing:.15em;padding:12px 0 12px 12px}#close span{font-size:24px;vertical-align:middle;margin-left:18px}#view-images{display:grid;gap:32px;max-width:1200px;margin:auto}#view-images img{width:100%;max-height:85svh;object-fit:contain;display:block}#reel{width:max-content;margin:35px auto 0;padding:14px 0;border-bottom:1px solid var(--line);font-size:11px;letter-spacing:.15em}#reel[hidden]{display:none}body.locked{overflow:hidden}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.error{padding:180px 10%}@media(min-width:1600px){.chapter{padding-left:13%;padding-right:13%}}@media(max-width:760px){.masthead{padding:24px 6%}.wordmark{font-size:29px}.wordmark span{font-size:6px}#menu-toggle>span{font-size:8px}.chapter,.chapter:nth-of-type(n){display:flex;flex-direction:column;justify-content:center;align-items:stretch;padding:125px 9% 100px;min-height:95svh;gap:32px}.chapter:nth-of-type(1){padding-top:140px;min-height:100svh}.work-copy,.hero .work-copy,.chapter:nth-of-type(n) .work-copy{align-self:auto;margin:0;padding:0;order:2;display:grid;grid-template-columns:30px 1fr;column-gap:15px}.work-no{grid-column:1;grid-row:1/4;font-size:12px;margin:5px 0}.work-copy h2,.hero h2{font-size:43px;line-height:1.02;letter-spacing:-.025em;margin:0 0 15px;grid-column:2}.work-category{grid-column:2;font-size:7px;letter-spacing:.13em}.work-copy .view{grid-column:2;justify-self:start;margin-top:12px;padding:7px 0;font-size:7px}.art-area,.hero .art-area,.chapter:nth-of-type(n) .art-area{order:1;width:100%;margin:0}.image-note{display:none}.chapter:nth-of-type(2) .art-area{width:69%;margin:0 0 45px auto}.brand-detail{left:-45%;bottom:-35px;width:68%}.social-preview{gap:9px}.social-preview img:nth-child(2){margin-top:50px}.social-preview img:nth-child(3){margin-top:-35px}.chapter:nth-of-type(4) .art-area{margin-bottom:20px}#rail{right:2%;gap:12px}.page-status{left:6%;bottom:23px;font-size:8px;gap:9px}.status-line{width:30px}.scroll-cue{right:9%;top:calc(100svh - 38px);font-size:6px;gap:15px}footer{padding:30px 9% 75px;font-size:7px}.chapter:after{left:9%;right:9%}#work-menu{padding:130px 9% 50px}#menu-links a{font-size:32px;gap:20px;padding:25px 0}.menu-foot{font-size:7px}.viewer-head{padding:22px 6%;font-size:8px;letter-spacing:0}dialog{padding:100px 5% 40px}.hero .art{transform:none!important}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.js-ready .chapter .art-area,.js-ready .chapter .work-copy{opacity:1;transform:none}.hero .art{transform:none!important}}
@media(min-width:761px){.chapter,.chapter:nth-of-type(3){grid-template-columns:32% 68%}.work-copy,.hero .work-copy{margin-right:22px}.work-copy h2,.hero h2{font-size:clamp(38px,4.7vw,74px)}.hero .art-area{width:100%;margin:0}.hero .art{width:min(100%,86svh);margin-left:auto}.hero .work-copy{align-self:center;margin-bottom:0}.chapter:nth-of-type(3) .art-area{width:100%}.chapter:nth-of-type(4){grid-template-columns:32% 68%}}
/* Soft rose aurora, kept behind the artwork. */
body{isolation:isolate}body:before{content:'';position:fixed;z-index:-2;inset:-20%;pointer-events:none;background:radial-gradient(ellipse at 17% 28%,#e6cfda99 0,transparent 43%),radial-gradient(ellipse at 83% 17%,#d8d5e199 0,transparent 43%),radial-gradient(ellipse at 68% 76%,#efddd099 0,transparent 48%),radial-gradient(ellipse at 28% 88%,#d5e1de88 0,transparent 42%);filter:blur(45px);animation:aurora-drift 28s ease-in-out infinite alternate}body:after{content:'';position:fixed;z-index:-1;inset:0;pointer-events:none;background:linear-gradient(125deg,#ffffff18,transparent 40%,#fff9f51a);opacity:.7}@keyframes aurora-drift{from{transform:translate(-1%,-1%) rotate(-3deg) scale(1)}to{transform:translate(3%,2%) rotate(4deg) scale(1.08)}}.masthead{justify-content:flex-end}.work-copy h2,.hero h2{font-size:clamp(31px,3.5vw,54px);font-weight:400;line-height:1.65;letter-spacing:.065em;text-shadow:none}.work-category{font-size:10px;letter-spacing:.09em}.work-copy .view{font-size:10px;letter-spacing:.12em}.work-no{color:#8b7885}#menu-toggle>span{font-size:10px;letter-spacing:.1em}.menu-label,.menu-foot{font-size:10px;letter-spacing:.12em}#menu-links a{font-size:clamp(24px,3vw,43px);line-height:1.6;letter-spacing:.06em}#work-menu{background:#eee4e8f7;backdrop-filter:blur(25px)}.image-note{font-size:8px;letter-spacing:.08em}.scroll-cue{font-size:9px;letter-spacing:.1em}.viewer-head{font-size:12px;letter-spacing:.08em}#close{font-size:11px}.art{box-shadow:0 24px 65px #755e6e13}#reel{margin:0 auto 30px;background:#765d6a;color:#fff9fc;border:0;border-radius:40px;padding:15px 30px;font-size:13px;letter-spacing:.1em;transition:background .3s}#reel:hover{background:#5e4955}footer{font-size:9px;letter-spacing:.06em}.chapter:nth-of-type(4) .art-area{width:100%}.chapter:nth-of-type(4) .art img{width:100%;height:auto}button:focus-visible,a:focus-visible{outline-color:#765d6a}@media(min-width:761px){.chapter:nth-of-type(4){grid-template-columns:32% 68%}}@media(max-width:760px){.work-copy h2,.hero h2{font-size:33px;line-height:1.6;letter-spacing:.07em}.work-category{font-size:9px}.work-copy .view{font-size:10px}.scroll-cue{font-size:8px}#menu-links a{font-size:28px}.menu-foot{font-size:9px}.chapter:nth-of-type(4){min-height:100svh}}@media(prefers-reduced-motion:reduce){body:before{animation:none}}
.work-category{text-transform:none}#work-2 .work-copy h2{font-size:clamp(18px,1.8vw,28px);line-height:1.9;letter-spacing:.025em}@media(max-width:760px){#work-2 .work-copy h2{font-size:clamp(16px,4.4vw,23px)}}
#work-2 .art-area{display:grid;grid-template-columns:1fr 1fr;gap:18px;width:94%;margin-right:0}#work-2 .art-area>.art{grid-column:1/-1}#work-2 .brand-detail{position:static;width:100%;align-self:center;box-shadow:0 18px 45px #755e6e16}#work-2 .package-extra{padding:0;width:100%;background:white;align-self:center;cursor:zoom-in;box-shadow:0 18px 45px #755e6e16}#work-2 .package-extra img{display:block;width:100%;height:auto}#work-4 .work-copy h2{font-size:clamp(28px,3vw,46px)}@media(max-width:760px){#work-2 .art-area{width:100%;margin:0;gap:12px}#work-4 .work-copy h2{font-size:30px}}
/* An opening in white, becoming the first light of morning. */
#opening{height:100svh;min-height:580px;position:relative;isolation:isolate;display:grid;place-items:center;overflow:hidden;background:#fff;color:#282426}.dawn{position:absolute;inset:0;z-index:-1;opacity:0;background:linear-gradient(170deg,#727c9b 0%,#987d98 35%,#c293a4 63%,#edb9a3 86%,#f5d5b6 100%);overflow:hidden}.dawn-light{position:absolute;inset:-35%;background:radial-gradient(ellipse at 16% 36%,#c4b7ddbb 0,transparent 48%),radial-gradient(ellipse at 73% 29%,#8e9bb2bb 0,transparent 42%),radial-gradient(ellipse at 54% 81%,#f7c6a9cc 0,transparent 47%),linear-gradient(115deg,transparent 25%,#e9d0db88 43%,transparent 65%);filter:blur(55px);transform:rotate(-14deg) scale(1.1);will-change:transform}.identity{text-align:center;display:flex;flex-direction:column;align-items:center;padding:0 25px;margin-top:-30px}.identity img{display:block;width:clamp(150px,17vw,230px);height:auto;opacity:0;transform:translateY(14px);filter:invert(0);margin-bottom:30px}.identity p{margin:0;font-weight:400;opacity:0;transform:translateY(12px)}.opening-name{font-family:Didot,'Bodoni MT','Times New Roman',serif;font-size:clamp(21px,2vw,30px);letter-spacing:.22em;line-height:1.7;padding-left:.22em}.opening-title{font-family:'Helvetica Neue',Arial,sans-serif;font-size:clamp(8px,.8vw,11px);letter-spacing:.48em;line-height:2.1;padding-left:.48em;margin-top:12px!important}.opening-scroll{position:absolute;bottom:35px;left:50%;transform:translateX(-50%);display:flex;align-items:center;flex-direction:column;gap:16px;color:inherit;padding:15px 25px 0;opacity:0}.opening-scroll span{font-size:9px;letter-spacing:.18em}.opening-scroll i{display:block;width:1px;height:38px;background:currentColor;transform-origin:top}.intro-ready #opening{animation:opening-tone 3.4s 4.6s ease-in-out both}.intro-ready .identity img{animation:symbol-reveal 2.1s .5s cubic-bezier(.2,.6,.2,1) forwards,symbol-white 3.4s 4.6s ease-in-out forwards}.intro-ready .opening-name{animation:identity-reveal 2s 2s cubic-bezier(.2,.6,.2,1) forwards}.intro-ready .opening-title{animation:identity-reveal 2s 3s cubic-bezier(.2,.6,.2,1) forwards}.intro-ready .dawn{animation:dawn-reveal 4s 4.4s ease-in-out forwards}.intro-ready .dawn-light{animation:dawn-drift 24s 4.4s ease-in-out infinite alternate}.intro-ready .opening-scroll{animation:identity-reveal 1.8s 6.4s ease-out forwards}.at-intro .masthead{color:#fff;opacity:0;animation:identity-reveal 1.5s 7s ease-out forwards}.at-intro #menu-toggle i{background:#fff}.at-intro #rail,.at-intro .page-status{opacity:0;pointer-events:none}#rail,.page-status{transition:opacity .6s}.at-intro #work-menu{color:var(--paper)}.at-intro #work-menu~*{--unused:0}.at-intro:has(#menu-toggle[aria-expanded=true]) .masthead{color:var(--paper)}.at-intro #menu-toggle[aria-expanded=true] i{background:var(--paper)}@keyframes symbol-reveal{to{opacity:1;transform:translateY(0)}}@keyframes identity-reveal{to{opacity:1;transform:translateY(0)}}@keyframes symbol-white{to{filter:invert(1)}}@keyframes opening-tone{from{color:#282426}to{color:#fff}}@keyframes dawn-reveal{to{opacity:1}}@keyframes dawn-drift{from{transform:rotate(-14deg) translate(-2%,0) scale(1.1)}to{transform:rotate(2deg) translate(3%,2%) scale(1.18)}}@media(max-width:760px){#opening{min-height:500px}.identity img{width:170px;margin-bottom:28px}.opening-name{font-size:22px;letter-spacing:.16em}.opening-title{font-size:9px;letter-spacing:.35em}.identity{margin-top:-20px}.opening-scroll{bottom:25px}}@media(prefers-reduced-motion:reduce){#opening{color:white!important}.dawn{opacity:1}.identity img{opacity:1;transform:none;filter:invert(1)}.identity p,.opening-scroll,.at-intro .masthead{opacity:1;transform:none}.opening-scroll{transform:translateX(-50%)}.dawn-light{will-change:auto}}
.opening-scroll{translate:-50% 0;transform:none}@media(prefers-reduced-motion:reduce){.opening-scroll{transform:none}}
@media(min-width:761px){#work-3 .work-copy{align-self:center;padding-bottom:0;margin-top:0}#work-3{align-items:center}}
/* Progress follows the scroll, in both directions. */
.js-ready .chapter .scroll-reveal,.js-ready .chapter.in-view .scroll-reveal,.js-ready footer.scroll-reveal{opacity:var(--reveal,0);transform:translate3d(0,var(--reveal-y,48px),0);transition:none;transition-delay:0}.js-ready .chapter .art-area.scroll-reveal,.js-ready .chapter.in-view .art-area.scroll-reveal{transform:translate3d(0,var(--reveal-y,48px),0) scale(var(--reveal-scale,.98));transform-origin:center center}@media(prefers-reduced-motion:reduce){.js-ready .chapter .scroll-reveal,.js-ready .chapter.in-view .scroll-reveal,.js-ready footer.scroll-reveal{opacity:1;transform:none}}
/* Align the text group to the visual centre of each artwork. */
@media(min-width:761px){#work-1 .work-copy,#work-4 .work-copy{align-self:center;margin-top:0;padding-top:0;padding-bottom:0}#work-2 .work-copy{align-self:center;padding-top:0;margin-top:0}#work-2{grid-template-columns:37% 63%;column-gap:0}#work-2 .work-copy{margin-right:32px}#work-2 .work-copy h2{font-size:clamp(23px,2.15vw,33px);line-height:1.7;letter-spacing:.025em}#work-2 .art-area{width:100%}#work-1 .art-area,#work-4 .art-area{align-self:center}#work-1 .art{transform:none;will-change:auto}}
@media(max-width:760px){#work-2 .work-copy h2{font-size:clamp(18px,4.8vw,26px);line-height:1.8}#work-1 .work-copy,#work-2 .work-copy,#work-4 .work-copy{align-self:stretch;margin:0;padding:0}}
#work-2 .work-copy h2 .title-line:last-child{font-size:.76em;letter-spacing:.01em}
#viewer.link-only[open]{display:grid;place-items:center;padding:100px 25px}#viewer.link-only #view-images{display:none}#viewer.link-only #reel{margin:0;max-width:100%;text-align:center}#viewer .viewer-head #view-title{line-height:1.7;margin-right:25px}@media(max-width:760px){#viewer .viewer-head #view-title{font-size:10px;max-width:75%}}
