:root{--ink: #1b1717;--cream: #f5ede1;--paper: #fffaf3;--plum: #351127;--berry: #9c225f;--pink: #e95683;--aqua: #64d2cf;--sun: #f2b648;--serif: "Italiana", "Iowan Old Style", "Times New Roman", serif;--sans: "DM Sans", "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--plum)}body{margin:0;overflow-x:clip;color:var(--ink);background:var(--cream);font-family:var(--sans)}body.menu-open{overflow:hidden}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}button{color:inherit;font:inherit}button:focus-visible,a:focus-visible{outline:2px solid currentColor;outline-offset:4px}.scroll-progress{position:fixed;z-index:100;top:0;left:0;width:100%;height:3px;background:var(--pink);transform:scaleX(0);transform-origin:left}.nav{position:fixed;z-index:80;top:0;left:0;display:grid;width:100%;grid-template-columns:1fr auto 1fr;align-items:center;padding:22px 28px;color:#fff;mix-blend-mode:difference}.nav__name{font-family:var(--serif);font-size:20px;letter-spacing:-.03em}.nav__place,.nav__button{margin:0;text-transform:uppercase;font-size:10px;letter-spacing:.18em}.nav__button{justify-self:end;display:flex;align-items:center;gap:12px;padding:10px 0 10px 12px;border:0;background:transparent;cursor:pointer}.nav__button i,.nav__button i:before{display:block;width:28px;height:1px;background:currentColor;content:"";transition:transform .3s ease}.nav__button i:before{transform:translateY(7px)}.menu-open .nav__button i{transform:translateY(3px) rotate(45deg)}.menu-open .nav__button i:before{transform:rotate(-90deg)}.menu{position:fixed;z-index:70;inset:0;display:grid;place-items:center;overflow:hidden;color:var(--paper);background:var(--plum);visibility:hidden;clip-path:circle(0 at calc(100% - 45px) 40px);transition:clip-path .8s cubic-bezier(.76,0,.24,1),visibility .8s}.menu-open .menu{visibility:visible;clip-path:circle(150% at calc(100% - 45px) 40px)}.menu__mark{position:absolute;right:-4vw;bottom:-18vw;color:#ffffff0a;font-family:var(--serif);font-size:72vw;line-height:.7}.menu__links{position:relative;display:flex;flex-direction:column;align-items:center}.menu__links a{font-family:var(--serif);font-size:clamp(64px,9vw,145px);line-height:.9;transition:color .2s,transform .2s}.menu__links a:hover{color:var(--sun);transform:translate(12px)}.menu__links span{display:inline-block;width:36px;font-family:var(--sans);font-size:9px;letter-spacing:.1em;vertical-align:middle}.menu>p{position:absolute;bottom:28px;margin:0;text-transform:uppercase;font-size:9px;letter-spacing:.18em}.hero{position:relative;height:100svh;min-height:680px;overflow:hidden;color:#fff;background:#4f533c}.hero__image{position:absolute;inset:-7%;will-change:transform}.hero__image img{object-position:center 41%}.hero__veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,10,11,.22),transparent 42%),linear-gradient(0deg,rgba(30,12,24,.5),transparent 47%)}.hero__number,.hero__role{position:absolute;z-index:2;margin:0;text-transform:uppercase;font-size:9px;letter-spacing:.18em;line-height:1.7}.hero__number{top:50%;left:28px;transform:rotate(-90deg) translate(-50%);transform-origin:left top}.hero__role{right:29px;bottom:30px;text-align:right}.hero h1{position:absolute;z-index:2;left:5vw;bottom:4.5vh;margin:0;font-family:var(--serif);font-size:clamp(110px,17vw,265px);font-weight:400;line-height:.61;letter-spacing:-.065em}.hero h1 span{display:block}.hero h1 span:last-child{margin-left:.42em}.hero h1 i{font-weight:400}.hero__enter{position:absolute;z-index:2;bottom:28px;left:28px;display:flex;align-items:center;gap:15px;text-transform:uppercase;font-size:9px;letter-spacing:.18em}.hero__enter i{font-size:17px;font-style:normal;animation:bob 1.7s ease-in-out infinite}@keyframes bob{50%{transform:translateY(7px)}}.eyebrow{margin:0 0 26px;text-transform:uppercase;font-size:9px;letter-spacing:.2em}.prologue{position:relative;min-height:1600px;padding:150px 7vw;overflow:hidden;background:var(--cream)}.prologue__heading{position:relative;z-index:3}.prologue h2,.portraits h2,.closing h2{margin:0;font-family:var(--serif);font-size:clamp(86px,11vw,172px);font-weight:400;line-height:.83;letter-spacing:-.055em}.prologue h2 em,.portraits h2 em{color:var(--berry);font-weight:400}.prologue__photo{position:absolute;z-index:2;margin:0;overflow:hidden}.prologue__photo--one{top:465px;right:9vw;width:min(42vw,650px);height:790px;border-radius:48% 48% 3px 3px}.prologue__photo--two{bottom:110px;left:9vw;width:min(29vw,430px);aspect-ratio:1;border:12px solid var(--aqua);border-radius:50%;transform:rotate(-5deg)}.prologue__photo--two img{border-radius:50%}.prologue__line{position:absolute;z-index:3;right:7vw;bottom:115px;margin:0;color:var(--berry);font-family:var(--serif);font-size:clamp(27px,3.5vw,55px)}.prologue__line i{color:var(--pink);font-style:normal}.prologue__sun{position:absolute;z-index:1;right:-12vw;bottom:21%;width:33vw;aspect-ratio:1;border-radius:50%;background:var(--sun);opacity:.9}.unfold{height:460vh;color:#fff;background:var(--plum)}.unfold__sticky{position:sticky;top:0;height:100svh;overflow:hidden;background:var(--plum)}.unfold__topline{position:absolute;z-index:12;top:24px;left:28px;display:flex;width:calc(100% - 56px);justify-content:space-between;pointer-events:none}.unfold__topline p{margin:0;text-transform:uppercase;font-size:9px;letter-spacing:.18em}.fold-card{position:absolute;inset:0;overflow:hidden;clip-path:inset(50% 12% 50% 12% round 36px);will-change:clip-path,transform}.fold-card--first{clip-path:inset(0)}.fold-card img{object-position:center}.fold-card__shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(29,8,21,.55),transparent 45%)}.fold-card p{position:absolute;z-index:2;right:5vw;bottom:4vh;margin:0;font-family:var(--serif);font-size:clamp(78px,12vw,190px);line-height:.8;letter-spacing:-.055em;text-shadow:0 4px 35px rgba(0,0,0,.2)}.fold-card p span{display:block;margin:0 4px 14px 0;font-family:var(--sans);font-size:9px;letter-spacing:.2em;text-align:right}.unfold__steps{position:absolute;z-index:12;bottom:30px;left:29px;display:flex;gap:8px}.unfold__steps i{width:24px;height:2px;background:#ffffff59;transition:width .3s,background .3s}.unfold__steps i.is-active{width:48px;background:#fff}.soften{position:relative;height:125vh;min-height:800px;overflow:hidden;color:#fff;background:#a4b4a8}.soften__image{position:absolute;inset:-8%;will-change:transform}.soften__image img{object-position:58% center}.soften:after{position:absolute;inset:0;background:linear-gradient(90deg,rgba(25,13,16,.25),transparent 55%);content:""}.soften__word{position:absolute;z-index:2;margin:0;font-family:var(--serif);font-size:clamp(80px,12.5vw,195px);line-height:.8;letter-spacing:-.06em}.soften__word--strong{top:16%;left:5vw}.soften__word--soft{right:6vw;bottom:14%}.soften__word em{color:var(--sun);font-weight:400}.soften__note{position:absolute;z-index:2;bottom:30px;left:29px;margin:0;text-transform:uppercase;font-size:9px;letter-spacing:.17em;line-height:1.6}.portraits{position:relative;min-height:2300px;padding:150px 5vw;overflow:hidden;background:var(--paper)}.portraits__title{position:relative;z-index:4;margin-left:2vw}.portraits h2{font-size:clamp(90px,12vw,185px)}.portrait{position:absolute;margin:0;overflow:hidden;will-change:transform}.portrait--coast{top:570px;right:6vw;width:min(53vw,800px);aspect-ratio:1;border-radius:2px 2px 50% 50%}.portrait--beach{top:1240px;left:7vw;width:min(30vw,450px);height:650px;border-radius:48% 48% 3px 3px}.portrait--rocks{right:7vw;bottom:130px;width:min(36vw,550px);aspect-ratio:1;transform:rotate(3deg)}.portraits__bio{position:absolute;z-index:4;right:11vw;top:1430px;display:flex;align-items:flex-start;gap:22px}.portraits__bio span{color:var(--pink);font-size:24px}.portraits__bio p{margin:0;font-family:var(--serif);font-size:clamp(27px,3vw,46px);line-height:1.2}.closing{position:relative;min-height:100svh;padding:9vh 6vw 32px;overflow:hidden;color:#fff;background:#255f74}.closing__image,.closing__veil{position:absolute;inset:0}.closing__image img{object-position:center 43%}.closing__veil{background:linear-gradient(90deg,#190916ad,#19091614 70%),linear-gradient(0deg,rgba(12,8,13,.4),transparent 50%)}.closing>*:not(.closing__image,.closing__veil){position:relative;z-index:2}.closing h2{margin-top:10vh;font-size:clamp(88px,12vw,185px)}.closing h2 em{color:var(--sun);font-weight:400}.closing__links{position:absolute!important;right:5vw;bottom:10vh;width:min(36vw,540px)}.closing__links a{display:flex;justify-content:space-between;padding:16px 2px;border-bottom:1px solid rgba(255,255,255,.55);text-transform:uppercase;font-size:10px;letter-spacing:.16em}.closing__links i{font-size:17px;font-style:normal;transition:transform .2s}.closing__links a:hover i{transform:translate(5px,-5px)}.closing__sign{position:absolute!important;bottom:30px;left:6vw;margin:0;text-transform:uppercase;font-size:9px;letter-spacing:.18em}.reveal{opacity:0;transform:translateY(45px);transition:opacity .9s ease,transform 1s cubic-bezier(.22,1,.36,1)}.reveal.is-visible{opacity:1;transform:translateY(0)}.reveal-photo img{clip-path:inset(0 0 100% 0);transform:scale(1.12);transition:clip-path 1.15s cubic-bezier(.76,0,.24,1),transform 1.5s cubic-bezier(.22,1,.36,1)}.reveal-photo.is-visible img{clip-path:inset(0);transform:scale(1)}@media(max-width:760px){.nav{grid-template-columns:1fr 1fr;padding:16px 18px}.nav__place,.nav__button span{display:none}.menu{clip-path:circle(0 at calc(100% - 35px) 35px)}.menu-open .menu{clip-path:circle(170% at calc(100% - 35px) 35px)}.menu__links a{font-size:20vw}.menu__links span{width:24px}.menu>p{width:80%;text-align:center;line-height:1.7}.hero{min-height:640px}.hero__image{inset:-4%}.hero__image img{object-position:56% center}.hero h1{left:5vw;bottom:18vh;font-size:clamp(92px,30vw,135px);line-height:.66}.hero h1 span:last-child{margin-left:.06em}.hero__number{display:none}.hero__role{right:18px;bottom:24px}.hero__enter{bottom:25px;left:18px}.prologue{min-height:1260px;padding:100px 20px}.prologue h2{font-size:21vw}.prologue__photo--one{top:340px;right:0;width:83vw;height:600px}.prologue__photo--two{bottom:85px;left:20px;width:51vw;border-width:7px}.prologue__line{right:19px;bottom:46px;font-size:25px;text-align:right}.prologue__sun{right:-30vw;bottom:18%;width:75vw}.unfold{height:500vh}.unfold__topline{top:20px;left:18px;width:calc(100% - 36px)}.unfold__topline p:last-child{display:none}.fold-card{inset:11px;border-radius:14px;clip-path:inset(50% 5% 50% 5% round 24px)}.fold-card--first{clip-path:inset(0)}.fold-card p{right:18px;bottom:46px;font-size:20vw}.fold-card p span{margin-bottom:9px}.fold-card[data-fold="1"] img{object-position:66% center}.fold-card[data-fold="2"] img{object-position:42% center}.fold-card[data-fold="3"] img{object-position:49% center}.unfold__steps{bottom:25px;left:28px}.unfold__steps i{width:16px}.unfold__steps i.is-active{width:34px}.soften{height:100svh;min-height:680px}.soften__image{inset:-4%}.soften__image img{object-position:59% center}.soften__word{font-size:20vw}.soften__word--strong{top:14%;left:18px}.soften__word--soft{right:19px;bottom:17%}.soften__note{bottom:22px;left:18px}.portraits{min-height:2060px;padding:100px 12px}.portraits__title{margin-left:8px}.portraits h2{font-size:24vw}.portrait--coast{top:430px;right:0;width:91vw}.portrait--beach{top:1020px;left:14px;width:58vw;height:540px}.portraits__bio{top:1530px;right:16px;gap:10px;padding:12px 0 14px 18px;background:var(--paper);text-align:right}.portraits__bio span{font-size:15px}.portraits__bio p{font-size:21px}.portrait--rocks{right:14px;bottom:90px;width:78vw}.closing{min-height:860px;padding:80px 18px 22px}.closing__image img{object-position:58% center}.closing__veil{background:linear-gradient(180deg,rgba(25,9,22,.55),transparent 55%),linear-gradient(0deg,rgba(12,8,13,.65),transparent 55%)}.closing h2{margin-top:65px;font-size:21vw}.closing__links{right:18px;bottom:85px;width:calc(100% - 36px)}.closing__sign{bottom:22px;left:18px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}.reveal-photo img{clip-path:inset(0);transform:none}}
