html { scroll-behavior: auto; scrollbar-color: #b52e32 #000; }
.home-page .home-inline-grid, .home-page .home-two-col { display: block; }
.home-page .content-panel { padding-top: 110px !important; padding-bottom: 45vh !important; }
.home-page .home-inline-grid > *, .home-page .home-two-col > * { margin: 0; }
.home-page .fold-section { border-top: 1px solid var(--line); padding: 0; }
.home-page .fold-section .home-inline-work-heading { display: block; margin: 0; padding: 0; }
.home-page .fold-section :is(h3,.seo-heading-original-h3) { margin: 0; }
.fold-toggle { display: flex; align-items: center; justify-content: space-between; width: 100%; min-height: 64px; padding: 18px 0; border: 0; background: transparent; color: var(--paper); text-align: left; cursor: pointer; font: inherit; font-size: 18px; font-weight: 400; }
.fold-toggle::after { content: ''; width: 8px; height: 8px; flex-shrink: 0; margin: 0 4px 0 24px; border-right: 1px solid currentColor; border-bottom: 1px solid currentColor; transform: rotate(45deg); transition: transform 260ms ease; }
.fold-toggle:hover, .is-open > .home-inline-work-heading .fold-toggle { color: var(--accent-soft); }
.is-open > .home-inline-work-heading .fold-toggle::after { transform: rotate(225deg); }
.fold-panel { display: grid; grid-template-rows: 0fr; opacity: 0; visibility: hidden; transition: grid-template-rows 340ms cubic-bezier(.16,1,.3,1), opacity 220ms ease, visibility 340ms; }
.fold-inner { min-height: 0; overflow: hidden; }
.fold-inner > :last-child { margin-bottom: 24px; }
.is-open > .fold-panel { grid-template-rows: 1fr; opacity: 1; visibility: visible; }
.fold-inner p { font-size: 15px; line-height: 1.7; }
.fold-inner > a:first-child { display: inline-block; margin-bottom: 16px; text-decoration: underline; text-underline-offset: 4px; }
.fold-note { color: var(--muted); font-size: 13px; margin: 16px 0 32px; }
.home-page .home-inline-selected { margin-top: 0; }
.home-page .hero-split { overflow-anchor: none; }
@media (max-width: 767px) { .home-page .content-panel { padding: 28px 20px 40vh !important; } .fold-inner p { font-size: 16px; } .fold-toggle { min-height: 60px; } }
@media (prefers-reduced-motion: reduce) { .fold-panel, .fold-toggle::after { transition: none; } }
.home-page .art-panel { position: sticky; top: 70px; height: calc(100svh - 90px); align-self: start; padding: 0 28px; }
.sculpture-stage { width: 100%; height: calc(100% - 52px); }
.sculpture-stage canvas { display: block; width: 100%; height: 100%; }
.sculpture-stage { cursor: grab; touch-action: pan-y; user-select: none; }
.sculpture-stage.is-dragging { cursor: grabbing; }
.home-page .fold-subheading { margin: 24px 0 12px; font-family: 'JetBrains Mono', monospace; font-size: 11px; font-weight: 600; color: var(--muted); }
.has-sculpture .art-frame { display: none; }
.sculpture-status { position: absolute; bottom: 0; font-size: 13px; color: var(--muted); }
.sculpture-status:empty { display: none; }
.sculpture-toggle { align-self: center; background: transparent; color: var(--muted); border: 1px solid var(--line); padding: 8px 14px; cursor: pointer; font-size: 12px; }
.sculpture-toggle:hover { color: var(--paper); border-color: var(--muted); }
@media (max-width: 900px) { .home-page .art-panel { position: relative; top: 0; height: 55svh; margin-top: 74px; } }

/* The stone sculpture leads; the index stays quiet. */
body.home-page { --bg: #000; --paper: #ed6666; --muted: #cf8585; --line: #33191b; --accent: #c91f29; --accent-soft: #ff7777; background: #000; }
.home-page .fold-section .home-inline-work-heading { border-bottom: 0; }
.home-page .fold-section .home-inline-work-heading :is(h3,.seo-heading-original-h3) { font-family: var(--sans); font-weight: 400; text-transform: none; letter-spacing: 0; }
.home-page .fold-toggle { font-family: var(--sans); font-size: 17px; min-height: 68px; padding: 22px 0; transition: color 180ms ease; }
.home-page .fold-toggle::after { width: 6px; height: 6px; opacity: .65; }
.home-page .hero-title { color: var(--paper); font-family: var(--sans); font-size: 18px !important; font-weight: 500 !important; }
.home-page .hero-kicker { color: var(--muted); font-size: 15px !important; font-weight: 400; line-height: 1.65; max-width: 46ch; }
.home-page .fold-note { color: var(--muted); font-size: 12px; margin: 20px 0 36px; line-height: 1.6; }
.home-page .fold-inner { padding-inline: 0; }
.home-page .fold-inner > :last-child { margin-bottom: 32px; }
.home-page .fold-inner .home-live-card,
.home-page .fold-inner .home-book-card,
.home-page .fold-inner .home-social-card,
.home-page .fold-inner .home-discussion-card { border: 0; background: transparent; box-shadow: none; }
.home-page .fold-inner .home-live-grid { gap: 16px; padding-top: 6px; }
.home-page .fold-inner .home-article-list a { padding: 15px 0; border-bottom-color: var(--line); }
.home-page .fold-inner .home-article-list a:last-child { border-bottom: 0; }
.home-page .fold-inner .home-article-list a:hover { padding-left: 0; color: var(--accent-soft); }
.home-page .fold-inner .home-article-list b { font-size: 13px; font-weight: 400; line-height: 1.5; }
.home-page .fold-inner .home-article-list small { margin-top: 3px; font-size: 11px; line-height: 1.5; }
.home-page .fold-inner .home-article-list strong { color: var(--muted); font-weight: 400; }
.home-page .nav a:hover,
.home-page .nav a[aria-current="page"] { background: transparent; color: var(--paper); text-shadow: none; }
.home-page .nav a::after { height: 1px; background: var(--muted); }
.home-page .language-switcher { background: transparent; border: 1px solid var(--line); border-radius: 0; }
.home-page .sculpture-toggle { border-color: transparent; text-decoration: underline; text-underline-offset: 5px; }
.home-page .sculpture-toggle:hover { border-color: transparent; }
@media (max-width: 767px) { .home-page .fold-toggle { min-height: 62px; padding-block: 19px; } .home-page .fold-inner .home-live-grid { gap: 10px; } }

@font-face { font-family: 'Anton'; src: url('assets/fonts/Anton-Regular.ttf') format('truetype'); font-style: normal; font-weight: 400; font-display: swap; }
.home-page .fold-toggle { font-family: 'Anton', var(--sans); font-size: 19px; font-weight: 400; letter-spacing: .025em; line-height: 1.3; text-transform: uppercase; gap: 20px; }
.home-page .fold-title { max-width: 92%; text-wrap: balance; mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='137' height='43'%3E%3Crect width='137' height='43' fill='white'/%3E%3Cpath d='M8 12h3M54 30h4M107 17h2M31 38h3' stroke='black' stroke-width='.65'/%3E%3Ccircle cx='73' cy='11' r='.65'/%3E%3Ccircle cx='121' cy='34' r='.5'/%3E%3C/svg%3E"); mask-size: 137px 43px; }
.home-page .hero-title { font-family: 'Anton', var(--sans); font-size: 24px !important; font-weight: 400 !important; letter-spacing: .025em; text-transform: uppercase; line-height: 1.2; }
@media (max-width: 767px) { .home-page .fold-toggle { font-size: 18px; } .home-page .hero-title { font-size: 23px !important; } }
@font-face { font-family: 'JetBrains Mono'; src: url('assets/fonts/JetBrainsMono.ttf') format('truetype'); font-weight: 100 800; font-style: normal; font-display: swap; }
.home-page .hero-kicker, .home-page .fold-note, .home-page .fold-inner, .home-page .fold-inner :is(p,b,small,a), .home-page .sculpture-toggle { font-family: 'JetBrains Mono', monospace; }
.home-page .hero-kicker { max-width: 48ch; }
.home-page .fold-inner p { max-width: 65ch; line-height: 1.75; }
.decode-line { position: relative; }
.decode-visual { position: absolute; inset: 0; color: var(--paper); pointer-events: none; }
.home-page .hero-kicker { font-size: 13px !important; }
.home-page .fold-note { font-size: 11px; }
.home-page .fold-inner p { font-size: 14px; }
.home-page .fold-inner .home-article-list b { font-size: 12px; }
.decode-visual { animation: code-resolve 840ms linear both; }
@keyframes code-resolve { 0%, 30% { color: var(--accent-soft); text-shadow: 1px 0 var(--accent); } 65% { color: var(--paper); text-shadow: none; } 100% { color: var(--paper); } }
@media (max-width: 767px) { .home-page .fold-inner p { font-size: 15px; } }
@media (prefers-reduced-motion: reduce) { .decode-visual { animation: none; } }
.home-page .site-header .nav a, .home-page .site-header .language-switcher a, .home-page .nav-toggle { font-family: 'JetBrains Mono', monospace; font-weight: 700; letter-spacing: .025em; }
.home-page .site-header .nav a { font-size: 12px; }
.home-page .site-header .language-switcher a { font-size: 11px; }
.home-page .fold-toggle, .home-page .hero-title { color: #c74248; }
.home-page .fold-toggle:hover, .home-page .is-open > .home-inline-work-heading .fold-toggle { color: #df5158; }
.home-page .fold-press { border-top: 2px solid #c91f29; border-bottom: 1px solid #713033; margin-bottom: 14px; }
.home-page .fold-press .fold-toggle { color: #f27a7f; font-size: 22px; padding-block: 25px; }
.home-page .fold-press .fold-title { mask-image: none; }
@font-face { font-family: 'Albert Sans'; src: url('assets/fonts/AlbertSans.ttf') format('truetype'); font-weight: 100 900; font-style: normal; font-display: swap; }
.home-page .hero-title.name-lockup { display: block; width: min(100%, 340px); font-family: 'Albert Sans', sans-serif; font-size: inherit !important; letter-spacing: 0; line-height: 1; color: #f2f2ef; }
.name-lockup span { display: block; }
.name-lockup .name-first { display: flex; justify-content: space-between; font-size: 36px; font-weight: 500; letter-spacing: 0; padding-bottom: 10px; border-bottom: 2px solid #c91f29; }
.name-lockup .name-last { display: flex; justify-content: space-between; font-size: 36px; font-weight: 250; letter-spacing: 0; padding-top: 11px; }
.home-page .name-lockup + .hero-kicker { width: min(100%, 340px); max-width: none; margin-top: 6px; font-family: 'Albert Sans', sans-serif; white-space: nowrap; font-size: 10px !important; letter-spacing: -.015em; text-align: justify; text-align-last: justify; color: #f2f2ef; }
@media (max-width: 767px) { .home-page .name-lockup + .hero-kicker { width: min(100%, 320px); font-size: 9.5px !important; } }
@media (max-width: 767px) { .home-page .hero-title.name-lockup { width: min(100%, 320px); } .name-lockup .name-first, .name-lockup .name-last { font-size: 33px; } }
