/* Approved photographic hero and artist section. */
:root { --paper: #f3f0e8; --red: #d8221b; scroll-padding-top: 104px; }
.site-header { position: fixed; inset: 0 0 auto; width: 100%; background: transparent; border: 0; color: var(--paper); transition: background .2s ease; }
.site-header.is-scrolled, .site-header.menu-open { background: rgba(8,8,8,.96); }
.header-inner { height: 106px; gap: 28px; }
.brand, .brand img { width: 68px; }
.brand img { mix-blend-mode: normal; }
.main-nav { gap: 26px; margin-right: 26px; font-size: 13px; }
.main-nav a { white-space: nowrap; }
.main-nav a:nth-child(2) { display: flex; }
.language-switch { font-size: 12px; }
.language-switch button { color: #b8b6b0; }
.language-switch button[aria-pressed='true'] { color: var(--paper); }
.hero { min-height: clamp(690px,95svh,820px); position: relative; overflow: hidden; isolation: isolate; }
.hero-media { position: absolute; inset: -64px 0; z-index: -2; transform: translate3d(0,var(--hero-shift,0px),0); }
.hero-media picture { display: block; width: 100%; height: 100%; }
.hero-media img { width: 100%; height: 100%; max-width: none; object-fit: contain; object-position: right bottom; filter: blur(1.1px); }
.hero::before { content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: linear-gradient(180deg,#080808 0%,transparent 21%),linear-gradient(90deg,rgba(8,8,8,.12),transparent 70%),linear-gradient(0deg,rgba(8,8,8,.24),transparent 28%); }
.hero-grid { display: grid; grid-template-columns: minmax(0,1fr); grid-template-rows: 1fr auto; gap: 48px; min-height: inherit; padding-top: clamp(170px,24svh,236px); padding-bottom: 35px; align-items: stretch; }
.hero-copy { display: block; width: 78%; padding-top: 0; align-self: center; }
.hero .eyebrow { justify-content: flex-start; font-size: 12px; gap: 7px; color: var(--paper); letter-spacing: .09em; flex-wrap: wrap; }
.hero .eyebrow-place { display: inline; color: inherit; font-size: inherit; letter-spacing: inherit; margin-left: 0; }
.hero h1 { font-size: clamp(76px,8.3vw,120px); margin-top: 29px; margin-left: -5px; line-height: .94; letter-spacing: -.06em; }
.hero-description { margin-top: 24px; font-size: 16px; line-height: 1.6; color: var(--paper); }
.hero-actions { flex-direction: row; gap: 30px; margin-top: 28px; align-items: center; }
.hero-actions .button { font-size: 14px; min-height: 54px; padding: 16px 24px; }
.hero-work-link { padding-block: 8px; font-size: 13px; color: var(--paper); text-decoration: underline; text-underline-offset: 6px; }
.hero-work-link > span:last-child { display: inline; }
.hero-footnote { display: flex; width: 100%; align-items: center; margin-top: 0; padding-top: 0; text-transform: uppercase; color: #d4d3ce; font-size: 10px; letter-spacing: .04em; }
.is-de .hero h1 { font-size: clamp(64px,6.6vw,96px); }
.artist { display: block; padding: 0; background: var(--paper); }
.artist::before { display: none; }
.artist-scene { position: relative; min-height: 650px; overflow: hidden; isolation: isolate; color: var(--paper); background: #303030; }
.artist-background { position: absolute; inset: -24px 0; z-index: -2; }
.artist-background img { width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: 50% 50%; filter: grayscale(1) brightness(.9); }
.artist-scene::before { content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: linear-gradient(90deg,rgba(8,8,8,.76) 0%,rgba(8,8,8,.60) 30%,rgba(8,8,8,.15) 57%,rgba(8,8,8,.1) 100%); }
.artist-scene-inner { min-height: inherit; padding-top: 72px; padding-bottom: 72px; display: flex; align-items: center; }
.artist-intro { padding-top: 0; width: 39%; max-width: 480px; min-width: 0; }
.artist-intro .section-label { font-size: 11px; color: var(--paper); letter-spacing: .085em; }
.artist-intro h2 { font-size: clamp(36px,4.5vw,65px); line-height: 1.01; letter-spacing: -.055em; margin-top: 24px; }
.artist-intro h2 > span { display: block; }
.artist-scene-copy { margin-top: 23px; }
.artist-bio, .artist-statement { font-size: 14px; line-height: 1.7; color: var(--paper); }
.artist-statement { margin-top: 14px; }
.artist-style-line { margin-top: 22px; font-size: 10px; line-height: 1.8; text-transform: uppercase; letter-spacing: .055em; }
.artist-details { padding-top: 32px; padding-bottom: 35px; }
.artist-approach { border: 0; border-bottom: 1px solid var(--line); }
.artist-approach-title { margin: 0 0 27px; font-size: 20px; font-weight: 500; letter-spacing: -.025em; line-height: 1.4; }
.artist-approach-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 50px; padding-bottom: 30px; }
.artist-philosophy { margin-top: 0; }
.artist-freehand { padding-left: 20px; }
.artist-techniques { grid-column: auto; gap: 0 22px; }
.artist-techniques > .section-label { margin-top: 0; }
.artist-techniques .technique { padding-top: 13px; }
.artist-context p, .artist-techniques .technique p { font-size: 12px; }
.artist-techniques .technique h3 { font-size: 14px; }

@media (min-width: 761px) and (prefers-reduced-motion: no-preference) {
  .hero-media { will-change: transform; }
}
@media (max-width: 1100px) {
  .header-inner { height: 94px; gap: 22px; }
  .brand, .brand img { width: 58px; }
  .main-nav { font-size: 12px; gap: 18px; margin-right: 10px; }
  .hero { min-height: clamp(660px,94svh,850px); }
  .hero-grid { gap: 40px; padding-top: 190px; padding-bottom: 32px; }
  .hero-copy { width: 86%; }
  .hero h1 { font-size: 8.6vw; }
  .hero-description { font-size: 14px; }
  .hero .eyebrow { font-size: 10px; }
  .artist-scene { min-height: 600px; }
  .artist-scene-inner { padding-block: 55px; }
  .artist-intro { width: 43%; }
  .artist-bio, .artist-statement { font-size: 13px; }
  .artist-intro h2 { font-size: 4.6vw; }
  .artist-approach-grid { grid-template-columns: 1fr; gap: 30px; }
}
@media (max-width: 760px) {
  :root { scroll-padding-top: 86px; }
  .header-inner { height: 84px; gap: 18px; }
  .brand, .brand img { width: 54px; }
  .mobile-menu-toggle { order: 3; color: var(--paper); margin-left: 0; min-width: 44px; padding: 10px 0; }
  .language-switch { margin-left: auto; font-size: 11px; gap: 1px; }
  .main-nav { margin: 0; background: #080808; border: 0; color: var(--paper); padding-block: 14px 22px; font-size: 15px; }
  .main-nav a:nth-child(2) { display: flex; }
  .hero { min-height: 800px; min-height: min(920px,max(800px,100svh)); }
  .hero-media { inset: 0 0 auto; height: clamp(520px,100vw,620px); }
  .hero-media img { object-fit: cover; object-position: 50% 28%; filter: blur(.6px); }
  .hero-media::after { content: ''; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(180deg,rgba(8,8,8,.2),transparent 22%,transparent 63%,#080808 100%); }
  .hero::before { background: linear-gradient(0deg,rgba(8,8,8,.95) 0%,rgba(8,8,8,.88) 16%,rgba(8,8,8,.65) 34%,transparent 64%); }
  .hero-grid { padding-top: 360px; padding-bottom: 44px; display: flex; flex-direction: column; justify-content: flex-end; gap: 0; }
  .hero-copy { width: 100%; align-self: auto; padding: 0; }
  .hero .eyebrow { font-size: 10px; gap: 5px; letter-spacing: .055em; }
  .hero h1 { font-size: clamp(48px,10vw,76px); margin-top: 19px; margin-left: -2px; }
  .hero-description { margin-top: 19px; font-size: 14px; line-height: 1.6; }
  .hero-actions { margin-top: 22px; gap: 18px; flex-wrap: wrap; flex-direction: row; align-items: center; }
  .hero-actions .button { font-size: 13px; min-height: 52px; padding: 15px 23px; }
  .hero-work-link { font-size: 12px; padding-block: 8px; }
  .hero-footnote { display: none; }
  .is-de .hero h1 { font-size: 8vw; }
  .artist-scene { min-height: 820px; }
  .artist-background { inset: 0; }
  .artist-background img { object-position: 66% 50%; filter: grayscale(1) brightness(.87); }
  .artist-scene::before { background: linear-gradient(0deg,rgba(8,8,8,.92) 0%,rgba(8,8,8,.87) 13%,rgba(8,8,8,.35) 36%,transparent 49%),linear-gradient(180deg,rgba(8,8,8,.74),rgba(8,8,8,.45) 26%,transparent 46%); }
  .artist-scene-inner { padding-top: 40px; padding-bottom: 35px; display: block; }
  .artist-intro { max-width: none; width: 100%; min-height: 745px; display: flex; flex-direction: column; }
  .artist-intro .section-label { font-size: 10px; }
  .artist-intro h2 { font-size: clamp(38px,7.7vw,58px); line-height: 1.02; margin-top: 18px; }
  .artist-scene-copy { margin-top: auto; padding-top: 340px; max-width: 570px; }
  .artist-bio, .artist-statement { font-size: 14px; line-height: 1.6; }
  .artist-style-line { margin-top: 16px; font-size: 10px; }
  .artist-details { padding-top: 28px; padding-bottom: 25px; }
  .artist-approach-title { font-size: 18px; margin-bottom: 25px; }
  .artist-approach-grid { padding-bottom: 20px; }
}
@media (max-width: 520px) {
  .header-inner { height: 80px; gap: 15px; }
  .brand, .brand img { width: 51px; }
  .hero { min-height: 790px; min-height: min(900px,max(790px,100svh)); }
  .hero-grid { padding-top: 380px; padding-bottom: 36px; }
  .hero h1 { font-size: clamp(42px,13.1vw,67px); line-height: .95; }
  .hero .eyebrow { font-size: 9px; }
  .hero-description { font-size: 13px; margin-top: 17px; }
  .hero-actions { flex-direction: column; align-items: stretch; gap: 10px; margin-top: 23px; }
  .hero-actions .button { width: 100%; font-size: 14px; min-height: 53px; }
  .hero-work-link { width: fit-content; font-size: 12px; }
  .is-de .hero h1 { font-size: 9.1vw; }
  .artist-scene { min-height: 855px; }
  .artist-intro { min-height: 780px; }
  .artist-intro h2 { font-size: clamp(35px,10.2vw,52px); }
  .artist-scene-copy { padding-top: 345px; }
  .artist-bio, .artist-statement { font-size: 13px; }
  .artist-techniques { grid-template-columns: minmax(0,1fr); }
  .artist-style-line { font-size: 9px; }
}
@media (prefers-reduced-motion: reduce) {
  .hero-media { transform: none; will-change: auto; }
  .site-header { transition: none; }
}
