@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;800&display=swap');
:root{color-scheme:dark;--bg:#111411;--surface:#191c18;--text:#f3f3eb;--muted:#a4aaa0;--accent:#dbe79c;--line:#34382f;--font:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 var(--font)}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:7px}button{border:0}img{display:block;width:100%;object-fit:cover}.wrap{max-width:1440px;margin:auto;padding-left:6%;padding-right:6%}.eyebrow{font-size:.75rem;letter-spacing:.2em;font-weight:600;color:var(--accent);margin:0 0 23px}.header{height:96px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;position:absolute;z-index:5;width:100%;border-bottom:1px solid #ffffff24}.brand{display:inline-flex;align-items:center;gap:12px;font-size:1.45rem;letter-spacing:-.06em;font-weight:700;white-space:nowrap}.brand span{color:var(--muted);margin-left:-10px}.brand svg{width:35px;height:30px;fill:none;stroke:var(--accent);stroke-width:1.7;stroke-linejoin:round}.header nav{display:flex;align-items:center;gap:38px;font-size:.875rem}.header nav a{transition:color .2s}.header nav a:hover{color:var(--accent)}.nav-feature{border:1px solid #ffffff60;padding:10px 20px;margin-left:8px}.menu-toggle{display:none}.hero{min-height:760px;height:92svh;max-height:1150px;position:relative;isolation:isolate;display:flex;align-items:center}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.hero-image{object-position:center 46%}.hero-shade{z-index:-1;background:linear-gradient(90deg,#0b100fbd 0%,#0c100e60 50%,#10141010 100%),linear-gradient(0deg,#111411 0%,#11141106 40%,#0c100f55 100%)}.hero-content{padding:115px 6% 100px;width:100%;max-width:1500px;margin:auto}.hero .eyebrow{display:flex;align-items:center;gap:16px;color:#e3e7d9}.line{width:35px;height:1px;background:var(--accent)}h1,h2,h3,p{overflow-wrap:break-word}h1{font-family:Manrope,Arial,sans-serif;font-size:clamp(3.8rem,6.5vw,7.6rem);font-weight:500;letter-spacing:-.065em;line-height:1.09;margin:27px 0}h1 em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.055em;color:var(--accent)}.hero-description{color:#d1d6cd;font-size:1.05rem;line-height:1.8;margin:27px 0 34px}.button{display:inline-block;background:var(--accent);color:#1b2116;padding:14px 25px;font-size:.875rem;font-weight:600;transition:background .2s,transform .2s}.button:hover{background:#edf5bc;transform:translateY(-2px)}.hero-bottom{position:absolute;bottom:36px;left:6%;right:6%;display:flex;align-items:center;gap:15px;font-size:.6875rem;letter-spacing:.16em;color:#c7cdbf}.vertical-line{height:29px;width:1px;background:#cbd1c0}.location{margin-left:auto;display:flex;gap:12px;align-items:center;letter-spacing:0;font-size:.8125rem}.location svg{width:17px;height:20px;stroke:var(--accent);fill:none;stroke-width:1.4}.location>span{color:#9ba694;font-size:.75rem;margin-left:12px}.intro{padding-top:65px;padding-bottom:65px;display:flex;align-items:center;justify-content:space-between;gap:35px;border-bottom:1px solid var(--line)}.intro .eyebrow{max-width:190px;margin:0;line-height:1.9}.intro>p:nth-child(2){font-size:clamp(1.1rem,1.8vw,1.6rem);font-weight:400;line-height:1.65;letter-spacing:-.035em;margin:0}.intro>p span{color:var(--muted)}.section-index{font-size:.75rem;color:var(--muted);white-space:nowrap}.portfolio{padding-top:100px;padding-bottom:100px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:42px}.section-heading .eyebrow{margin-bottom:12px}h2{font-family:Manrope,Arial,sans-serif;font-size:clamp(1.8rem,3vw,2.75rem);line-height:1.25;letter-spacing:-.05em;font-weight:500;margin:0}.filters{display:flex;gap:8px;flex-wrap:wrap}.filters button{background:none;border:1px solid transparent;color:var(--muted);padding:8px 15px;font-size:.875rem}.filters button.active{color:var(--accent);border-color:#657043;border-radius:3px}.filters button:hover{color:var(--text)}.gallery{display:grid;grid-template-columns:1.15fr 1fr;gap:50px 34px;align-items:start}.photo-card{text-align:left;background:transparent;padding:0;min-width:0}.photo-card:nth-child(2){margin-top:70px}.photo-card:nth-child(4){margin-top:0}.photo-frame{position:relative;overflow:hidden;background:var(--surface);aspect-ratio:1.35}.photo-card:nth-child(2) .photo-frame,.photo-card:nth-child(3) .photo-frame{aspect-ratio:1.14}.photo-frame img{height:100%;transition:transform .7s,filter .7s;filter:saturate(.76)}.photo-card:hover img{transform:scale(1.035);filter:saturate(1)}.photo-open{position:absolute;inset:auto 20px 20px;display:flex;align-items:center;justify-content:space-between;text-shadow:0 1px 9px #000;font-size:.8rem;opacity:0;transition:opacity .2s}.photo-open>span{font-size:1.7rem}.photo-card:hover .photo-open,.photo-card:focus-visible .photo-open{opacity:1}.photo-caption{padding-top:20px;display:flex;justify-content:space-between;align-items:center}.photo-caption strong{font-size:1.125rem;font-weight:450;display:block;letter-spacing:-.02em}.photo-caption small{display:block;font-size:.6875rem;letter-spacing:.15em;color:var(--muted);margin-top:6px}.photo-number{font-size:.75rem;color:#818977}.photo-card[hidden]{display:none}.gallery.filtered{grid-template-columns:1fr 1fr}.gallery.filtered .photo-card{margin:0}.gallery.filtered .photo-frame{aspect-ratio:1.35}.journeys{background:var(--surface);padding:85px 0 95px}.section-aside{font-size:.875rem;color:var(--muted);margin:0}.journey{border-top:1px solid #3b4035}.journey:last-child{border-bottom:1px solid #3b4035}.journey summary{display:flex;align-items:center;gap:32px;padding:30px 0;cursor:pointer;list-style:none}.journey summary::-webkit-details-marker{display:none}.journey-index{font-size:.75rem;color:var(--accent)}.journey-title{font-size:1.65rem;letter-spacing:-.035em;flex:1}.journey-title small{display:inline-block;font-size:.9375rem;letter-spacing:0;color:var(--muted);margin-left:30px}.journey-tag{font-size:.6875rem;letter-spacing:.1em;color:var(--muted)}.expand{font-size:1.75rem;font-weight:400;color:var(--accent);width:32px;text-align:center;transition:transform .25s}.journey[open] .expand{transform:rotate(45deg)}.journey-body{max-width:740px;padding:0 0 32px 48px;color:#c5cbbd}.journey-body p:first-child{margin-top:0}.text-button{display:inline-block;background:none;padding:0 0 5px;border-bottom:1px solid #707a56;color:var(--accent);font-size:.9375rem}.about{padding-top:105px;padding-bottom:110px;display:grid;grid-template-columns:1fr 1fr;gap:80px}.about h2{font-size:clamp(2.25rem,3.7vw,3.7rem);line-height:1.3}.about h2 em{font-family:Georgia,serif;color:var(--accent);font-weight:400}.about-copy{padding-top:25px;color:#c5cbbd;max-width:480px}.about-copy p{margin-top:0;margin-bottom:23px}.footer{border-top:1px solid var(--line);display:flex;align-items:center;gap:30px;min-height:110px;font-size:.75rem;color:var(--muted)}.footer .brand{font-size:1.2rem;color:var(--text);margin-right:15px}.footer p{flex:1}.footer button{background:none;color:var(--muted);padding:8px 0;font-size:.75rem}.footer button:hover{color:var(--accent)}dialog{border:1px solid #424a38;background:#111411;color:var(--text);padding:0;max-height:95svh}dialog::backdrop{background:#040704eF;backdrop-filter:blur(8px)}body.modal-open{overflow:hidden}.lightbox{width:min(1250px,94vw);overflow:hidden}.dialog-close{position:absolute;right:12px;top:12px;z-index:2;width:44px;height:44px;border-radius:50%;background:#111411cF;font-size:1.9rem;line-height:1}.lightbox-image{height:min(72svh,850px);display:flex;align-items:center;justify-content:center}.lightbox-image img{width:100%;height:100%;object-fit:contain}.lightbox-bottom{padding:20px;display:flex;gap:24px;align-items:center}.lightbox-bottom h2{font-size:1.2rem}.lightbox-bottom p{margin:4px 0 0;color:var(--muted);font-size:.75rem}.lightbox-bottom>button{background:var(--surface);width:44px;height:44px;font-size:2rem;flex-shrink:0}.lightbox-bottom>span{margin-left:auto;font-size:.8rem;color:var(--muted)}.credits{width:min(580px,92vw);padding:50px 35px;line-height:1.7}.credits>p{color:var(--muted)}.credits li{margin:8px 0}.credits li a{text-decoration:underline;text-underline-offset:4px}.credits ul{padding-left:20px}.skip-link{position:fixed;top:-80px;left:10px;z-index:20;background:var(--accent);color:#111;padding:10px}.skip-link:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(min-width:1600px){.hero-content{padding-left:85px}.hero-bottom{left:calc((100vw - 1330px)/2);right:calc((100vw - 1330px)/2)}}
@media(max-width:900px){.header{height:80px}.header nav{gap:23px}.nav-feature{display:none}.hero{height:85svh;min-height:690px}.hero-content{padding-top:140px}h1{font-size:5rem}.intro{gap:30px}.section-index{display:none}.section-heading{align-items:flex-start;flex-direction:column}.gallery{gap:35px 22px}.journey-title small{display:block;margin:3px 0 0}.about{gap:40px}.location>span{display:none}}
@media(max-width:600px){.wrap{padding-left:6%;padding-right:6%}.header{height:76px;padding:0 6%}.brand{font-size:1.25rem}.brand svg{width:28px}.menu-toggle{display:flex;align-items:center;gap:12px;background:none;font-size:.875rem;padding:12px 0}.menu-toggle span{font-size:1.3rem}.header nav{display:none;position:absolute;top:76px;left:0;right:0;padding:24px 6%;background:#111411f7;border-bottom:1px solid var(--line);align-items:flex-start}.header nav.open{display:flex;flex-direction:column;gap:20px}.hero{height:90svh;min-height:680px;max-height:950px}.hero-image{object-position:61% center}.hero-shade{background:linear-gradient(0deg,#111411 0%,#11141130 62%,#11141166),linear-gradient(90deg,#11141175,#11141105)}.hero-content{padding:95px 6% 90px}h1{font-size:clamp(3.3rem,11.5vw,4.6rem);line-height:1.14;margin:25px 0}.hero .eyebrow{font-size:.625rem;letter-spacing:.17em}.hero-description{font-size:1rem}.hero-bottom{bottom:27px;gap:9px}.hero-bottom>span:nth-child(2){font-size:.5625rem;letter-spacing:.11em}.location{font-size:.6875rem;gap:5px}.location svg{width:13px}.intro{padding-top:40px;padding-bottom:40px;display:block}.intro .eyebrow{max-width:none;margin-bottom:16px;font-size:.625rem}.intro>p:nth-child(2){font-size:1.2rem}.portfolio{padding-top:60px;padding-bottom:60px}.section-heading{gap:22px;margin-bottom:30px}h2{font-size:1.9rem}.eyebrow{font-size:.625rem}.filters{gap:3px}.filters button{padding:7px 12px}.gallery,.gallery.filtered{grid-template-columns:1fr;gap:30px}.photo-card:nth-child(2){margin:0}.photo-frame,.photo-card:nth-child(2) .photo-frame,.photo-card:nth-child(3) .photo-frame{aspect-ratio:1.3}.photo-open{opacity:1}.photo-caption{padding-top:13px}.photo-caption strong{font-size:1.05rem}.journeys{padding:60px 0}.section-aside{display:none}.journey summary{gap:15px;padding:23px 0}.journey-title{font-size:1.45rem}.journey-title small{font-size:.8125rem}.journey-tag{display:none}.journey-body{padding-left:27px;font-size:.9375rem}.about{padding-top:65px;padding-bottom:65px;grid-template-columns:1fr;gap:15px}.about h2{font-size:2.7rem}.about-copy{padding-top:5px}.footer{padding-top:25px;padding-bottom:25px;flex-wrap:wrap;gap:12px 24px}.footer p{flex-basis:100%;order:3;margin:0}.footer .brand{margin-right:auto}.footer>span{display:none}.lightbox-bottom{gap:12px;padding:15px 10px}.lightbox-bottom h2{font-size:1rem}.lightbox-bottom>span{display:none}.lightbox-bottom>div{flex:1}.lightbox-image{height:65svh}.credits{padding:55px 25px 30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
