:root{--dark:#2a2622;
  --bg:#f2f2f2; --paper:#fafafa; --ink:#191919; --sand:#dcd5c9; --muted:#7a7a7a; --lime:#c3ea4f;
  --line:rgba(25,25,25,.12);
  --display:"the-seasons","The Seasons","Cormorant Garamond",Georgia,serif;
  --script:"sloop-script-one","sloop-script-two","sloop-script-three","Sloop Script","Pinyon Script",cursive;
  --hand:"Emoray Signature Brush",cursive;
  --body:"Manrope",system-ui,sans-serif;
  --ease:cubic-bezier(.65,.05,.2,1);
  --noise:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.15' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .1 0 0 0 0 .08 0 0 0 0 .07 0 0 0 2.4 -1.1'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  color-scheme:light;
}
*{box-sizing:border-box}
body{background:#dedede;color:var(--ink);font-family:var(--body);margin:0}
button{font:inherit;cursor:pointer}
:focus-visible{outline:1px solid var(--ink);outline-offset:4px}
img{display:block}
.site{position:relative;container-type:inline-size;width:min(var(--w,1440px),100%);margin:0 auto;background:var(--bg);overflow:clip;transition:width .4s var(--ease)}
.wrap{max-width:1320px;margin:0 auto;padding-inline:clamp(20px,4cqi,56px)}
.lbl{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;font-weight:500}
.lbl.m{color:var(--muted)}
p{margin:0;font-size:14px;line-height:1.9;font-weight:300;color:var(--muted);max-width:44ch}
h1,h2,h3{margin:0;font-weight:400;text-wrap:balance}
.st{font-family:var(--display);font-weight:400;letter-spacing:-.01em;line-height:1.22}
.st em{font-style:italic}
.st .hl{background:linear-gradient(transparent 58%,var(--lime) 58%,var(--lime) 92%,transparent 92%);padding-inline:.06em}
.scr{font-family:var(--script);font-weight:700;font-style:normal;letter-spacing:0}
a{color:inherit;text-decoration:none}
.tl{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;font-weight:500;position:relative;padding-bottom:4px;display:inline-block}
.tl::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform-origin:right;transition:transform .5s var(--ease)}
.tl:hover::after{transform:scaleX(0)}
.grain{position:relative;isolation:isolate}
.grain::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background-image:var(--noise);background-size:240px;opacity:.5;mix-blend-mode:multiply}
.grain.soft::after{opacity:.28}
.tone img{filter:grayscale(.25) sepia(.16) contrast(.97)}
.head{position:relative;z-index:5}
.head .wrap{display:flex;justify-content:space-between;align-items:center;padding-block:26px}
.logo img{height:34px;width:auto}
.head nav{display:flex;gap:clamp(18px,3cqi,44px)}
.hr{display:flex;align-items:center;gap:clamp(24px,4cqi,56px)}
.tl[aria-current="page"]::after{transform:scaleX(1)}
.head nav .tl:not([aria-current])::after{transform:scaleX(0);transform-origin:left}
.head nav .tl:not([aria-current]):hover::after{transform:scaleX(1)}
.enq-btn{display:inline-flex;align-items:center;gap:10px;background:var(--ink);color:var(--bg);font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;font-weight:500;padding:13px 20px;transition:background .4s var(--ease),color .4s}
.enq-btn .dot{width:6px;height:6px;border-radius:50%;background:var(--lime)}
.enq-btn:hover{background:var(--lime);color:var(--ink)}
.enq-btn:hover .dot{background:var(--ink)}
.menu{display:none;background:none;border:0}
.land{padding-block:clamp(24px,3cqi,48px) clamp(100px,11cqi,160px)}
.lgrid{position:relative;display:grid;grid-template-columns:repeat(12,1fr);align-items:center}
.frame{grid-column:5/9;grid-row:1;aspect-ratio:2/3;position:relative;overflow:hidden;background:var(--sand)}
.frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.08);transition:opacity 1.4s ease,transform 7s linear}
.frame img.on{opacity:1;transform:scale(1)}
.wm{grid-row:1;position:relative;z-index:3;font-family:var(--display);font-weight:400;font-size:clamp(64px,10.5cqi,156px);line-height:1;letter-spacing:-.02em;pointer-events:none}
.wm.a{grid-column:1/6;justify-self:end;margin-right:-.14em;margin-top:-14%}
.wm.b{grid-column:8/13;justify-self:start;margin-left:-.3em;margin-top:10%}
.lt{grid-column:2/5;grid-row:1;align-self:end;margin-bottom:18%;display:grid;gap:18px;justify-items:start;padding-right:20px}
.lt h1{font-weight:300;font-size:14px;line-height:1.8;color:var(--muted);max-width:28ch}
.rt{grid-column:9/12;grid-row:1;align-self:end;margin-bottom:8%;padding-left:clamp(16px,2cqi,30px);display:grid;gap:10px}
.count{font-size:10.5px;letter-spacing:.2em;font-variant-numeric:tabular-nums;color:var(--muted)}
.sig{font-family:var(--hand);font-size:34px;line-height:1;color:var(--ink)}
.intro{padding-block:0 clamp(110px,14cqi,200px)}
.intro .wrap{display:grid;grid-template-columns:repeat(12,1fr);gap:20px}
.intro .lbl{grid-column:1/3;padding-top:12px}
.intro h2{grid-column:3/10;font-size:clamp(28px,3.1cqi,46px)}
.intro .side{grid-column:3/8;display:grid;gap:22px;margin-top:34px;justify-items:start}
.sx-head{display:flex;justify-content:space-between;align-items:baseline;gap:20px;flex-wrap:wrap;margin-bottom:20px}
.cols-sec{position:relative;margin-inline:clamp(20px,4cqi,56px);height:clamp(560px,52cqi,800px);border-top:1px solid var(--line);border-bottom:1px solid var(--line);cursor:none;color:var(--ink);transition:color .6s var(--ease)}
.cols{position:absolute;inset:0;display:grid;grid-template-columns:repeat(3,1fr);z-index:3}
.col{position:relative;border-left:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between;padding:22px 22px 24px;color:inherit;transition:color .5s var(--ease),border-color .5s}
.col:first-child{border-left:0}
.col .bot{display:flex;justify-content:space-between;align-items:end;gap:10px}
.col .bot h3{font-family:var(--display);font-weight:400;font-size:clamp(26px,2.4cqi,36px);line-height:1}
.col .num{font-size:10.5px;letter-spacing:.2em;opacity:.7}
.col .mimg{display:none}
.top1{max-width:90%;display:grid;gap:14px}
.top1 h2{font-size:clamp(20px,1.8cqi,26px)}
.fill{position:absolute;inset:0;z-index:1;overflow:hidden;clip-path:inset(0 0 0 66.666%);transition:clip-path 1s var(--ease)}
.fill img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .6s ease,transform 1.6s var(--ease);transform:scale(1.06)}
.fill img.on{opacity:1;transform:scale(1)}
.fill::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(25,25,25,.2),rgba(25,25,25,0) 35%,rgba(25,25,25,.32));pointer-events:none}
.cols-sec .col.lit,.cols-sec.full,.cols-sec.full .col{color:var(--bg)}
.cols-sec.full .col{border-color:rgba(242,242,242,.25)}
.cursor{position:absolute;z-index:6;left:0;top:0;width:76px;height:76px;margin:-38px 0 0 -38px;border-radius:50%;border:1px solid currentColor;display:grid;place-items:center;font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;pointer-events:none;opacity:0;transform:scale(.6);transition:opacity .3s,transform .4s var(--ease);color:var(--bg);mix-blend-mode:difference}
.cols-sec:hover .cursor{opacity:1;transform:scale(1)}
@media (hover:none){.cols-sec{cursor:auto}
.cursor{display:none}}
.under{display:flex;justify-content:space-between;align-items:baseline;gap:20px;flex-wrap:wrap;padding-block:18px 0}
.work-sec{padding-block:clamp(120px,14cqi,200px) clamp(110px,13cqi,180px)}
.wk{display:grid;grid-template-columns:4fr 8fr;gap:clamp(30px,5cqi,90px);align-items:start}
.wk-side{position:sticky;top:110px;display:grid;gap:26px;padding-top:6px}
.wk-side .top{display:flex;justify-content:space-between;align-items:baseline}
.titles{position:relative;height:clamp(96px,8cqi,130px);overflow:hidden}
.titles .tt{position:absolute;inset:0;display:grid;align-content:start;gap:10px;transform:translateY(105%);opacity:0;transition:transform .9s var(--ease),opacity .6s}
.titles .tt.on{transform:none;opacity:1}
.titles .tt.up{transform:translateY(-105%);opacity:0}
.titles h3{font-family:var(--display);font-weight:400;font-size:clamp(34px,3.6cqi,54px);line-height:1}
.titles h3 em{font-style:italic}
.prog{height:1px;background:var(--line);position:relative}
.prog i{position:absolute;left:0;top:0;bottom:0;background:var(--ink);width:0;transition:width .5s var(--ease)}
.wk-list{display:grid;gap:clamp(90px,11cqi,170px)}
.card{display:block;position:relative;width:var(--cw,100%);justify-self:var(--js,start)}
.card .ph{position:relative;overflow:hidden;aspect-ratio:var(--ar,3/2);clip-path:inset(0);transition:clip-path 1.3s var(--ease)}
.js-reveal .card:not(.in) .ph{clip-path:inset(14% 10% 14% 10%)}
.card .ph img{position:absolute;left:0;top:-8%;width:100%;height:116%;object-fit:cover;transform:translate3d(0,var(--py,0px),0) scale(var(--sc,1.06));transition:transform .9s var(--ease)}
.card:hover .ph img{--sc:1.12}
.card .veil{position:absolute;left:0;right:0;bottom:0;z-index:3;display:flex;justify-content:space-between;align-items:center;padding:16px 18px;background:linear-gradient(transparent,rgba(25,25,25,.45));color:var(--bg);transform:translateY(100%);transition:transform .6s var(--ease)}
.card:hover .veil,.card:focus-visible .veil{transform:none}
.card .cap{display:none}
.band{position:relative;min-height:clamp(520px,50cqi,720px);display:flex;align-items:center;color:var(--bg);background:var(--dark)}
.band>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 30%;filter:grayscale(1) sepia(.3) contrast(1.12) brightness(.5)}
.band::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(30,26,22,.7),rgba(30,26,22,.25) 70%)}
.band .wrap{position:relative;z-index:3;width:100%;display:grid;grid-template-columns:repeat(12,1fr);gap:20px}
.band .in{grid-column:2/9;display:grid;gap:26px;justify-items:start}
.band h2{font-size:clamp(30px,3.6cqi,54px);color:var(--bg)}
.band h2 .lime{color:var(--lime)}
.band .scr{color:var(--lime);font-size:1.18em;line-height:.8}
.band p{color:rgba(242,242,242,.78)}
.contact{padding-block:clamp(110px,13cqi,180px) clamp(70px,8cqi,110px)}
.contact .wrap{display:grid;grid-template-columns:repeat(12,1fr);gap:20px;align-items:end}
.contact h2{grid-column:1/8;font-size:clamp(56px,8cqi,120px);line-height:.95}
.contact h2 .scr{font-size:1.1em}
.contact .r{grid-column:9/13;display:grid;gap:18px;justify-items:start}
.contact .mail{font-family:var(--display);font-style:italic;font-size:clamp(22px,2.2cqi,30px);user-select:all}
footer .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-block:22px 28px;border-top:1px solid var(--line);color:var(--muted)}
footer nav{display:flex;gap:24px;flex-wrap:wrap}
@media (prefers-reduced-motion:reduce){.fill,.fill img,.frame img,.card .ph,.card .ph img,.titles .tt{transition:none}}
@container (max-width:900px){.intro h2,.intro .side{grid-column:3/13}
.band .in{grid-column:1/12}
.contact h2,.contact .r{grid-column:1/13}}
@container (max-width:700px){.head nav{display:none}
.menu{display:block}
.enq-btn{padding:10px 14px}
.frame{grid-column:2/12}
.wm{font-size:clamp(60px,21cqi,120px)}
.wm.a{grid-column:1/13;justify-self:start;align-self:start;margin:-.42em 0 0}
.wm.b{grid-column:1/13;justify-self:end;align-self:end;margin:0 0 -.42em}
.lt{grid-row:2;grid-column:1/13;margin:70px 0 0;padding:0}
.rt{grid-row:3;grid-column:1/13;margin:24px 0 0;padding:0;display:flex;justify-content:space-between;align-items:center}
.intro .lbl,.intro h2,.intro .side{grid-column:1/13}
.cols-sec{height:auto;cursor:auto}
.cursor,.fill{display:none}
.cols{position:relative;grid-template-columns:1fr}
.col{border-left:0;border-top:1px solid var(--line);padding:0}
.col:first-child{border-top:0}
.cols-sec .col,.cols-sec .col.lit{color:var(--ink)}
.col .mimg{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}
.col .bot{padding:14px 2px 26px}
.top1{padding:6px 0 28px;max-width:none}
.col .empty{display:none}
.wk{grid-template-columns:1fr}
.wk-side{position:relative;top:auto}
.titles,.prog{display:none}
.wk-list .card{width:100%;justify-self:stretch}
.card .cap{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding-top:12px}
.card .cap b{font-family:var(--display);font-weight:400;font-size:24px}
.wk-list{gap:56px}
.band .in{grid-column:1/13}}
.page-shoot .head{position:relative}
.back{display:inline-flex;gap:12px;align-items:center}
.back::before{content:"";width:28px;height:1px;background:currentColor;transition:width .5s var(--ease)}
.back:hover::before{width:44px}
.sh-hero{padding-block:clamp(30px,4cqi,60px) clamp(50px,6cqi,90px)}
.sh-hero .wrap{display:grid;grid-template-columns:repeat(12,1fr);gap:20px;align-items:end}
.sh-hero .top{grid-column:1/13;margin-bottom:clamp(30px,5cqi,70px)}
.sh-hero .ttl{grid-column:1/8;display:grid;gap:22px}
.sh-hero h1{font-family:var(--display);font-weight:400;font-size:clamp(84px,14cqi,220px);line-height:.85;letter-spacing:-.02em}
.sh-hero h1 em{font-style:italic}
.sh-hero .meta{grid-column:9/13;display:grid;gap:22px}
.meta dl{margin:0;border-top:1px solid var(--ink)}
.meta dl div{display:grid;grid-template-columns:110px 1fr;padding-block:12px;border-bottom:1px solid var(--line);gap:12px;align-items:baseline}
.meta dt{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;font-weight:500;color:var(--muted)}
.meta dd{margin:0;font-family:var(--display);font-size:18px}
.lead{position:relative;overflow:hidden;height:clamp(420px,62cqi,900px);margin-inline:clamp(20px,4cqi,56px)}
.lead img{position:absolute;inset:-6% 0;width:100%;height:112%;object-fit:cover;transform:translate3d(0,var(--py,0px),0) scale(var(--z,1.12));transform-origin:50% 60%}
.ch{padding-block:clamp(90px,11cqi,170px) 0}
.ch .wrap{display:grid;grid-template-columns:repeat(12,1fr);column-gap:20px;row-gap:clamp(40px,5cqi,80px);align-items:start}
.ch .side{grid-column:1/3;position:sticky;top:110px;display:grid;gap:10px;align-self:start}
.ch .side .n{font-family:var(--display);font-style:italic;font-size:clamp(40px,4cqi,60px);color:var(--muted);line-height:1}
.ch .side h2{font-family:var(--display);font-weight:400;font-size:clamp(24px,2.2cqi,32px);line-height:1.1}
.ch .side h2 em{font-style:italic}
.ch .body{grid-column:3/13;display:grid;grid-template-columns:repeat(10,1fr);column-gap:20px;row-gap:clamp(40px,5cqi,80px);align-items:start}
.sh{margin:0}
.sh .ph{position:relative;overflow:hidden;background:var(--sand);transform-origin:50% 100%;transform:perspective(1400px) translate3d(0,calc((1 - var(--p,1)) * 110px),calc((1 - var(--p,1)) * -160px)) rotateX(calc((1 - var(--p,1)) * 26deg)) rotateY(calc((1 - var(--p,1)) * var(--ry,9deg))) rotateZ(calc((1 - var(--p,1)) * var(--rz,0deg)));opacity:calc(.1 + var(--p,1) * .9);will-change:transform,opacity}
.bleed{transform-origin:50% 0;transform:perspective(1600px) rotateX(calc((1 - var(--p,1)) * -38deg)) scale(calc(.82 + var(--p,1) * .18));will-change:transform}
.pq p{opacity:var(--p,1);transform:translateY(calc((1 - var(--p,1)) * 40px));letter-spacing:calc((1 - var(--p,1)) * .08em)}
.sh .ph img{position:absolute;left:0;top:-8%;width:100%;height:116%;object-fit:cover;transform:translate3d(0,var(--py,0px),0)}
.w10{grid-column:1/11}
.w10 .ph{aspect-ratio:16/9}
.w6{grid-column:1/7}
.w6 .ph{aspect-ratio:3/2}
.w6r{grid-column:5/11}
.w6r .ph{aspect-ratio:3/2}
.p4{grid-column:8/11}
.p4 .ph{aspect-ratio:4/5}
.p4l{grid-column:1/5}
.p4l .ph{aspect-ratio:4/5}
.p5a{grid-column:1/6}
.p5a .ph{aspect-ratio:4/5}
.p5b{grid-column:6/11}
.p5b .ph{aspect-ratio:4/5}
.off{margin-top:clamp(60px,12cqi,200px)}
.pq{grid-column:2/10;padding-block:clamp(20px,4cqi,60px)}
.pq p{font-family:var(--display);font-size:clamp(28px,3.4cqi,50px);line-height:1.2;color:var(--ink);max-width:none}
.pq em{font-style:italic}
.bleed{margin-top:clamp(90px,11cqi,170px);position:relative;overflow:hidden;height:clamp(380px,56cqi,820px)}
.bleed img{position:absolute;inset:-8% 0;width:100%;height:116%;object-fit:cover;transform:translate3d(0,var(--py,0px),0)}
.pager{padding-block:clamp(110px,13cqi,190px) 0}
.pager .wrap{display:grid;grid-template-columns:1fr auto 1fr;border-top:1px solid var(--ink);border-bottom:1px solid var(--line)}
.sp{display:flex;align-items:center;gap:clamp(16px,2cqi,28px);padding-block:clamp(24px,3cqi,40px)}
.sp.nx{justify-content:flex-end;text-align:right}
.sp .th{flex:none;width:clamp(72px,8cqi,112px);aspect-ratio:4/5;overflow:hidden;background:var(--sand)}
.sp .th img{width:100%;height:100%;object-fit:cover;transform:scale(1.12);transition:transform 1s var(--ease)}
.sp .tx{display:grid;gap:10px}
.sp .dir{display:inline-flex;gap:10px;align-items:center;font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;font-weight:500;color:var(--muted)}
.sp.nx .dir{justify-content:flex-end}
.sp .ar{display:inline-block;width:26px;height:1px;background:currentColor;position:relative;transition:width .5s var(--ease)}
.sp .ar::after{content:"";position:absolute;top:-3px;width:7px;height:7px;border-top:1px solid currentColor}
.sp.nx .ar::after{right:0;border-right:1px solid currentColor;transform:rotate(45deg)}
.sp.pv .ar::after{left:0;border-left:1px solid currentColor;transform:rotate(-45deg)}
.sp .t{font-family:var(--display);font-size:clamp(28px,3.4cqi,52px);line-height:1}
.sp .t em{font-style:italic}
.sp:hover .th img{transform:scale(1)}
.sp:hover .ar{width:44px}
.sp:hover .dir{color:var(--ink)}
.sp:hover .t{font-style:italic}
.pg-all{display:grid;place-items:center;align-content:center;gap:12px;padding-inline:clamp(28px,5cqi,80px);border-inline:1px solid var(--line);font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;font-weight:500;color:var(--muted);transition:color .3s}
.pg-all .gi{display:grid;grid-template-columns:repeat(2,8px);gap:4px}
.pg-all .gi i{width:8px;height:8px;border:1px solid currentColor;transition:background .3s,transform .4s var(--ease)}
.pg-all:hover{color:var(--ink)}
.pg-all:hover .gi i{background:var(--lime);border-color:var(--ink)}
.pg-all:hover .gi i:nth-child(1){transform:translate(-2px,-2px)}
.pg-all:hover .gi i:nth-child(2){transform:translate(2px,-2px)}
.pg-all:hover .gi i:nth-child(3){transform:translate(-2px,2px)}
.pg-all:hover .gi i:nth-child(4){transform:translate(2px,2px)}
@container (max-width:900px){.sh-hero .ttl,.sh-hero .meta{grid-column:1/13}}
@container (max-width:700px){.ch .side{grid-column:1/13;position:relative;top:auto;display:flex;gap:14px;align-items:baseline}
.ch .body{grid-column:1/13}
.w10,.w6,.w6r,.p5a,.p5b{grid-column:1/11}
.p4,.p4l{grid-column:1/8}
.p4{grid-column:4/11}
.off{margin-top:0}
.pager .wrap{grid-template-columns:1fr}
.sp.nx{order:1;justify-content:flex-start;flex-direction:row-reverse;text-align:left}
.sp.nx .dir{justify-content:flex-start}
.sp.nx .tx{margin-right:auto}
.sp.pv{order:2;border-top:1px solid var(--line)}
.pg-all{order:3;border-inline:0;border-top:1px solid var(--line);padding-block:22px;grid-auto-flow:column;justify-content:center;gap:14px}
.lead{height:clamp(320px,110cqi,560px)}}
.clip{margin-block:clamp(70px,9cqi,140px)}
.clip .wrap{display:flex;justify-content:center}
.mvf{margin:0;position:relative;overflow:hidden;background:var(--sand)}
.mvv{display:block;width:100%;height:100%;object-fit:cover}
.clip.p23 .mvf{width:clamp(240px,32cqi,440px);aspect-ratio:2/3}
.clip.p916 .mvf{width:clamp(220px,28cqi,400px);aspect-ratio:9/16}
.clip.l .mvf{width:min(100%,1040px);aspect-ratio:16/9}
.mv{padding-block:0 clamp(110px,14cqi,200px)}
.mv .wrap{display:grid;grid-template-columns:repeat(12,1fr);gap:20px;align-items:end}
.mv .a{grid-column:3/7}
.mv .a .mvf{aspect-ratio:2/3}
.mv .b{grid-column:8/11}
.mv .b .mvf{aspect-ratio:9/16}
.mv .cp{margin-top:14px;display:flex;justify-content:space-between;gap:10px}
@container (max-width:900px){.mv .a{grid-column:1/8}
.mv .b{grid-column:8/13}}
@container (max-width:700px){.mv .wrap{gap:12px}
.mv .a{grid-column:1/7}
.mv .b{grid-column:7/13}}
