:root{--bg: #f6f2ea;--paper: #faf8f4;--ink: #1a1a1a;--accent: #2d3a2e;--ink-soft: color-mix(in oklab, var(--ink) 82%, var(--bg));--muted: color-mix(in oklab, var(--ink) 50%, var(--bg));--rule: color-mix(in oklab, var(--ink) 14%, var(--bg));--accent-soft: color-mix(in oklab, var(--accent) 70%, var(--bg));--font-display: "Cormorant Garamond", "Times New Roman", serif;--font-body: "Archivo", "Helvetica Neue", sans-serif;--font-mono: "JetBrains Mono", "Courier New", monospace;--maxw: 1280px;--gutter: 48px;--perspective: 800px;--shadow-rest: 4px 8px 24px rgba(0,0,0,.1);--shadow-hover: 16px 32px 56px rgba(0,0,0,.22), 0 0 0 1px rgba(0,0,0,.04);--shadow-portrait: 20px 32px 64px rgba(0,0,0,.18), 8px 12px 24px rgba(0,0,0,.1);--tilt-transition: transform .12s ease-out, box-shadow .3s ease-out;--spring-out: transform .5s cubic-bezier(.16,1,.3,1), box-shadow .4s ease-out}[data-layout=classic]{--maxw: 1100px}[data-layout=bold]{--maxw: 1400px;--gutter: 32px}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;background:none;border:0;padding:0;color:inherit}.display{font-family:var(--font-display);font-weight:400;letter-spacing:-.02em;line-height:.95}.eyebrow{font-family:var(--font-body);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);font-weight:500}.dropcap{border-left:2px solid var(--accent);padding-left:16px}.hero-meta{display:flex;flex-wrap:wrap;gap:32px;padding-top:24px;border-top:1px solid var(--rule);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft)}.hero-meta strong{display:block;color:var(--ink);font-weight:500;font-size:13px;margin-top:2px}@media (max-width: 900px){.hero-meta{gap:18px}}section.block{max-width:var(--maxw);margin:0 auto;padding:100px var(--gutter)}.section-head{display:grid;grid-template-columns:1fr;gap:48px;align-items:end;margin-bottom:56px;padding-bottom:24px;border-bottom:1px solid var(--rule)}[data-layout=classic] .section-head{grid-template-columns:1fr;text-align:center}.section-head h2{font-family:var(--font-display);font-size:clamp(40px,5vw,72px);line-height:.95;letter-spacing:-.03em;font-weight:400;margin:0}.section-head h2 em{font-style:italic;color:var(--accent)}.section-head .lede{font-family:var(--font-display);font-style:italic;font-size:20px;color:var(--ink-soft);line-height:1.35;margin:0;max-width:520px}[data-layout=classic] .section-head .lede{margin-inline:auto}.section-head-num{font-family:var(--font-mono);font-size:11px;letter-spacing:.3em;color:var(--muted);margin-bottom:8px;display:block}@media (max-width: 900px){:root{--gutter: 24px}.section-head{grid-template-columns:1fr;gap:20px}section.block{padding:60px var(--gutter)}}@media print{[data-edit-mode]{display:none!important}}.tilt-shine{position:absolute;inset:0;pointer-events:none;z-index:5;border-radius:inherit;background:radial-gradient(circle at var(--shine-x, 50%) var(--shine-y, 50%),rgba(255,255,255,.14) 0%,transparent 60%);opacity:0;transition:opacity .3s}.tilt-active .tilt-shine{opacity:1}html{scroll-behavior:smooth}@keyframes pageEnter{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pageExit{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}.page-content{animation:pageEnter .45s cubic-bezier(.16,1,.3,1) both}.page-exiting{animation:pageExit .26s ease-in forwards;pointer-events:none}.reveal{opacity:0;transform:translateY(48px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);transition-delay:var(--reveal-delay, 0s)}.reveal.is-visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion: reduce){.work-card .frame,.hero-portrait{transition:none!important;will-change:auto}.modal{animation:fadeIn .25s ease-out!important}.modal-exit{animation:none!important;opacity:0}.tilt-shine{display:none}.reveal{opacity:1!important;transform:none!important;transition:none!important}.page-content,.page-exiting{animation:none}}.nav-cta.nav-cta--lg{font-size:15px;padding:14px 36px;letter-spacing:.15em}
