:root{--paper:#efeee7;--ink:#171815;--line:#c5c5be;--red:#e2231a;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}body.intro-playing{overflow:hidden}button,a,input{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;border:0;background:none;cursor:pointer;padding:0}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--red);outline-offset:6px}::selection{background:var(--red);color:var(--paper)}.skip-link{position:fixed;top:12px;left:12px;z-index:100;background:var(--paper);padding:14px;transform:translateY(-160%)}.skip-link:focus{transform:none}.micro{display:block;font-size:10px;line-height:1.35;letter-spacing:.03em}.resting-scene{position:relative;min-height:100svh;height:100svh;color:var(--paper);background:#006277;overflow:hidden}.resting-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 45%}.technical-grid{position:absolute;inset:0;background-image:linear-gradient(#efeee71a 1px,transparent 1px),linear-gradient(90deg,#efeee71a 1px,transparent 1px);background-size:12.5vw 20vh;pointer-events:none}.portfolio-nav{position:absolute;top:28px;left:3%;right:3%;display:flex;align-items:flex-start;justify-content:space-between;z-index:2}.signature{display:flex;align-items:flex-start;gap:15px;font-size:35px;line-height:.82;font-weight:700;letter-spacing:-.09em}.signature>span{font-size:9px;line-height:1.4;font-weight:400;letter-spacing:0}.portfolio-nav nav{display:flex;gap:35px;font-size:12px}.portfolio-nav nav a,.portfolio-nav nav button{padding:7px 0;border-bottom:1px solid transparent;transition:border-color .2s}.portfolio-nav nav span{display:inline-block;margin-left:15px;transition:transform .3s}.resting-details{position:absolute;top:19%;left:51%;width:42%;max-width:680px}.detail-pair{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-bottom:38px}.detail-pair .micro{opacity:.7}.detail-pair p{font-size:clamp(10px,1vw,15px);line-height:1.4;margin:10px 0 0}.resting-statement{padding:26px 0 34px}.resting-statement h1{font-size:clamp(45px,5.6vw,92px);font-weight:500;line-height:.96;letter-spacing:-.065em;margin:22px 0}.resting-statement p{font-size:13px;line-height:1.6}.contact-detail a{display:block;font-size:10px;margin-top:12px}.enter-archive{position:absolute;bottom:6%;left:3%;display:flex;gap:60px;font-size:11px;border-top:1px solid #efeee77a;padding-top:15px;min-width:31%}.hero-edition{position:absolute;bottom:6%;right:3%;font-size:9px;letter-spacing:.03em}.intro{position:fixed;inset:0;background:var(--paper);z-index:20;overflow:hidden}.intro-composition{position:absolute;left:50%;top:50%;width:0;height:0;--window-width:40.5vw;--window-height:22.78125vw;--label-gap:3vw}.intro-label{position:absolute;top:0;font-size:2.15vw;line-height:1;font-weight:500;letter-spacing:-.045em;white-space:nowrap;overflow:hidden;transform:translateY(-50%)}.intro-label-left{right:0;padding-right:var(--label-gap)}.intro-label-right{left:0;padding-left:var(--label-gap)}.intro-label>span{display:block}.aperture{position:absolute;width:var(--window-width);height:var(--window-height);left:calc(var(--window-width) / -2);top:calc(var(--window-height) / -2);overflow:hidden;clip-path:inset(50% 50% 50% 50%);container-type:inline-size}.aperture-border{position:absolute;inset:0;border:1px solid #171815a6;pointer-events:none;z-index:8}.montage{position:absolute;inset:1px;overflow:hidden}.montage-layer{position:absolute;inset:0;background:var(--paper);overflow:hidden;clip-path:inset(0 0 100% 0)}.mask{overflow:hidden;display:block}.mask>span,.mask>p{display:block}.editorial-card{padding:2.2cqw;clip-path:inset(0)}.card-heading{display:grid;grid-template-columns:25% 75%;font-size:9.3cqw;line-height:1.1;letter-spacing:-.065em;white-space:nowrap}.card-annotation{position:absolute;top:49%;left:27%;font-size:.95cqw;line-height:1.2}.card-body{position:absolute;top:58%;left:2.2%;right:2.2%;font-size:3.15cqw;line-height:1.08;letter-spacing:-.035em}.card-body p{margin:0;text-indent:25%}.card-footnote{position:absolute;left:27%;bottom:4%;font-size:1.25cqw;line-height:1.25}.water-images{display:grid;grid-template-columns:65% 35%;height:69%}.water-images img{width:100%;height:100%;object-fit:cover}.water-title{position:absolute;top:7%;left:-2%;font-size:7.9cqw;font-weight:700;white-space:nowrap;color:var(--paper);letter-spacing:-.06em;transform:rotate(-9deg)}.contact-strip{display:grid;height:31%;grid-template-columns:repeat(4,1fr);gap:2px;background:var(--paper);padding-top:2px}.contact-strip img{height:100%;width:100%;object-fit:cover;object-position:center 43%;min-height:0}.contact-strip>span{background:var(--red);color:var(--paper);font-size:4cqw;line-height:.9;font-weight:700;padding:7% 6%;letter-spacing:-.06em}.form-type{position:absolute;top:1%;left:1%;right:1%;font-size:8.6cqw;font-weight:800;line-height:.82;letter-spacing:-.065em;z-index:2}.form-type>span{display:block;white-space:nowrap}.form-type>span:nth-child(-n+2){text-align:right}.form-card img{position:absolute;bottom:0;right:0;width:57%;height:61%;object-fit:cover;object-position:center 55%}.form-bottom{position:absolute;bottom:-14%;left:2%;font-size:12.5cqw;line-height:.85;letter-spacing:-.07em;font-weight:800}.dark-card{background:#171815;color:var(--paper)}.dark-micro{position:absolute;top:10%;left:4%;font-size:.9cqw;letter-spacing:.02em}.dark-title{position:absolute;left:3%;top:30%;z-index:2;font-size:9.2cqw;line-height:.83;font-weight:800;letter-spacing:-.065em}.dark-title>span{padding-left:15%}.dark-card img{position:absolute;right:5%;top:9%;width:42%;height:76%;object-fit:cover}.dark-coordinate{position:absolute;bottom:8%;left:4%;font-size:1.05cqw;line-height:1.3}.skip-intro{position:fixed;right:3%;bottom:25px;z-index:21;font-size:9px;letter-spacing:.02em;opacity:0;visibility:hidden}.motion-tools{position:fixed;right:22px;bottom:20px;z-index:30;font-size:10px;color:var(--ink)}.study-toggle{display:flex;gap:30px;align-items:center;background:var(--paper);border:1px solid #17181530;padding:10px 12px}.study-toggle span{font-size:15px}.motion-tools[hidden]{display:none}#motion-study{position:absolute;bottom:43px;right:0;width:330px;padding:20px;background:var(--paper);border:1px solid var(--line);box-shadow:0 10px 40px #17181515}.study-heading{display:flex;justify-content:space-between;margin-bottom:20px;font-size:9px}#motion-study label{font-size:10px;display:block}#motion-scrub{width:100%;margin:15px 0;accent-color:var(--red)}.timestamp-buttons{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;margin-bottom:18px}.timestamp-buttons button{border:1px solid var(--line);padding:8px 3px;font-size:9px}.timestamp-buttons button:hover,.timestamp-buttons button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.archive{padding:35px 4% 0;scroll-margin-top:0}.archive-top{display:flex;justify-content:space-between;border-top:1px solid var(--ink);padding-top:15px;font-size:10px}.archive h2{font-size:clamp(90px,18vw,310px);font-weight:500;letter-spacing:-.085em;line-height:.8;margin:100px 0 0}.archive h2>span{margin-left:24%}.archive-intro{display:grid;grid-template-columns:1fr 1fr;margin:70px 0 100px;align-items:start}.archive-intro p{font-size:17px;line-height:1.4;margin:0;letter-spacing:-.02em}.photo-index{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:90px 24px;align-items:start}.photo-entry{margin:0}.photo-entry:nth-child(1){grid-column:2/7}.photo-entry:nth-child(2){grid-column:8/13;margin-top:180px}.photo-entry:nth-child(3){grid-column:1/6}.photo-entry:nth-child(4){grid-column:9/12;margin-top:100px}.photo-entry:nth-child(5){grid-column:3/9}.photo-entry:nth-child(6){grid-column:9/13;margin-top:180px}.photo-entry:nth-child(7){grid-column:1/9;margin-top:70px}.photo-open{display:block;width:100%;position:relative;text-align:left;overflow:hidden;background:#deded7}.photo-open img{display:block;width:100%;height:auto;transition:transform .65s cubic-bezier(.22,1,.36,1)}.photo-open .view-mark{position:absolute;right:13px;bottom:13px;padding:8px 10px;background:var(--paper);font-size:10px;opacity:0;transform:translateY(8px);transition:transform .25s,opacity .25s}.photo-entry figcaption{display:flex;justify-content:space-between;gap:15px;margin-top:13px;font-size:10px;line-height:1.5}.photo-caption-title{display:block;font-size:12px;margin-bottom:3px}.photo-sequence{font-variant-numeric:tabular-nums;color:#6e6f69}.archive footer{display:flex;justify-content:space-between;gap:24px;border-top:1px solid var(--ink);margin-top:150px;padding:20px 0 85px;font-size:10px}.photo-viewer{position:fixed;inset:0;margin:0;max-width:none;max-height:none;width:100%;height:100%;border:0;padding:22px 3%;background:var(--paper);color:var(--ink)}.photo-viewer::backdrop,.info-dialog::backdrop{background:#171815b3}.viewer-toolbar,.viewer-bottom{position:absolute;left:3%;right:3%;display:flex;justify-content:space-between;align-items:center;font-size:11px;gap:20px}.viewer-toolbar{top:25px}.viewer-bottom{bottom:25px}.viewer-photo{display:block;position:absolute;left:5%;top:9%;width:90%;height:80%;object-fit:contain}.viewer-counter{font-variant-numeric:tabular-nums}.info-dialog{width:640px;max-width:calc(100vw - 32px);border:0;background:var(--paper);color:var(--ink);padding:65px 50px 50px}.info-close{position:absolute;top:25px;right:25px;font-size:10px}.info-dialog h2{font-size:100px;line-height:.86;letter-spacing:-.075em;font-weight:500;margin:35px 0}.info-dialog p{font-size:15px;line-height:1.6;max-width:350px}.info-dialog p a{border-bottom:1px solid var(--line)}.info-links{display:flex;gap:50px;margin-top:30px;font-size:13px}.noscript-note{padding:20px}.study-mode .intro{pointer-events:none}.study-mode .skip-intro{display:none}.intro[hidden]{display:none}
@media(hover:hover){.portfolio-nav nav a:hover,.portfolio-nav nav button:hover{border-color:currentColor}.portfolio-nav nav a:hover span,.portfolio-nav nav button:hover span{transform:translate(3px,-3px)}.photo-open:hover img{transform:scale(1.025)}.photo-open:hover .view-mark{opacity:1;transform:none}.enter-archive:hover{border-top-color:currentColor}.contact-detail a:hover,.info-links a:hover,footer a:hover,footer button:hover{text-decoration:underline;text-underline-offset:4px}}.photo-open:focus-visible .view-mark{opacity:1;transform:none}
@media(min-width:1600px){.resting-details{top:20%}.detail-pair{margin-bottom:50px}}
@media(max-width:800px){.portfolio-nav{top:23px;left:5%;right:5%}.portfolio-nav nav{gap:20px;font-size:11px}.signature{font-size:30px}.signature>span{font-size:8px}.resting-details{left:40%;width:54%;top:20%}.detail-pair{margin-bottom:24px;gap:12px}.resting-statement{padding:10px 0 20px}.resting-statement h1{font-size:54px}.hero-edition{display:none}.enter-archive{left:5%;bottom:9%;width:52%;gap:20px;justify-content:space-between}.intro-composition{--window-width:48vw;--window-height:27vw;--label-gap:2vw}.intro-label{font-size:2.4vw}.photo-index{gap:65px 15px}.photo-entry:nth-child(2),.photo-entry:nth-child(6){margin-top:100px}.archive footer{flex-wrap:wrap}}
@media(max-width:520px){.intro-composition{--window-width:61vw;--window-height:34.3125vw;--label-gap:2.2vw}.intro-label{font-size:2.5vw;letter-spacing:-.045em}.resting-photo{object-position:56% 47%}.portfolio-nav{top:25px}.signature{font-size:28px}.signature>span{font-size:7px}.portfolio-nav nav{gap:16px;font-size:10px}.portfolio-nav nav span{display:none}.resting-details{top:23%;left:35%;width:60%}.micro{font-size:8px}.detail-pair{gap:14px;margin-bottom:26px}.detail-pair p{font-size:9px;line-height:1.5;margin-top:8px}.resting-statement h1{font-size:48px;margin:18px 0}.resting-statement p{font-size:11px;line-height:1.6}.contact-detail{grid-template-columns:1fr;gap:18px}.contact-detail a{font-size:9px;margin-top:7px}.enter-archive{width:67%;bottom:10%;font-size:9px}.motion-tools{bottom:14px;right:14px}.study-toggle{font-size:9px;gap:20px;padding:8px 10px}#motion-study{width:min(330px,calc(100vw - 28px))}.archive{padding:25px 5% 0}.archive-top{font-size:8px}.archive h2{font-size:24vw;margin-top:85px}.archive h2>span{margin-left:18%}.archive-intro{grid-template-columns:1fr;gap:25px;margin:45px 0 65px}.archive-intro p{font-size:15px;padding-left:25%}.photo-index{grid-template-columns:repeat(6,minmax(0,1fr));gap:50px 12px}.photo-entry:nth-child(n){grid-column:1/7;margin-top:0}.photo-entry:nth-child(1){grid-column:1/6}.photo-entry:nth-child(4){grid-column:3/7}.photo-entry:nth-child(6){grid-column:2/7}.photo-entry figcaption{font-size:8px}.photo-caption-title{font-size:11px}.archive footer{margin-top:80px;font-size:8px;padding-bottom:80px}.info-dialog{padding:60px 30px 35px}.info-dialog h2{font-size:85px}.viewer-toolbar,.viewer-bottom{font-size:9px}.viewer-photo{top:12%;height:73%}}
@media(max-height:650px) and (min-width:521px){.resting-details{top:15%;width:45%}.detail-pair{margin-bottom:15px}.resting-statement{padding:0 0 15px}.resting-statement h1{font-size:45px;margin:15px 0}.resting-statement p{font-size:11px}.enter-archive{bottom:8%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}.intro,.skip-intro{display:none}.photo-open:hover img{transform:none}body.intro-playing{overflow:auto}}
.opening-rule{position:absolute;left:calc(var(--window-width) / -2);top:-.5px;width:var(--window-width);height:1px;background:#171815a6;transform-origin:center;pointer-events:none}
.aperture-border{transform-origin:center}

/* Subtle text separation preserves legibility over water highlights. */
.resting-details,.portfolio-nav,.enter-archive,.hero-edition{text-shadow:0 1px 3px #002b4180}
.detail-pair .micro{opacity:.85}

.dark-title{white-space:nowrap}
.dark-title>span{display:block;padding-left:15cqw;white-space:nowrap}
@media(max-height:800px) and (min-width:521px){
  .resting-details{top:15%;width:45%}
  .detail-pair{margin-bottom:22px}
  .resting-statement{padding:10px 0 20px}
  .resting-statement h1{font-size:clamp(45px,5vw,64px);margin:15px 0}
  .resting-statement p{font-size:11px}
}
@media(max-height:700px) and (max-width:520px){
  .resting-details{top:15%}
  .detail-pair{margin-bottom:18px}
  .resting-statement{padding:4px 0 12px}
  .resting-statement h1{font-size:38px;margin:12px 0}
  .enter-archive{bottom:8%}
}
.resting-photo{object-position:center 35%}
.hero-edition{right:17%}
@media(max-width:520px){.resting-photo{object-position:56% 47%}}
@media(max-height:650px) and (min-width:521px){.detail-pair{margin-bottom:15px}.resting-statement{padding:0 0 15px}.resting-statement h1{font-size:45px}}
@media(max-height:700px) and (max-width:520px){
  .contact-detail{grid-template-columns:1fr 1fr;gap:12px}
  .resting-statement h1{font-size:36px}
  .resting-statement p{font-size:10px}
}
/* One photograph per viewport, with the original ratio and editorial offsets. */
html.photo-paged{scroll-snap-type:y mandatory;scroll-behavior:auto}
html.photo-paged.is-page-turning{scroll-snap-type:none}
.photo-paged .resting-scene,.photo-paged .archive-heading,.photo-paged .photo-entry{scroll-snap-align:start;scroll-snap-stop:always}
.photo-paged .archive{padding-top:0}
.photo-paged .archive-heading{min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding:35px 0}
.photo-paged .archive h2{margin:7svh 0 0}
.photo-paged .archive-intro{margin:7svh 0 0}
.photo-paged .photo-index{display:block}
.photo-paged .photo-entry:nth-child(n){min-height:100svh;margin:0;padding:7svh 0;display:flex;flex-direction:column;justify-content:center;width:65%}
.photo-paged .photo-entry:nth-child(1){width:43%;margin-left:8%}
.photo-paged .photo-entry:nth-child(2){margin-left:33%}
.photo-paged .photo-entry:nth-child(3){margin-left:2%}
.photo-paged .photo-entry:nth-child(4){width:37%;margin-left:56%}
.photo-paged .photo-entry:nth-child(5){margin-left:18%}
.photo-paged .photo-entry:nth-child(6){width:43%;margin-left:50%}
.photo-paged .photo-entry:nth-child(7){width:78%;margin-left:5%}
.photo-paged .photo-open{height:74svh;background:transparent}
.photo-paged .photo-open img{width:100%;height:100%;object-fit:contain}
.photo-paged .archive footer{margin-top:0;scroll-snap-align:end;padding-bottom:35px}
@media(max-width:600px){.photo-paged .photo-entry:nth-child(n){width:100%;margin-left:0;padding:8svh 0}.photo-paged .photo-entry:nth-child(1),.photo-paged .photo-entry:nth-child(4),.photo-paged .photo-entry:nth-child(6){width:88%;margin-left:6%}.photo-paged .photo-open{height:70svh}.photo-paged .archive-heading{padding:30px 0}.photo-paged .archive h2{margin-top:6svh}}
@media(prefers-reduced-motion:reduce){html.photo-paged{scroll-snap-type:y proximity}}
