
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;1,400&display=swap');
:root{--bg:#eff0e8;--ink:#293529;--sage:#829276;--olive:#697d5d;--lime:#c7d2b4;--line:rgba(56,75,51,.24);--glass:rgba(243,246,235,.68);--shadow:rgba(43,59,39,.15)}body.dark{--bg:#202a22;--ink:#edf0e6;--sage:#94a786;--olive:#3d513a;--lime:#b7c6a4;--line:rgba(220,234,210,.24);--glass:rgba(42,57,42,.76);--shadow:rgba(0,0,0,.35)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',sans-serif;transition:background .5s,color .5s}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}.nav{position:fixed;z-index:50;top:18px;left:4%;right:4%;display:flex;justify-content:space-between;align-items:center}.logo{font-weight:700;letter-spacing:-.05em}.navright{display:flex;gap:10px}.pill,.icon{background:var(--glass);border:1px solid var(--line);backdrop-filter:blur(18px);border-radius:50px;padding:13px 20px}.icon{width:48px;height:48px;padding:0;font-size:21px}.menu{position:fixed;z-index:49;right:4%;top:78px;width:240px;padding:18px;background:var(--glass);backdrop-filter:blur(22px);border:1px solid var(--line);border-radius:30px;box-shadow:0 20px 50px var(--shadow);display:none}.menu.open{display:block}.menu a{display:block;text-align:center;padding:15px;border-radius:30px}.menu a:hover{background:var(--bg)}.menu button{display:block;margin:12px auto 0}.hero{min-height:100svh;position:relative;display:grid;place-items:center;text-align:center;overflow:hidden;background:radial-gradient(ellipse at 20% 30%,rgba(190,207,169,.55),transparent 42%),radial-gradient(ellipse at 80% 75%,rgba(111,139,99,.22),transparent 44%),var(--bg);padding:120px 20px 90px}.hero h1{font:400 clamp(70px,13vw,180px)/.91 'Playfair Display',serif;letter-spacing:-.075em;margin:28px 0;position:relative;z-index:2}.hero h1 span{display:inline-block;transition:transform .35s,color .35s}.hero h1 span:hover{transform:translateY(-10px) skewX(-5deg);color:var(--olive)}.eyebrow{font-size:11px;letter-spacing:.23em;text-transform:uppercase}.hero p{line-height:1.9}.cta{display:inline-flex;gap:40px;margin-top:25px;padding:16px 24px;border:1px solid var(--line);border-radius:40px;background:var(--glass);backdrop-filter:blur(12px);transition:transform .3s}.cta:hover{transform:translateY(-5px)}.hero-shape{position:absolute;border:1px solid var(--line);border-radius:50%;pointer-events:none;transition:transform .15s}.shape1{width:65vw;height:65vw;max-width:850px;max-height:850px}.shape2{width:30vw;height:30vw;transform:scaleX(.7)}.hero-image{position:absolute;right:10%;top:17%;width:clamp(130px,18vw,260px);aspect-ratio:4/5;border-radius:50% 50% 5px 5px;background:linear-gradient(145deg,#d5dfc6,#738766);opacity:0;transform:rotate(10deg) translateY(25px);transition:.5s;pointer-events:none}.hero:has(h1 span:hover) .hero-image{opacity:.85;transform:rotate(4deg) translateY(0)}.hint{position:absolute;bottom:28px;font-size:10px;letter-spacing:.2em}.hint.left{left:5%}.hint.right{right:5%}section{padding:100px 6%}.topline{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:18px;font-size:11px;letter-spacing:.14em}.bigtitle{font:400 clamp(60px,9vw,130px)/1 'Playfair Display',serif;letter-spacing:-.06em;margin:45px 0}.about{background:var(--olive);color:#f3f5e9;min-height:100vh}.about .topline{border-color:#ffffff55}.aboutgrid{display:grid;grid-template-columns:.9fr 1.1fr;gap:30px;align-items:center}.aboutcopy{max-width:430px}.aboutcopy h3{font-size:32px;font-weight:500}.aboutcopy p{line-height:1.9;opacity:.85}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-top:25px}.tabs button{background:none;border:1px solid #ffffff80;border-radius:40px;padding:10px 15px;color:white}.tabs button.active{background:#edf1e3;color:#3e5239}.discarea{display:grid;place-items:center;min-height:520px;touch-action:pan-y}.disc{width:min(470px,78vw);aspect-ratio:1;border-radius:50%;position:relative;cursor:grab;background:repeating-radial-gradient(circle,transparent 0 12px,#ffffff20 13px,transparent 15px),conic-gradient(#c8d5b5,#edf0e2,#8fa482,#dbe4cf,#74886b,#e4ead9,#c8d5b5);box-shadow:0 25px 70px #1a2b1a55,inset 0 0 40px #fff8;animation:spin 24s linear infinite}.disc.paused{animation-play-state:paused}.disc:before{content:'✳ ALWAYS EXPLORING ✳';position:absolute;top:10%;left:50%;transform:translateX(-50%);white-space:nowrap;color:#536b4d;font-size:11px;letter-spacing:.2em}.disc-center{position:absolute;inset:27%;border-radius:50%;background:#718665;border:1px solid #fff9;display:grid;place-items:center;color:#f7f8ee}.disc-center:after{content:'';position:absolute;width:35px;height:35px;border-radius:50%;background:#f7f8ee}.disc-center strong{position:absolute;top:22%;letter-spacing:.18em}.disc-center small{position:absolute;bottom:20%;font-size:10px}.disc-help{text-align:center;font-size:10px;letter-spacing:.2em;margin-top:10px}.works{min-height:100vh}.workgrid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.work{min-height:470px;padding:25px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;position:relative;transition:transform .35s}.work:hover{transform:translateY(-8px)}.work:nth-child(1){background:#c6d0ba;color:#334332}.work:nth-child(2){background:#d8d8c5;color:#454d3d}.work:nth-child(3){background:#b9c6aa;color:#344632}.work:nth-child(4){background:#e1e2d3;color:#46513e}.workart{font:400 clamp(75px,11vw,150px) 'Playfair Display',serif;text-align:center;transition:transform .5s}.work:hover .workart{transform:scale(1.13) rotate(-4deg)}.work footer{display:flex;justify-content:space-between;font-size:11px;letter-spacing:.1em}.work .desc{font-size:13px;line-height:1.7;max-width:280px}.services{background:var(--bg)}.service{display:grid;grid-template-columns:70px 1fr auto;gap:20px;align-items:center;padding:25px 0;border-bottom:1px solid var(--line);transition:padding .3s,color .3s}.service:hover{padding-left:16px;color:var(--olive)}.service strong{font:400 clamp(30px,5vw,62px) 'Playfair Display',serif}.service span{font-size:11px;letter-spacing:.1em}.process{background:#dfe5d4;color:#354332}.processgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:15px;margin-top:50px}.processitem{border-top:1px solid #35433266;padding-top:18px}.processitem h3{font:400 34px 'Playfair Display',serif}.processitem p{font-size:13px;line-height:1.7}.contact{background:var(--olive);color:#f3f5e9;min-height:70vh;text-align:center}.contact .topline{border-color:#ffffff55;text-align:left}.contact .bigtitle{font-size:clamp(55px,9vw,125px)}.contact a{font-size:clamp(24px,4vw,48px);border-bottom:1px solid #ffffff88;padding-bottom:8px}.footer{background:var(--olive);color:#f3f5e9;padding:24px 6%;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.15em}.reveal{opacity:0;transform:translateY(40px);transition:opacity .8s,transform .8s}.reveal.visible{opacity:1;transform:none}.cursor{position:fixed;z-index:1000;width:18px;height:18px;border:1px solid var(--ink);border-radius:50%;pointer-events:none;left:0;top:0;transform:translate(-50%,-50%);mix-blend-mode:difference;transition:width .2s,height .2s,background .2s;display:none}.cursor.big{width:65px;height:65px;background:#c7d2b488;border-color:transparent}@media(hover:hover) and (pointer:fine){body,a,button{cursor:none}.cursor{display:block}}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:760px){.aboutgrid{grid-template-columns:1fr}.discarea{min-height:380px}.disc{width:min(340px,80vw)}.workgrid{grid-template-columns:1fr}.work{min-height:360px}.processgrid{grid-template-columns:1fr 1fr}.service{grid-template-columns:35px 1fr}.service span:last-child{grid-column:2}.hero-image{right:0;top:14%;width:130px}.cursor{display:none!important}body,a,button{cursor:auto}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

body{word-break:keep-all;overflow-wrap:anywhere}.logo{background:var(--glass);padding:12px 18px;border:1px solid var(--line);border-radius:30px}.hero{display:grid;grid-template-columns:1fr .75fr;align-items:center;gap:5%;padding:125px 9% 75px;text-align:left}.hero-copy{position:relative;z-index:1}.hero h1{font-size:clamp(76px,10.6vw,170px);margin:20px 0}.hero p{font-size:17px}.hero figure{position:relative;width:100%;margin:0;z-index:1}.hero figure img{width:100%;height:clamp(320px,57vh,670px);object-fit:cover;border-radius:48% 48% 2px 2px}.hero figcaption,.photo-caption{font-size:12px;line-height:1.7;margin-top:7px}.shape1{left:-8%;top:-18%}.shape2{right:3%;bottom:3%}.works{padding-top:65px}.workgrid{align-items:start}.work{display:block;background:transparent!important;color:var(--ink)!important;padding:0;min-height:0;border-top:1px solid var(--line);padding-top:12px}.work img,.filmtype{width:100%;aspect-ratio:1.65;object-fit:cover;display:block;background:#dfe5d4}.filmtype{display:grid;place-content:center;text-align:center;background:#243328;color:#e6e9d8;font-family:serif;font-size:clamp(70px,9vw,130px)}.work h3{font-size:clamp(21px,2.5vw,36px);margin:13px 0 6px;letter-spacing:-.045em}.work p{margin:0 0 30px;font-size:14px}.filters{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 24px}.filters button{background:transparent;border:1px solid var(--line);border-radius:30px;padding:9px 18px}.filters button[aria-pressed=true]{background:var(--ink);color:var(--bg)}.work[hidden]{display:none}.topline{gap:14px}.about{min-height:auto}.about .tabs{margin-bottom:20px}.disc:before{content:'PHOTOGRAPHY · FILM · DESIGN'}.aboutcopy{max-width:560px}.service strong{font-family:inherit;font-size:clamp(22px,3vw,42px)}.service{grid-template-columns:1fr 1fr}.service span{font-size:14px;line-height:1.65}.contact{min-height:auto}.contact a{font-size:clamp(18px,4vw,44px)}.detail{max-width:1160px;margin:auto;padding:115px 6% 60px}.detail h1{font:500 clamp(37px,6vw,84px)/1.17 serif;letter-spacing:-.065em}.detail h2{font-size:24px;margin:38px 0 12px}.detail p,.detail li{line-height:1.85}.detail figure{margin:0}.detail img{display:block;max-width:100%;width:auto;max-height:80vh;margin:auto}.detail-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 18px;margin-top:18px}.detail-gallery img{width:100%;height:auto;max-height:none}.detail-gallery a{display:block}.detail .resource{display:inline-block;text-decoration:underline;text-underline-offset:4px}.detail .lead{font-size:19px}.detail .details-text{max-width:780px}.detail .back{display:inline-block;padding:13px 20px;border:1px solid var(--line);border-radius:40px;margin:25px 0}.disc-center small{font-size:10px}.work a:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid #a56b14;outline-offset:4px}.detail .nav{position:absolute}.detail-page,.detail-page a{cursor:auto}.detail-page a{cursor:pointer}@media(max-width:760px){.hero{grid-template-columns:1fr;padding:115px 7% 35px;gap:30px}.hero figure img{height:34vh;border-radius:130px 130px 0 0}.hero h1 br{display:none}.hero h1 span+span{margin-left:.13em}.hero h1{font-size:clamp(62px,14vw,104px)}.hero .hint{display:none}.work{min-height:0}.service{grid-template-columns:1fr;gap:6px}.service span:last-child{grid-column:auto}.detail-gallery{grid-template-columns:1fr}.discarea{min-height:320px}}@media(prefers-reduced-motion:reduce){.disc{animation:none}.reveal{opacity:1;transform:none}}
