:root {
  --inner-ink: #151515;
  --inner-paper: #f3f0e8;
  --inner-muted: #77736b;
  --inner-line: rgba(21,21,21,.16);
  --inner-soft: #e8e2d7;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body.inner-page { margin: 0; color: var(--inner-ink); background: var(--inner-paper); font-family: Arial, "Helvetica Neue", "Noto Sans SC", sans-serif; -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
button { color: inherit; font: inherit; }
.inner-header { position: sticky; z-index: 50; top: 0; height: 82px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; padding: 0 3.2vw; background: rgba(243,240,232,.94); backdrop-filter: blur(16px); }
.inner-header .menu-button { justify-self: start; display: flex; align-items: center; gap: 14px; border: 0; background: transparent; cursor: pointer; font-size: 11px; letter-spacing: .1em; }
.inner-header .wordmark { font-size: clamp(1rem,1.45vw,1.6rem); letter-spacing: .17em; font-weight: 700; }
.inner-nav { justify-self: end; display: flex; align-items: center; gap: clamp(18px,2vw,34px); }
.inner-nav a,.inner-nav button { position: relative; padding: 12px 0; border: 0; background: transparent; font-size: 11px; letter-spacing: .08em; cursor: pointer; }
.inner-nav a::after,.inner-nav button::after { content:""; position:absolute; right:0; bottom:6px; left:0; height:1px; background:currentColor; transform:scaleX(0); transform-origin:right; transition:transform .35s; }
.inner-nav a:hover::after,.inner-nav button:hover::after { transform:scaleX(1); transform-origin:left; }
.menu-lines { width:20px; display:grid; gap:5px; }.menu-lines i { display:block; width:100%; height:1px; background:currentColor; }.menu-lines i:last-child { width:70%; }
.menu-panel { position:fixed; z-index:210; inset:0 auto 0 0; width:min(560px,90vw); padding:34px 44px 48px; color:#ecebe7; background:#111214; transform:translateX(-102%); transition:transform .8s cubic-bezier(.22,1,.36,1); display:flex; flex-direction:column; }
.menu-panel.is-open { transform:translateX(0); }.menu-panel__top { display:flex; justify-content:space-between; align-items:center; letter-spacing:.16em; font-weight:700; }.menu-panel__top button { border:0; background:transparent; color:inherit; font-size:36px; font-weight:200; cursor:pointer; }.menu-panel nav { display:grid; margin:auto 0; }.menu-panel nav a { display:flex; gap:20px; align-items:baseline; padding:14px 0; border-bottom:1px solid rgba(255,255,255,.14); }.menu-panel nav span { width:28px; flex:0 0 28px; color:#777; font-size:9px; }.menu-panel nav b { font-size:clamp(1.35rem,2.6vw,2.45rem); line-height:1.12; font-weight:400; letter-spacing:-.025em; }.menu-panel p { color:#8f8f8d; max-width:310px; line-height:1.7; }.menu-backdrop { position:fixed; z-index:200; inset:0; opacity:0; pointer-events:none; background:rgba(0,0,0,.48); transition:opacity .5s; }.menu-backdrop.is-open { opacity:1; pointer-events:auto; }body.menu-open { overflow:hidden; }
.inner-hero { min-height: 56svh; display:grid; align-content:end; padding:clamp(80px,10vw,150px) clamp(24px,7vw,130px) clamp(70px,8vw,120px); border-bottom:1px solid var(--inner-line); }
.inner-kicker { margin:0 0 22px; color:var(--inner-muted); font-size:10px; letter-spacing:.22em; text-transform:uppercase; }
.inner-hero h1 { margin:0; max-width:1120px; font-size:clamp(3.2rem,7vw,8rem); line-height:.92; letter-spacing:-.065em; font-weight:400; }
.inner-lead { width:min(580px,100%); margin:34px 0 0 auto; color:#555149; font-size:clamp(15px,1.35vw,20px); line-height:1.7; }
.filter-bar { position:sticky; z-index:20; top:82px; display:flex; gap:8px; overflow:auto; padding:18px clamp(20px,4vw,60px); border-bottom:1px solid var(--inner-line); background:rgba(243,240,232,.96); scrollbar-width:none; }
.filter-bar::-webkit-scrollbar { display:none; }.filter-button { flex:0 0 auto; padding:10px 15px; border:1px solid transparent; background:transparent; cursor:pointer; font-size:10px; letter-spacing:.1em; }.filter-button.is-active,.filter-button:hover { border-color:var(--inner-ink); }
.collection { padding:clamp(70px,8vw,130px) clamp(20px,5vw,84px); }.collection-head { display:flex; justify-content:space-between; align-items:end; gap:24px; margin-bottom:42px; }.collection-head h2 { margin:0; font-size:clamp(2rem,4vw,4.5rem); line-height:1; letter-spacing:-.055em; font-weight:400; }.collection-head p { max-width:420px; margin:0; color:var(--inner-muted); font-size:13px; line-height:1.65; }
.content-grid { display:grid; grid-template-columns:repeat(12,1fr); gap:clamp(18px,2vw,34px); }.content-card { grid-column:span 4; display:block; border-top:1px solid var(--inner-line); padding-top:12px; }.content-card--wide { grid-column:span 8; }.content-card__media { position:relative; overflow:hidden; aspect-ratio:16/10; background:#ddd6c9; }.content-card--wide .content-card__media { aspect-ratio:16/8.6; }.content-card__media::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(0,0,0,.18),transparent 48%); }.content-card__media img { width:100%; height:100%; display:block; object-fit:cover; transition:transform 1s cubic-bezier(.22,1,.36,1); }.content-card:hover img { transform:scale(1.035); }.placeholder-art { width:100%; height:100%; display:grid; place-content:center; color:#807a70; background:linear-gradient(135deg,#e9e4da,#cfc7b9); text-align:center; }.placeholder-art b { font-size:clamp(2rem,5vw,5rem); font-weight:400; letter-spacing:-.05em; opacity:.45; }.placeholder-art span { font-size:9px; letter-spacing:.2em; }.content-card__meta { display:flex; justify-content:space-between; gap:16px; padding:14px 0 8px; color:var(--inner-muted); font-size:9px; letter-spacing:.13em; text-transform:uppercase; }.content-card h3 { margin:5px 0 8px; font-size:clamp(1.25rem,2.1vw,2.25rem); line-height:1.12; letter-spacing:-.035em; font-weight:400; }.content-card p { margin:0; color:#68645d; font-size:13px; line-height:1.65; }.card-action { display:inline-block; margin-top:18px; padding-bottom:4px; border-bottom:1px solid currentColor; font-size:10px; letter-spacing:.1em; }
.page-callout { margin-top:clamp(80px,10vw,160px); padding:clamp(60px,8vw,120px); color:#f3f0e8; background:#151515; }.page-callout p { margin:0 0 20px; color:#aaa59c; font-size:10px; letter-spacing:.2em; }.page-callout h2 { margin:0; max-width:900px; font-size:clamp(2.4rem,5vw,6rem); line-height:1; letter-spacing:-.055em; font-weight:400; }
.inner-footer { padding:65px 4vw 38px; color:#e5e4df; background:#0d0e10; }.inner-footer__mark { display:block; font-size:clamp(3rem,10vw,10rem); line-height:.85; letter-spacing:-.055em; font-weight:600; }.inner-footer__meta { display:flex; justify-content:space-between; gap:24px; margin-top:64px; padding-top:20px; border-top:1px solid rgba(255,255,255,.2); font-size:10px; letter-spacing:.12em; }.inner-footer button { border:0; color:inherit; background:transparent; cursor:pointer; }
.reveal { opacity:0; transform:translateY(24px); transition:opacity .85s cubic-bezier(.22,1,.36,1),transform .85s cubic-bezier(.22,1,.36,1); }.reveal.is-visible { opacity:1; transform:none; }
@media(max-width:820px){.inner-header{height:72px;padding:0 20px}.inner-nav a{display:none}.inner-nav{gap:12px}.inner-nav button{font-size:9px}.inner-header .menu-button>span:last-child{display:none}.inner-header .wordmark{font-size:15px}.menu-panel{padding:28px}.menu-panel nav a{gap:14px;padding:13px 0}.menu-panel nav b{font-size:clamp(1.35rem,7vw,2rem)}.inner-hero{min-height:48svh;padding:90px 24px 64px}.inner-hero h1{font-size:clamp(3rem,16vw,5.2rem)}.inner-lead{margin-top:30px}.filter-bar{top:72px}.collection{padding:70px 20px}.collection-head{display:block}.collection-head p{margin-top:18px}.content-card,.content-card--wide{grid-column:span 12}.content-card__media,.content-card--wide .content-card__media{aspect-ratio:16/10}.page-callout{padding:70px 24px}.inner-footer__meta{flex-direction:column}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
