@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Libre+Caslon+Display&display=swap');

:root { color-scheme: dark; --ink:#151a1b; --paper:#f0ede4; --muted:#b5b9b4; --accent:#c8d4af; --line:#ffffff24; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:2rem; }
body { margin:0; background:radial-gradient(ellipse at 5% 20%,#26302c 0,transparent 55%),var(--ink); color:var(--paper); font:15px/1.65 'DM Sans',sans-serif; }
a { color:inherit; text-decoration:none; }
button,input,select,textarea { font:inherit; }
button,a,input,select,textarea { -webkit-tap-highlight-color:transparent; }
:focus-visible { outline:2px solid var(--accent); outline-offset:5px; }
.skip-link { position:absolute; top:-100px; left:20px; z-index:10; padding:12px; background:var(--paper); color:var(--ink); }
.skip-link:focus { top:10px; }
.masthead { margin:0 auto; max-width:1480px; padding:32px 5vw; display:flex; justify-content:space-between; align-items:center; }
.wordmark { font-size:30px; letter-spacing:.16em; line-height:1.2; }
.wordmark span { display:block; margin-top:10px; color:var(--muted); font-size:9px; letter-spacing:.17em; }
.contact-link { border-bottom:1px solid var(--line); padding:8px 0; font-size:13px; }
.contact-link span { margin-left:28px; color:var(--accent); }
.site-navigation { display:flex; align-items:center; gap:28px; font-size:12px; }
.site-navigation a { padding:8px 0; }
.site-navigation a:hover,.site-navigation a[aria-current="page"] { color:var(--accent); }
.site-navigation .contact-link span { margin-left:8px; }
.intro-actions { display:flex; flex-wrap:wrap; gap:0 28px; }
.intro-actions .text-link { gap:24px; }
main { max-width:1480px; margin:auto; }
.intro { position:relative; isolation:isolate; display:flex; min-height:760px; align-items:center; overflow:hidden; padding:60px 5vw 80px; }
.intro-copy { position:relative; z-index:2; width:47%; }
.home-artwork { position:absolute; z-index:-1; margin:0; inset:0 0 0 28%; mask-image:linear-gradient(to right,transparent 0%,#000 42%); }
.home-artwork img { width:100%; height:100%; object-fit:cover; object-position:60% 50%; }
.home-artwork::after { content:''; position:absolute; inset:0; background:linear-gradient(180deg,#151a1b15,transparent 30%,#151a1b 100%); }
.home-artwork figcaption { position:absolute; bottom:40px; right:5vw; z-index:1; color:var(--muted); font-size:9px; letter-spacing:.2em; }
.home-artwork figcaption span { margin:0 12px; }
.eyebrow { font-size:10px; letter-spacing:.19em; font-weight:500; color:var(--accent); }
.status-dot { display:inline-block; width:6px; height:6px; background:var(--accent); border-radius:50%; margin-right:9px; vertical-align:middle; }
h1,h2 { font-family:'Libre Caslon Display',Georgia,serif; font-weight:400; }
h1 { font-size:clamp(68px,7.8vw,120px); line-height:.98; letter-spacing:-.035em; margin:30px 0; }
em { font-weight:400; color:var(--accent); }
.lead { font-size:19px; max-width:30ch; line-height:1.55; }
.intro-note { max-width:40ch; color:var(--muted); font-size:14px; }
.text-link { display:inline-flex; align-items:center; gap:58px; border-bottom:1px solid var(--accent); padding:12px 0; margin-top:18px; color:var(--accent); }
.edition { font-size:9px; letter-spacing:.17em; color:var(--muted); margin-top:55px; }
.contact-section { display:grid; grid-template-columns:1fr 1fr; gap:6vw; border-top:1px solid var(--line); padding:70px 5vw 85px; }
.contact-copy h2 { font-size:clamp(52px,5.8vw,82px); line-height:1.03; letter-spacing:-.025em; margin:24px 0; }
.contact-copy>p { max-width:34ch; color:var(--muted); }
.contact-copy .privacy-note { font-size:11px; margin-top:32px; }
form { padding-top:12px; }
label { display:block; font-size:12px; margin-bottom:21px; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
input,select,textarea { display:block; width:100%; margin-top:8px; border:0; border-bottom:1px solid #ffffff40; border-radius:0; background:transparent; padding:10px 0; color:var(--paper); font-size:14px; }
input::placeholder,textarea::placeholder { color:#a4aaa4; opacity:1; }
select option { background:var(--ink); }
textarea { resize:vertical; min-height:100px; }
.send-button { width:100%; padding:15px 20px; display:flex; justify-content:space-between; border:1px solid var(--accent); color:var(--ink); background:var(--accent); cursor:pointer; }
.send-button:hover { background:#e0e8d1; }
.send-button:disabled { opacity:.6; cursor:default; }
.form-note { color:var(--muted); font-size:11px; }
.honeypot { display:none; }
footer { border-top:1px solid var(--line); padding:22px 5vw; display:flex; gap:20px; justify-content:space-between; align-items:center; font-size:10px; color:var(--muted); }
footer>span { color:var(--paper); letter-spacing:.18em; }
.intro-copy { animation:arrive .8s ease both; }
@keyframes arrive { from { opacity:0; transform:translateY(12px); } to { opacity:1; transform:translateY(0); } }
.thank-you { min-height:75vh; padding:10vh 8vw; }
.thank-you h1 { max-width:12ch; }
@media(max-width:1000px) and (min-width:641px) { .intro-copy { width:58%; }.home-artwork { left:20%; opacity:.65; } }
@media(max-width:640px) { .masthead { padding:25px 6vw; }.wordmark { font-size:24px; }.intro { display:flex; flex-direction:column; align-items:stretch; min-height:0; padding:25px 6vw 0; }.intro-copy { width:100%; }.home-artwork { position:relative; inset:auto; margin:12px -6vw 0; height:95vw; z-index:0; }.home-artwork img { object-position:62% 50%; mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 78%,transparent); }.home-artwork::after { background:linear-gradient(to bottom,#151a1b55,transparent 35%,#151a1b 100%); }.home-artwork figcaption { bottom:24px; right:6vw; } h1 { font-size:76px; }.edition { margin-top:30px; }.contact-section { grid-template-columns:1fr; padding:40px 6vw 50px; gap:20px; }.contact-copy h2 { font-size:60px; }.form-row { grid-template-columns:1fr; gap:0; } footer { flex-wrap:wrap; padding:20px 6vw; } footer p { margin:0; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { animation:none!important; transition:none!important; } }
@media(max-width:640px) { .masthead { flex-wrap:wrap; gap:20px; }.site-navigation { width:100%; justify-content:space-between; gap:20px; } }
@media(max-width:640px) { .home-artwork { mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 78%,transparent); }.home-artwork img { mask-image:none; } }
@media(max-width:1050px) { .masthead { flex-wrap:wrap; gap:18px; }.site-navigation { width:100%; justify-content:space-between; } }
@media(max-width:680px) { .masthead .site-navigation,.portfolio-page .masthead .site-navigation { display:grid; grid-template-columns:repeat(4,max-content); justify-content:space-between; gap:6px 12px; font-size:11px; } }
