:root{--dark:#061c23;--mint:#a4efdc;--ice:#d9f0f0;--white:#f2f5ef;--ink:#092e35;--ease:cubic-bezier(.2,.7,.2,1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--dark);color:var(--white);line-height:1.5}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--mint);outline-offset:6px}::selection{background:#a4efdc;color:#092e35}.skip{position:fixed;left:20px;top:-100px;z-index:200;background:#fff;color:#000;padding:12px}.skip:focus{top:15px}.site-header{position:absolute;top:0;left:0;width:100%;z-index:40;display:flex;align-items:center;justify-content:space-between;padding:28px 4.5%;color:white}.logo{font-size:26px;font-weight:800;letter-spacing:-1.2px;display:inline-flex;align-items:center;line-height:1}.logo span{font-weight:400}.logo i{display:block;width:5px;height:5px;background:var(--mint);margin:0 0 12px 7px;border-radius:50%}.header-caption{font-size:11px;letter-spacing:2.5px;margin-left:30px}.menu{position:relative}.menu summary{font-size:14px;display:flex;gap:28px;align-items:center;list-style:none;cursor:pointer}.menu summary::-webkit-details-marker{display:none}.menu summary span{font-size:24px;font-weight:300;line-height:1;transition:transform .3s}.menu[open] summary span{transform:rotate(45deg)}.menu nav{position:absolute;right:0;top:48px;width:270px;background:#0a2a31f5;border:1px solid #42616a;padding:25px;backdrop-filter:blur(20px);display:flex;flex-direction:column;box-shadow:0 20px 80px #0005}.menu nav a{font-size:17px;padding:8px 0}.menu nav a:hover{color:var(--mint)}.menu .back-site{border-top:1px solid #42616a;margin-top:12px;padding-top:20px;font-size:13px;color:#b4cacc}.scene{position:relative;--p:0}.frame{position:relative;min-height:100svh;overflow:hidden}.motion .scene{height:175svh}.motion .scene .frame{position:sticky;top:0;height:100svh;min-height:650px}.motion .opening{height:155svh}.motion .dream{height:205svh}.motion .absence{height:115svh}.motion .father{height:165svh}.motion .continuation{height:160svh}.cover{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.opening-image{object-position:center 38%;filter:saturate(.7) brightness(.8);transform:scale(calc(1.01 + var(--p)*.13));will-change:transform}.opening-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,26,31,.68),rgba(0,26,31,.1) 80%),linear-gradient(0deg,#031a24d9,transparent 65%)}.opening-content{position:relative;padding:170px 7% 95px;max-width:1600px;margin:auto}.eyebrow{font-size:12px;font-weight:500;letter-spacing:2.5px;margin:0 0 32px}.opening .eyebrow{color:var(--mint)}h1{font-size:clamp(65px,8.8vw,145px);line-height:.92;letter-spacing:-.065em;font-weight:700;margin:0}h1 span{display:block}.outline{font-weight:400;-webkit-text-stroke:1.3px #e6f9ed;color:transparent;letter-spacing:-.05em}h1 .outline{font-family:Georgia,'Times New Roman',serif;font-style:italic;line-height:1.12}.opening-bottom{display:flex;align-items:end;justify-content:space-between;max-width:1060px;margin-top:25px}.opening-bottom p{font-size:17px;line-height:1.6;letter-spacing:.2px;margin:0;color:#d6e8e7}.start{display:flex;align-items:center;gap:18px;font-size:12px;letter-spacing:.3px}.scroll-icon{width:27px;height:43px;border:1px solid #b5dcd6;border-radius:16px;position:relative}.scroll-icon:after{content:'';position:absolute;width:3px;height:8px;background:var(--mint);left:11px;top:8px;border-radius:3px;animation:scrollHint 2.5s ease-in-out infinite}@keyframes scrollHint{0%,100%{transform:translateY(0);opacity:.3}50%{transform:translateY(13px);opacity:1}}.edge-note{position:absolute;right:26px;top:50%;writing-mode:vertical-rl;letter-spacing:3px;font-size:10px;color:#d1e7e6}.opening .opening-content{transform:translateY(calc(var(--p)*-60px));opacity:calc(1 - var(--p)*.65)}.portrait{background:#f0f3ef;color:var(--ink)}.portrait .frame{display:flex;align-items:center}.background-name{position:absolute;font-size:23vw;line-height:1;font-weight:700;letter-spacing:-.08em;top:4%;left:3%;color:#dfe6df;transform:translateX(calc(var(--p)*-45px))}.portrait-window{position:absolute;top:0;right:-14%;height:100%;width:93%;overflow:hidden;transform:translateX(calc((1 - var(--p))*50px));mix-blend-mode:multiply}.portrait-window img{width:100%;height:100%;object-fit:cover;object-position:center;mask-image:linear-gradient(90deg,transparent,black 29%);-webkit-mask-image:linear-gradient(90deg,transparent,black 29%);transform:scale(calc(1.08 - var(--p)*.08))}.portrait-copy{position:relative;width:49%;padding:125px 0 110px 7%;z-index:2}.portrait .eyebrow{color:#4b6b6b}h2{font-size:clamp(40px,4.7vw,76px);font-weight:500;line-height:1.08;letter-spacing:-.055em;margin:0 0 30px}em{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:400;letter-spacing:-.05em}.portrait h2 em{color:#437574}.copy{font-size:17px;line-height:1.8;margin:0 0 20px;max-width:450px}.portrait .copy{max-width:340px;color:#4b666a}.small-rule{width:42px;height:1px;background:#9bb4ae;margin:30px 0}.personal{font-size:17px;line-height:1.6;margin:0}.photo-signature{position:absolute;right:7%;bottom:15%;text-align:right;font-size:14px;z-index:3}.photo-signature span{display:block;font-size:11px;color:#617776;margin-top:4px}.trial{background:#080e11}.trial .frame{display:flex;align-items:center;justify-content:center}.year{font-size:clamp(180px,35vw,650px);font-weight:600;line-height:1;letter-spacing:-.075em;position:absolute;left:50%;top:40%;transform:translate(-50%,-50%) scale(calc(1 + var(--p)*.28));color:#1b262a;opacity:calc(1 - var(--p)*.55)}.trial-content{position:relative;width:100%;max-width:1100px;padding:120px 6% 100px;margin:auto;transform:translateY(calc(25px - var(--p)*25px))}.trial .eyebrow{color:#9baaaa;margin-bottom:90px}.trial h2{font-size:clamp(48px,6.5vw,100px);color:#fff}.trial h2 span{color:#a1c9c5;font-family:Georgia,serif;font-style:italic}.trial-description{border-left:1px solid #587276;padding-left:28px;margin-top:40px;max-width:580px}.trial .copy{color:#acbbbf;font-size:17px;max-width:none}.trial-footnote{position:absolute;bottom:55px;right:6%;font-size:10px;letter-spacing:2px;color:#708386}.dream{background:#073840}.dream-water{position:absolute;inset:-10%;background-image:url('dive.jpg');background-size:cover;background-position:50% 100%;transform:scale(calc(1.7 + var(--p)*.1));transform-origin:50% 100%;filter:brightness(.5) saturate(.45)}.dream-shade{position:absolute;inset:0;background:linear-gradient(120deg,#00212be8,#00374399);}.dream .frame{display:flex;align-items:center;justify-content:center}.dream-content{position:relative;max-width:1050px;width:100%;padding:100px 6% 120px;z-index:2}.dream .eyebrow{color:#9ac8c8}.word-reveal{font-size:clamp(43px,5.8vw,89px);line-height:1.18;letter-spacing:-.035em;margin:0;max-width:950px;font-weight:400}.word-reveal span{transition:color .12s;display:inline;color:#f0f9ee}.motion .word-reveal span{color:#a6b9bb55}.motion .word-reveal span.lit{color:#f0f9ee}.word-reveal span.last-words{font-family:Georgia,serif;font-style:italic}.motion .word-reveal span.last-words.lit{color:var(--mint)}.dream-note{font-size:14px;color:#a6c8ca;margin-top:35px;opacity:calc(.2 + var(--p)*.8)}.water-label{font-size:25vw;font-weight:700;letter-spacing:-.09em;color:#a8e0de07;position:absolute;bottom:-7vw;left:4%;line-height:1;pointer-events:none}.absence{background:#05090b}.absence .frame{display:flex;align-items:center;justify-content:center;text-align:center}.absence-content{padding:130px 30px}.absence-dash{display:block;width:1px;height:65px;background:#566365;margin:0 auto 45px}.absence h2{font-size:clamp(38px,5.4vw,80px);font-family:Georgia,serif;letter-spacing:-.04em;font-weight:400}.absence p{font-size:18px;color:#94aaa8;margin:35px 0 0}.father{background:#dce8df;color:var(--ink)}.father .frame{display:grid;grid-template-columns:47% 53%;align-items:stretch}.father-window{position:relative;overflow:hidden;clip-path:inset(calc((1 - var(--p))*6%) calc((1 - var(--p))*8%) calc((1 - var(--p))*6%) calc((1 - var(--p))*8%))}.father-window img{width:100%;height:100%;object-fit:cover;object-position:50% 32%;filter:saturate(.5);transform:scale(calc(1.1 - var(--p)*.1))}.father-window:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#001d2877,transparent 40%)}.image-caption{position:absolute;bottom:75px;left:10%;font-size:10px;letter-spacing:1.8px;color:white;z-index:1}.father-copy{padding:100px 12% 95px 12%;align-self:center}.father .eyebrow{font-size:11px;color:#5a7874}.father h2{font-size:clamp(35px,3.4vw,53px);line-height:1.15;margin-bottom:30px}.father-turn{font-size:clamp(33px,3.6vw,56px);line-height:1.14;letter-spacing:-.05em;margin:0 0 30px}.father-turn em{color:#447769}.father .copy{font-size:16px;color:#4b655f;line-height:1.75}.continuation{background:#9dddcf;color:#073d39}.continuation .frame{padding:100px 6% 120px;display:flex;flex-direction:column;justify-content:center}.continuation-top{display:flex;align-items:start;justify-content:space-between;margin-bottom:45px}.continuation-top .eyebrow{font-size:11px}.continuation-top>p:last-child{font-size:10px;letter-spacing:1.4px;line-height:1.8;margin:0}.continuation h2{font-family:Georgia,serif;font-style:italic;font-size:clamp(32px,4vw,60px);margin:0 0 10px}.big-brand{display:flex;align-items:start;font-size:clamp(60px,18vw,290px);font-weight:700;letter-spacing:-.085em;line-height:1.05;margin-left:-.05em;position:relative}.big-brand .swim{transform:translateX(calc((1 - var(--p))*-35px))}.big-brand .art{font-weight:400;color:#f1fff5;transform:translateX(calc((1 - var(--p))*35px))}.big-brand i{font-size:19px;letter-spacing:0;font-style:normal;margin:30px 0 0 15px}.continuation-bottom{display:grid;grid-template-columns:1fr 1fr;gap:10%;border-top:1px solid #55958b;padding-top:40px;margin-top:35px}.continuation .copy{font-size:16px;max-width:410px;color:#286359}.final-invitation{font-size:29px;line-height:1.3;letter-spacing:-1px;margin:0 0 25px}.button{display:inline-flex;align-items:center;justify-content:center;border:1px solid #194f46;border-radius:40px;padding:14px 26px;font-size:14px;transition:color .25s,background .25s}.button:hover{color:#cbf6e4;background:#164c42}.memorial{padding:130px 6% 100px;text-align:center;background:#f0f3ed;color:#224c46}.memorial .eyebrow{color:#66857b;font-size:11px;letter-spacing:2px;margin-bottom:40px}.memorial blockquote{font-size:clamp(28px,3.3vw,50px);line-height:1.3;font-weight:400;letter-spacing:-1.3px;margin:0 0 50px}.memorial blockquote em{color:#628675}.replay{font-size:12px;border-bottom:1px solid #99b6a6;padding-bottom:6px;color:#5f7d70}footer{padding:45px 6% 105px;display:flex;align-items:center;gap:40px;background:#f0f3ed;color:#497267;border-top:1px solid #d1ddd3}footer .logo{font-size:22px}footer nav{display:flex;gap:24px;flex:1;justify-content:center;font-size:12px}footer small{font-size:11px}.story-controls{position:fixed;bottom:0;left:0;width:100%;padding:16px 4.5%;display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:center;z-index:30;color:#edf4f0;mix-blend-mode:normal;background:linear-gradient(0deg,#041b24d9,#041b2400)}.mode-toggle{justify-self:start;border:1px solid #658481;border-radius:25px;padding:6px 12px;color:#e1ece5;background:#0a252dbb;font-size:11px}.scene-dots{display:flex;align-items:center;gap:8px}.scene-dots a{display:block;height:28px;width:27px;position:relative}.scene-dots a:after{content:'';position:absolute;left:0;right:0;top:13px;height:2px;background:#ffffff50;transition:background .4s,transform .4s}.scene-dots a.active:after{background:var(--mint);transform:scaleY(2)}.scene-dots a:hover:after{background:white}.chapter-status{justify-self:end;font-size:11px;letter-spacing:.7px;color:#dbe9e5}.chapter-status b{font-weight:400;margin-left:17px;display:inline-block;min-width:86px}.page-progress{position:fixed;top:0;left:0;width:100%;height:2px;background:var(--mint);z-index:100;transform:scaleX(0);transform-origin:left}.motion .opening-content h1 span{animation:enter 1.2s var(--ease) both}.motion .opening-content h1 span:nth-child(2){animation-delay:.13s}.motion .opening-content h1 span:nth-child(3){animation-delay:.26s}@keyframes enter{from{opacity:0;transform:translateY(35px)}to{opacity:1;transform:translateY(0)}}.reading .scene{height:auto}.reading .frame{position:relative;min-height:0;height:auto}.reading .opening .frame{min-height:100svh}.reading .portrait .frame{min-height:850px}.reading .absence .frame{min-height:600px}.reading .father .frame{min-height:850px}.reading .dream .frame{min-height:700px}.reading .scene{--p:1!important}.reading .opening-content{opacity:1;transform:none}.reading .scroll-icon:after{animation:none}.reading .trial-content{transform:none}.reading .word-reveal span{color:#f0f9ee}.reading .word-reveal span.last-words{color:var(--mint)}.reading .dream-note{opacity:1}.reading .year{opacity:.5}.reading .big-brand span{transform:none}.reading .portrait-window{transform:none}.reading .father-window{clip-path:none}.reading *{animation:none!important;transition:none!important}
@media(min-width:1600px){.opening-content{padding-top:180px}.portrait-copy{padding-left:10%}.trial-content{max-width:1350px}.dream-content{max-width:1250px}}
@media(max-height:760px) and (min-width:801px){.opening-content{padding-top:125px;padding-bottom:85px}h1{font-size:clamp(60px,8vw,115px)}.opening-bottom{margin-top:18px}.opening .eyebrow{margin-bottom:25px}.portrait-copy{padding-top:85px;padding-bottom:85px}.portrait h2{font-size:53px}.portrait .copy{font-size:16px}.trial-content{padding-top:90px}.trial .eyebrow{margin-bottom:55px}.trial h2{font-size:68px}.father-copy{padding-top:70px;padding-bottom:65px}.father h2,.father-turn{font-size:38px}.father .eyebrow{margin-bottom:25px}.father .copy{font-size:15px}.continuation .frame{padding-top:70px;padding-bottom:85px}.continuation-top{margin-bottom:20px}.big-brand{font-size:16vw}.continuation-bottom{padding-top:22px;margin-top:22px}}
@media(max-width:800px){.site-header{padding:25px 24px}.header-caption{display:none}.logo{font-size:24px}.motion .scene .frame{min-height:600px}.opening-content{padding:160px 7% 115px}h1{font-size:clamp(67px,11.8vw,100px)}.opening-bottom{margin-top:35px;align-items:start;gap:30px;flex-direction:column}.opening-bottom p{font-size:16px}.start{font-size:11px}.opening-image{object-position:65% center}.edge-note{right:12px;font-size:8px;letter-spacing:2px}.portrait .frame{display:block}.portrait-copy{width:66%;padding:100px 0 120px 6%}.portrait h2{font-size:46px}.portrait .copy{font-size:16px;max-width:290px}.portrait-window{width:105%;right:-40%;opacity:.65}.photo-signature{right:6%;bottom:12%}.background-name{font-size:30vw;top:10%}.trial h2{font-size:65px}.trial-content{padding:100px 8%}.trial .eyebrow{margin-bottom:70px}.year{font-size:45vw}.word-reveal{font-size:57px}.dream-content{padding:110px 8%}.father-copy{padding:85px 9% 90px}.father .frame{grid-template-columns:42% 58%}.father h2,.father-turn{font-size:34px}.father .copy{font-size:15px}.image-caption{writing-mode:vertical-rl;bottom:100px;left:18px;font-size:9px}.continuation .frame{padding:100px 7% 110px}.continuation-top{margin-bottom:55px}.big-brand{font-size:17.5vw}.continuation-bottom{gap:7%;margin-top:35px}.final-invitation{font-size:25px}.continuation .copy{font-size:15px}.big-brand i{font-size:12px;margin-top:12px;margin-left:10px}footer{flex-wrap:wrap;gap:25px}footer nav{justify-content:start;flex-basis:100%;order:3;flex-wrap:wrap}.chapter-status b{min-width:0;margin-left:8px}.story-controls{gap:10px;padding:12px 20px}.scene-dots{gap:5px}.scene-dots a{width:20px}}
@media(max-width:520px){.motion .scene .frame{min-height:0;height:100svh}.motion .scene{height:165svh}.motion .opening{height:135svh}.motion .dream{height:195svh}.motion .absence{height:110svh}.motion .father{height:auto}.motion .father .frame{position:relative;height:auto}.site-header{padding:25px 22px}.menu summary{font-size:12px;gap:20px}.menu nav{width:245px}.opening-content{padding:150px 25px 110px}.opening .eyebrow{font-size:10px;letter-spacing:1.8px;margin-bottom:35px}h1{font-size:clamp(61px,16.1vw,83px);line-height:.97;letter-spacing:-.065em}.opening-bottom{margin-top:28px;gap:28px}.opening-bottom p{font-size:15px}.start{font-size:10px;gap:12px}.scroll-icon{width:22px;height:34px}.scroll-icon:after{left:9px;width:2px;height:6px}.edge-note{display:none}.portrait-copy{width:100%;padding:80px 25px 60px}.portrait .frame{padding-bottom:0}.portrait .eyebrow{font-size:10px;letter-spacing:1.6px;margin-bottom:25px}.portrait h2{font-size:39px;line-height:1.06;max-width:340px;margin-bottom:22px}.portrait .copy{font-size:15px;line-height:1.65;max-width:92%}.portrait .copy:nth-of-type(3){max-width:235px}.portrait .small-rule{display:none}.personal{font-size:15px;margin-top:23px}.portrait-window{width:140%;height:48%;top:auto;bottom:-1%;right:-29%;opacity:1;mix-blend-mode:multiply;transform:none!important}.portrait-window img{object-fit:cover;object-position:50% 36%;mask-image:linear-gradient(0deg,black 60%,transparent);-webkit-mask-image:linear-gradient(0deg,black 60%,transparent)}.background-name{font-size:31vw;top:auto;bottom:32%;left:2%;color:#e0e7df}.photo-signature{bottom:8%;right:20px;font-size:11px;max-width:135px;text-shadow:0 0 10px white}.photo-signature span{font-size:9px;line-height:1.4}.trial-content{padding:90px 26px 100px}.trial .eyebrow{font-size:10px;letter-spacing:1.5px;margin-bottom:90px}.trial h2{font-size:clamp(37px,10vw,52px);line-height:1.07;letter-spacing:-.06em}.trial-description{padding-left:18px;margin-top:35px}.trial .copy{font-size:15px;line-height:1.7}.year{font-size:51vw;top:31%;color:#273235}.trial-footnote{font-size:8px;bottom:90px;right:25px;letter-spacing:1.4px}.dream-content{padding:90px 27px 120px}.dream .eyebrow{font-size:10px;letter-spacing:1.5px;margin-bottom:40px}.word-reveal{font-size:clamp(36px,10.5vw,51px);line-height:1.22;letter-spacing:-.04em}.dream-note{font-size:12px;margin-top:32px}.water-label{font-size:33vw;bottom:35px}.absence h2{font-size:38px;line-height:1.2;letter-spacing:-.04em}.absence p{font-size:16px}.absence-dash{height:45px}.father .frame{display:flex;flex-direction:column}.father-window{width:100%;height:62svh;min-height:350px;clip-path:none!important;order:2}.father-window img{object-position:50% 28%;transform:none!important}.father-copy{padding:85px 27px 40px;order:1}.father .eyebrow{font-size:10px;letter-spacing:1.5px;margin-bottom:30px}.father h2{font-size:39px}.father-turn{font-size:39px;margin-top:25px}.father .copy{font-size:16px;max-width:100%}.image-caption{writing-mode:initial;left:27px;bottom:40px;font-size:9px}.continuation .frame{padding:80px 25px 110px}.continuation-top{gap:20px;margin-bottom:50px;display:block}.continuation-top .eyebrow{font-size:10px;letter-spacing:1.4px;margin-bottom:20px}.continuation-top>p:last-child{display:none}.continuation h2{font-size:32px}.big-brand{font-size:17.5vw;margin-left:-2px;letter-spacing:-.09em}.big-brand i{font-size:10px;margin-top:8px;margin-left:4px}.continuation-bottom{display:block;padding-top:25px;margin-top:30px}.continuation .copy{font-size:15px;line-height:1.65;margin-bottom:28px}.final-invitation{font-size:26px;margin-bottom:22px}.button{font-size:13px;padding:12px 24px}.memorial{padding:95px 25px 65px}.memorial .eyebrow{font-size:9px;letter-spacing:1.7px}.memorial blockquote{font-size:32px;line-height:1.23}.memorial br{display:none}footer{padding:30px 25px 95px;font-size:12px}footer nav{gap:15px 22px;font-size:11px}.story-controls{padding:12px 14px;grid-template-columns:auto 1fr;gap:12px}.mode-toggle{font-size:9px;padding:6px 9px}.scene-dots{justify-self:end;gap:6px}.scene-dots a{width:22px}.chapter-status{display:none}.reading .portrait .frame{min-height:860px}.reading .dream .frame{min-height:700px}.reading .absence .frame{min-height:500px}.reading .father .frame{min-height:0}.reading .opening .frame{min-height:800px}}
@media(max-height:680px) and (max-width:520px){.motion .scene .frame{height:auto;min-height:100svh}.motion .scene{height:auto}.motion .scene .frame{position:relative}.motion .portrait .frame{min-height:830px}.opening-content{padding-top:125px}.motion .scene{--p:1!important}.motion .opening-content{opacity:1;transform:none}.motion .word-reveal span{color:#f0f9ee}.motion .word-reveal .last-words{color:var(--mint)}.dream-note{opacity:1}.motion .absence .frame{min-height:550px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.scene{--p:1!important}.opening-content{opacity:1!important;transform:none!important}.word-reveal span{color:#f0f9ee!important}}
