@font-face{font-family:'Manrope';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/manrope-400.ttf') format('truetype')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/manrope-600.ttf') format('truetype')}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/space-grotesk-400.ttf') format('truetype')}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/space-grotesk-500.ttf') format('truetype')}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/space-grotesk-600.ttf') format('truetype')}

:root{--accent:#c9b080;--ink:#e9e8e4;--muted:#aaa9a5;--atelier-soft:#aaa9a5;--atelier-rule:#ffffff21;--line:#ffffff21;--gold-line:#c9b08042;--display:'Space Grotesk',Arial,sans-serif;--body:'Manrope',Arial,sans-serif}
body{font-family:var(--body);font-weight:400;color:var(--ink);-webkit-font-smoothing:antialiased}
button{font-family:inherit}
h1,h2,h3,em,.brand-name,.wordmark,.nav-text,.caption h3{font-family:var(--display);font-style:normal;font-synthesis:none}
h1,h2,h3{font-weight:400}
em{font-weight:500;letter-spacing:-.045em}
::selection{background:#c9b080;color:#10100f}
.brand-name,.wordmark,.navigation-bottom>span:first-child{color:var(--ink);font-weight:500;letter-spacing:-.055em}
.brand-mark{background-color:#d6d6cf}
.header-note,.hero-top .eyebrow{color:#b8ae99;letter-spacing:.16em}
.hero-top .eyebrow,.hero-top .edition{font-size:12px}
.hero-sticky{background:radial-gradient(ellipse at 53% 35%,#10100f 0%,#030303 38%,#000 72%)}
.hero-copy h1.legacy-headline{font-family:var(--display);font-weight:400;font-size:clamp(42px,4.7vw,76px);line-height:1.08;letter-spacing:-.052em}
.hero-copy h1.legacy-headline em{font-size:1em;color:var(--accent);font-weight:500;margin-top:.13em;letter-spacing:-.055em}
.hero-copy h1.legacy-headline em,.closing h2 em{background:none;color:#d0b98f;-webkit-text-fill-color:currentColor}
.swarm-trigger{min-height:64px;min-width:285px;padding:13px 23px;border:1px solid #c9b08060;border-radius:4px;gap:24px;color:#e8e4dc;letter-spacing:.03em;font-size:15px;background:#070706}
.swarm-trigger:hover:not(:disabled){border-color:#c9b080b0;background:#100e0b;box-shadow:0 12px 35px #0008}
.swarm-trigger:disabled{opacity:.65}
.swarm-star{width:25px;height:25px;flex-basis:25px}
.swarm-description{color:#8d8981;font-size:10px;letter-spacing:.13em}
.scene-actions button{color:#aaa7a1;border-color:#ffffff30}
.orbit-label{color:#8e8d87}.orbit-label:before{opacity:.6}
.eyebrow,.note-number,.nav-number,.section-index span:last-child{color:var(--accent)}

/* A pale opening chapter gives the dark photographic sections room to breathe. */
.intro.section{position:relative;padding:125px 6% 135px;background:#e6e4de;color:#171716;overflow:hidden}
.intro .eyebrow{color:#665a42;font-size:12px}
.intro h2{font-family:var(--display);font-size:clamp(42px,5.4vw,84px);line-height:1.07;letter-spacing:-.055em}
.intro h2 em{color:#7d6949;font-weight:400}
.intro-bottom{margin-top:52px;gap:40px}.intro-bottom p{color:#57564f;font-size:16px}
.intro .intro-mark{background:#64573f;width:78px;height:70px}
.chapter-rule{position:absolute;left:6%;right:6%;bottom:0;height:1px;background:#22222224;overflow:hidden}
.chapter-rule:after{content:'';position:absolute;inset:0 auto 0 0;width:32%;background:linear-gradient(90deg,transparent,#b39762,transparent);transform:translateX(-110%)}
.intro.is-in-view .chapter-rule:after{animation:rule-travel 9s linear infinite}
@keyframes rule-travel{to{transform:translateX(420%)}}

.sketch-section{padding:135px 6% 145px;min-height:820px;background:#020202;grid-template-columns:1.3fr 1fr;border-bottom:1px solid var(--atelier-rule)}
.sketch-art{position:relative;height:580px;mask-image:radial-gradient(ellipse 65% 65%,#000 42%,transparent 90%)}
.sketch-art img{filter:saturate(.18);transform:translateY(var(--art-y,0px)) rotate(var(--art-angle,0deg)) scale(1.05);transition:filter 1s}
.sketch-copy h2{font-family:var(--display);font-size:clamp(48px,5.6vw,88px);line-height:1.04;font-weight:400;letter-spacing:-.06em}
.sketch-copy h2 em{font-weight:400;color:#8b8c87;padding-top:.13em}
.sketch-copy p{font-size:16px;color:#aaa9a5}
.sketch-caption{flex-direction:row;gap:20px;color:#b6a687;font-size:11px;letter-spacing:.1em}
.section-index{color:#aaa9a5;border-color:var(--gold-line);font-size:11px}
.sketch-copy .eyebrow{font-size:11px;color:#b6a687}
.sketch-art-label{position:absolute;left:19%;bottom:10%;font-size:11px;letter-spacing:.15em;color:#aba392;z-index:1}

.work.section{background:#030303;padding:120px 6% 140px}
.work .section-head h2{font-size:clamp(54px,6.5vw,100px);font-family:var(--display);letter-spacing:-.06em}
.work h2 em{color:#a5a5a0;font-weight:400}
.gallery-note{font-size:15px;color:#92938e}
.gallery .image-wrap{box-shadow:none;border:1px solid #ffffff12}
.gallery .caption h3{font-family:var(--display);font-size:clamp(25px,2.2vw,34px);line-height:1.12;letter-spacing:-.045em;font-weight:400}
.gallery .caption>span{font-size:10px;letter-spacing:.1em;color:#a89b83}
.gallery .caption{border-color:var(--gold-line);align-items:baseline}
.gallery .art-card p{font-size:14px;color:#94958f}
.gallery .view-icon{width:44px;height:44px;border-color:#e6ddd066;background:#0909089c}
.gallery .art-card:hover .view-icon{background:#d6c3a0;color:#111}
.gallery .image-wrap:after{content:'';position:absolute;inset:0;border:1px solid #eee5d600;pointer-events:none;transition:border-color .7s}
.gallery .art-card:hover .image-wrap:after{border-color:#eee5d652}

.material.section{padding:120px 6% 130px;background:#070707}
.material-heading{grid-template-columns:1fr 2fr;gap:50px;margin-bottom:65px}
.material-heading h2{font-family:var(--display);font-size:clamp(39px,4.6vw,72px);line-height:1.09;letter-spacing:-.05em}
.material-heading h2 em{color:#999b95;font-weight:400}
.material-layout{grid-template-columns:1.06fr 1fr;gap:9%}
.material-visual{isolation:isolate}
.material-visual img{aspect-ratio:1.07;transition:opacity .48s ease,filter .9s;will-change:transform;filter:none}
.material-visual.is-changing img{opacity:0}
.material-visual:after{content:'';position:absolute;inset:12px;border:1px solid #f3e7ce30;pointer-events:none}
.material-visual figcaption{font-family:var(--display);font-size:11px;letter-spacing:.1em}
.notes summary{font-family:var(--display);font-size:clamp(23px,2.1vw,31px);font-weight:400;letter-spacing:-.035em;padding:32px 0}
.notes details{border-color:#ffffff24}
.notes details[open] summary{color:#e8e4da}
.notes details[open] .note-number{color:#dac5a2}
.notes details p{color:#999b95;font-size:16px;line-height:1.9}
.notes details:before{background:linear-gradient(90deg,#c9b080,transparent)}


.closing{padding:75px 6% 80px;border-top:1px solid var(--gold-line);background:#000}
.closing .eyebrow{color:#aea593;font-size:11px}
.closing-bee{background:#b7b9b2;width:92px;height:70px}
.closing h2{max-width:21ch;font-family:var(--display);font-size:clamp(48px,6.1vw,94px);font-weight:400;line-height:1.09;letter-spacing:-.055em;margin:70px 0 75px;text-wrap:balance}
.closing h2 span{display:inline}
.closing h2 em{display:block;margin-left:0;padding-top:.16em;font-size:1em;font-weight:500;white-space:normal;letter-spacing:-.06em}
.closing-bottom{align-items:center;border-color:var(--gold-line)}
.closing-bottom>span{color:#95948c;font-size:11px}
.closing .line-link{font-size:14px;border-color:#c9b08060}
footer .wordmark{font-family:var(--display);font-size:25px;color:#e5e4de;letter-spacing:-.05em;font-weight:500}
footer .wordmark span{font-family:var(--body);color:#aaa08c;font-size:9px;letter-spacing:.14em}
footer p{color:#90928b}
footer>a:last-child{color:#d2ccbf}
.navigation-bee{background:#c8b58d}
.nav-text{font-weight:400;font-family:var(--display);letter-spacing:-.055em}
.nav-arrow{color:#a9a69c}
#artwork-dialog .modal-content h2{font-family:var(--display);font-weight:400;letter-spacing:-.05em;line-height:1.08}
#artwork-dialog .modal-content .eyebrow{color:#baa987}
#artwork-dialog .modal-content p{color:#a9aaa4}
.js .reveal{opacity:1;visibility:visible;transition:transform 1.25s var(--atelier-ease);transform:translateY(16px)}
.js .reveal.visible{transform:none}
.js h2.reveal,.js h2.reveal.visible{clip-path:none;transition:transform 1.2s var(--atelier-ease)}
.mobile-nav a{opacity:1;visibility:visible}

@media(min-width:1200px){.gallery{grid-template-columns:1.12fr 1fr}.detail-cards{padding-top:100px}.material-visual{position:sticky;top:120px}}
@media(max-width:1050px){
 .hero-copy h1.legacy-headline{font-size:clamp(40px,5.7vw,60px)}
 .sketch-section{min-height:730px;grid-template-columns:1.1fr 1fr;padding-top:125px;padding-bottom:100px}.sketch-art{height:490px}
 .sketch-copy h2{font-size:clamp(42px,5.4vw,64px)}.sketch-caption{flex-wrap:wrap;gap:15px}
 .material-heading{grid-template-columns:1fr;gap:30px}.material-layout{gap:6%}.notes summary{font-size:24px}
}
@media(max-width:700px){
 .intro.section{padding:80px 6% 90px}.intro h2{font-size:clamp(38px,8.5vw,58px)}.intro-bottom{margin-top:35px;gap:25px}
 .sketch-section{padding:115px 6% 85px;display:flex;min-height:0}.sketch-art{height:auto;aspect-ratio:1.13}.sketch-art-label{font-size:9px;bottom:4%}
 .sketch-copy h2{font-size:clamp(46px,10.3vw,70px)}.sketch-caption{margin-top:35px;font-size:10px}
 .work.section,.material.section{padding:80px 6% 90px}.work .section-head h2{font-size:clamp(45px,10vw,67px)}
 .gallery .caption h3{font-size:29px}.gallery .caption>span{font-size:9px}
 .material-heading h2{font-size:clamp(36px,8vw,56px)}.material-layout{grid-template-columns:1fr;gap:35px}.material-visual img{aspect-ratio:1.08}
 .notes summary{font-size:25px;padding:27px 0}.notes details p{font-size:15px}
 .closing{padding:45px 6% 55px}.closing h2{font-size:clamp(39px,8.8vw,62px);max-width:21ch;margin:48px 0;line-height:1.12;letter-spacing:-.055em}
 .closing h2 em{padding-top:.3em}.closing-bottom>span{font-size:10px}.closing .line-link{font-size:13px;gap:16px}
 footer .wordmark{font-size:22px}
}
@media(max-width:640px){
 .hero-copy h1.legacy-headline{font-size:clamp(29px,8.1vw,50px);line-height:1.12;letter-spacing:-.055em}
 .hero-copy{bottom:232px}.hero-copy h1.legacy-headline em{font-size:1em;margin-top:.18em}
 .hero-top .eyebrow{font-size:10px}.swarm-trigger{width:100%;min-width:0;min-height:59px;justify-content:center;font-size:14px;gap:25px}
 .swarm-description{font-size:9px}.intro .intro-mark{display:none}.brand-name{font-family:var(--display)}
}
@media(prefers-reduced-motion:reduce){
 .intro .chapter-rule:after{animation:none}
 .js h2.reveal{clip-path:none!important;transition:none!important}
 .sketch-art img,.material-visual img{transform:none!important;transition:none!important}
 .material-visual.is-changing img{opacity:1}
}
/* Direct portfolio contact, consistent across footer and mobile navigation. */
.instagram-contact{display:inline-flex;align-items:center;gap:10px;min-height:44px;flex-shrink:0;color:var(--accent);font-size:14px;letter-spacing:.03em;white-space:nowrap;text-decoration:none;transition:color .25s ease}
.instagram-contact:hover{color:#f0dfbf}
.instagram-contact .ui-icon{width:20px;height:20px;flex-shrink:0}
.navigation-bottom .instagram-contact{flex-basis:100%;padding-top:12px;border-top:1px solid rgba(201,176,128,.2)}
