:root { color-scheme: dark; --ink: #f4f1e9; --muted: #aaa79f; --line: rgba(255,255,255,.16); --paper: #080808; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: Arial, Helvetica, sans-serif; }
a { color: inherit; text-decoration: none; }
button { font: inherit; }
img { display: block; max-width: 100%; }
.shell { width: min(1320px, calc(100% - 48px)); margin-inline: auto; }
.noise { position: fixed; inset: 0; pointer-events: none; opacity: .05; z-index: 10; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.95' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.9'/%3E%3C/svg%3E"); }
.nav { height: 240px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; border-bottom: 1px solid var(--line); position: relative; z-index: 3; }
.wordmark { width: fit-content; display: block; }
.wordmark-logo { width: 228px; height: 228px; object-fit: cover; border-radius: 50%; filter: contrast(1.04); transition: transform .25s ease, filter .25s ease; }
.wordmark:hover .wordmark-logo, .wordmark:focus-visible .wordmark-logo { transform: scale(1.035); filter: contrast(1.08) brightness(1.08); }
.nav nav { display: flex; gap: 28px; font-size: .82rem; text-transform: uppercase; letter-spacing: .14em; }
.nav nav a:hover, .nav nav a:focus-visible, .contact-links a:hover, .contact-links a:focus-visible { opacity: .62; }
.language { justify-self: end; border: 1px solid var(--line); color: var(--ink); background: transparent; border-radius: 99px; padding: 10px 14px; cursor: pointer; }
.hero { min-height: calc(100svh - 240px); display: grid; grid-template-columns: 1.12fr .88fr; align-items: center; gap: clamp(36px, 6vw, 90px); padding-block: clamp(72px, 10vh, 120px); }
.hero-copy-wrap { position: relative; z-index: 2; }
.eyebrow, .section-index { text-transform: uppercase; letter-spacing: .19em; font-size: .75rem; color: var(--muted); }
.hero h1 { font-size: clamp(68px, 9.2vw, 144px); line-height: .79; margin: 42px 0; letter-spacing: -.075em; font-weight: 800; }
.hero h1 em { font-family: Georgia, serif; font-weight: 400; }
.hero-copy { max-width: 610px; font-size: clamp(1.15rem, 1.8vw, 1.6rem); line-height: 1.45; }
.hero-actions { margin-top: 38px; display: flex; gap: 12px; flex-wrap: wrap; }
.button { display: inline-flex; padding: 15px 22px; border-radius: 99px; border: 1px solid var(--line); font-size: .9rem; }
.button-light { background: var(--ink); color: #111; }
.button-ghost:hover, .button-ghost:focus-visible { background: rgba(255,255,255,.08); }
.hero-media { margin: 0; position: relative; align-self: stretch; min-height: 560px; overflow: hidden; border-left: 1px solid var(--line); perspective: 900px; background: #080808; }
.hero-media::before { content: ""; position: absolute; inset: -22%; z-index: 1; pointer-events: none; background: conic-gradient(from 180deg, transparent 0 36%, rgba(215,158,106,.13) 43%, rgba(133,103,190,.17) 49%, transparent 58% 100%); mix-blend-mode: screen; animation: rays-glint 10s linear infinite; }
.hero-media::after { content: ""; position: absolute; inset: 0; z-index: 2; background: linear-gradient(90deg, var(--paper), transparent 30%), linear-gradient(0deg, rgba(8,8,8,.62), transparent 45%); pointer-events: none; }
.hero-media img { width: 100%; height: 100%; object-fit: cover; transform-origin: 52% 48%; animation: rays-orbit 15s ease-in-out infinite alternate; will-change: transform, filter; }
.hero-media figcaption { position: absolute; z-index: 3; right: 22px; bottom: 20px; font-size: .75rem; letter-spacing: .18em; color: var(--muted); }
@keyframes rays-orbit {
  0% { transform: rotateX(-1deg) rotateY(-2.5deg) rotateZ(-.8deg) scale(1.08); filter: saturate(.78) contrast(1.08) brightness(.88) hue-rotate(-5deg); }
  32% { transform: rotateX(2deg) rotateY(2.8deg) rotateZ(.65deg) scale(1.13); filter: saturate(1.08) contrast(1.13) brightness(1.08) hue-rotate(7deg); }
  68% { transform: rotateX(-1.6deg) rotateY(1.4deg) rotateZ(-.35deg) scale(1.1); filter: saturate(.94) contrast(1.1) brightness(.96) hue-rotate(-2deg); }
  100% { transform: rotateX(1.8deg) rotateY(-2deg) rotateZ(.9deg) scale(1.14); filter: saturate(1.14) contrast(1.14) brightness(1.12) hue-rotate(10deg); }
}
@keyframes rays-glint { to { transform: rotate(360deg); } }
.manifesto { padding: 140px 0; border-top: 1px solid var(--line); }
.manifesto, .artists, .open-call, .directions, .releases, .contact { position: relative; }
.section-mark { position: absolute; top: 14px; width: clamp(96px, 9vw, 122px); aspect-ratio: 1; z-index: 0; border-radius: 50%; background-color: var(--mark-color); background-image: url("assets/frang-instagram-logo.jpg"); background-position: center; background-size: cover; background-blend-mode: multiply; mix-blend-mode: screen; opacity: .78; filter: saturate(1.2) drop-shadow(0 0 24px color-mix(in srgb, var(--mark-color) 30%, transparent)); pointer-events: none; }
.section-mark::after { content: ""; position: absolute; inset: -8px; border: 1px solid color-mix(in srgb, var(--mark-color) 26%, transparent); border-radius: 50%; }
.mark-left { left: 0; }.mark-right { right: 0; }
.mark-gold { --mark-color: #d6a166; }.mark-violet { --mark-color: #a88cff; }.mark-cyan { --mark-color: #62d9ff; }.mark-emerald { --mark-color: #70dbb0; }.mark-rose { --mark-color: #ef789a; }.mark-amber { --mark-color: #ffc66f; }
.manifesto > :not(.section-mark), .artists > :not(.section-mark), .open-call > :not(.section-mark), .directions > :not(.section-mark), .releases > :not(.section-mark), .contact > :not(.section-mark) { position: relative; z-index: 1; }
.manifesto-text { max-width: 1100px; font: 400 clamp(36px, 6vw, 78px)/1.08 Georgia, serif; letter-spacing: -.035em; }
.principles { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 80px; border-block: 1px solid var(--line); }
.principles p { margin: 0; padding: 24px 18px 24px 0; text-transform: uppercase; letter-spacing: .1em; font-size: .8rem; color: var(--muted); }
.principles p + p { border-left: 1px solid var(--line); padding-left: 24px; }
.section-heading { display: grid; grid-template-columns: 1.35fr .65fr; align-items: end; gap: 70px; margin-bottom: 65px; }
.section-heading h2, .contact h2 { margin: 18px 0 0; font-size: clamp(45px, 7vw, 92px); line-height: .93; letter-spacing: -.06em; }
.section-heading > p { color: var(--muted); line-height: 1.7; max-width: 430px; font-size: 1rem; }
.artists, .open-call, .directions, .releases { padding: 120px 0; }
.artist-grid { display: grid; grid-template-columns: repeat(10, 1fr); gap: 14px; }
.artist-card { min-height: 310px; padding: 24px; border: 1px solid rgba(255,255,255,.18); border-radius: 6px; display: flex; flex-direction: column; justify-content: space-between; position: relative; isolation: isolate; overflow: hidden; transition: transform .25s ease, filter .25s ease; color: #fff; }
.artist-card::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(5,5,5,.08) 0%, rgba(5,5,5,.22) 38%, rgba(5,5,5,.93) 100%); }
.artist-art { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; transform: scale(1.035); transition: transform .6s ease; }
.artist-card:nth-child(1), .artist-card:nth-child(2) { grid-column: span 5; }
.artist-card:nth-child(n+3) { grid-column: span 3; }
.artist-card:nth-child(5) { grid-column: span 4; }
.artist-card:hover, .artist-card:focus-visible { transform: translateY(-5px); filter: brightness(1.1); }
.artist-card:hover .artist-art, .artist-card:focus-visible .artist-art { transform: scale(1.09); }
.artist-card h3 { font: 400 clamp(35px, 4vw, 61px)/.95 Georgia, serif; margin: auto 0 18px; }
.artist-card > span:last-child { font-size: .75rem; text-transform: uppercase; letter-spacing: .12em; }
.artist-number { font-size: .75rem; opacity: .65; }
.tone-1 { background: #35120d; }.tone-1 .artist-art { object-position: 52% 48%; filter: saturate(.95) contrast(1.08) brightness(.86); }
.tone-2 { background: #231638; }.tone-2 .artist-art { object-position: 50% 52%; filter: saturate(.92) contrast(1.06) brightness(.82); }
.tone-3 { background: #13282e; }.tone-3 .artist-art { object-position: 50% 40%; filter: saturate(.9) contrast(1.09) brightness(.78); }
.tone-4 { background: #30280e; }.tone-4 .artist-art { object-position: 50% 50%; filter: saturate(.94) contrast(1.1) brightness(.8); }
.tone-5 { background: #1d1d1d; }.tone-5 .artist-art { object-position: 50% 48%; filter: saturate(.78) contrast(1.08) brightness(.72); }
.open-call, .directions, .releases { border-top: 1px solid var(--line); }
.open-layout { display: grid; grid-template-columns: 1.08fr .92fr; gap: 18px; align-items: stretch; }
.open-visual { min-height: 620px; position: relative; overflow: hidden; border: 1px solid var(--line); display: flex; align-items: end; }
.cover-stack { position: absolute; inset: 0; display: grid; grid-template-columns: 1fr 1fr; filter: saturate(.86) contrast(1.06); }
.cover-stack img { width: 100%; height: 100%; object-fit: cover; min-height: 0; }
.open-visual::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.92)); }
.open-visual-copy { position: relative; z-index: 1; padding: clamp(28px, 4vw, 54px); max-width: 760px; }
.open-visual-copy span, .open-rules span { color: var(--muted); font-size: .75rem; letter-spacing: .18em; }
.open-visual-copy h3 { margin: 18px 0 0; font: 400 clamp(38px, 4.7vw, 72px)/.97 Georgia, serif; letter-spacing: -.04em; }
.open-rules { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.open-rules article { min-height: 300px; padding: 26px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); display: flex; flex-direction: column; }
.open-rules h3 { margin: auto 0 16px; font: 400 clamp(28px, 3vw, 44px)/1 Georgia, serif; }
.open-rules p { margin: 0; color: var(--muted); line-height: 1.55; }
.open-actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 28px; }
.direction-grid { display: grid; grid-template-columns: repeat(12, 1fr); gap: 14px; }
.direction-card { min-height: 230px; padding: 22px; border: 1px solid var(--line); display: flex; flex-direction: column; background: #0d0d0d; }
.direction-group { grid-column: 1 / -1; margin: 36px 0 4px; color: var(--muted); font-size: .75rem; letter-spacing: .18em; text-transform: uppercase; }
.direction-group:first-child { margin-top: 0; }
.span-3 { grid-column: span 3; }
.span-4 { grid-column: span 4; }
.span-12 { grid-column: span 12; }
.direction-card > span { color: var(--muted); font-size: .75rem; letter-spacing: .18em; }
.direction-card h3 { margin: auto 0 22px; font: 400 clamp(29px, 3.2vw, 46px)/.96 Georgia, serif; }
.direction-classical h3 { font-size: clamp(23px, 2.25vw, 34px); line-height: 1.02; overflow-wrap: anywhere; hyphens: auto; }
.direction-card a { width: fit-content; padding-block: 7px; border-bottom: 1px solid rgba(255,255,255,.34); font-size: .9rem; }
.direction-card a:hover, .direction-card a:focus-visible { border-color: var(--ink); }
.track-links { display: flex; flex-wrap: wrap; gap: 8px 22px; }
.direction-blues { background: radial-gradient(circle at 90% 0, #744428, #160d09 62%); }
.direction-russian { background: radial-gradient(circle at 85% 0, #4a335e, #130d19 65%); }
.direction-georgian { background: radial-gradient(circle at 80% 0, #8b4335, #1d0d0a 68%); }
.direction-armenian { background: radial-gradient(circle at 85% 0, #62517f, #130f1b 68%); }
.direction-rap { background: radial-gradient(circle at 85% 5%, #756326, #181407 65%); }
.direction-folk { background: radial-gradient(circle at 85% 0, #526238, #11170b 68%); }
.direction-world { background: radial-gradient(circle at 90% 0, #325765, #0a1417 65%); }
.direction-classical { background: radial-gradient(circle at 50% 10%, #484848, #111 68%); }
.developing p { margin: 0; color: var(--muted); line-height: 1.55; max-width: 360px; }
.language-heading { margin-top: 74px; }
.language-grid { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; }
.language-card { min-width: 0; overflow: hidden; border: 1px solid var(--line); background: #0d0d0d; transition: transform .24s ease, border-color .24s ease; }
.language-card:hover, .language-card:focus-within { transform: translateY(-4px); border-color: rgba(255,255,255,.36); }
.language-cover { display: block; position: relative; aspect-ratio: 1; overflow: hidden; }
.language-cover::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 55%, rgba(0,0,0,.42)); pointer-events: none; }
.language-cover img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease, filter .4s ease; filter: saturate(.9) contrast(1.05); }
.language-card:hover img, .language-card:focus-within img { transform: scale(1.045); filter: saturate(1.02) contrast(1.07); }
.language-code { position: absolute; z-index: 1; top: 12px; right: 12px; width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.5); border-radius: 50%; background: rgba(8,8,8,.62); backdrop-filter: blur(8px); font-size: .68rem; font-weight: 700; letter-spacing: .08em; }
.language-copy { padding: 16px; display: grid; gap: 7px; }
.language-copy > span { color: var(--muted); font-size: .68rem; letter-spacing: .16em; }
.language-copy h3 { margin: 7px 0 9px; font: 400 clamp(23px, 2.2vw, 31px)/1 Georgia, serif; letter-spacing: -.025em; }
.language-copy a { width: fit-content; max-width: 100%; padding-block: 4px; color: var(--muted); border-bottom: 1px solid rgba(255,255,255,.24); font-size: .78rem; line-height: 1.25; overflow-wrap: anywhere; }
.language-copy a:hover, .language-copy a:focus-visible { color: var(--ink); border-color: var(--ink); }
.release-grid { display: grid; grid-template-columns: 1.35fr .65fr; gap: 18px; }
.release-card { min-height: 620px; position: relative; overflow: hidden; border: 1px solid var(--line); display: flex; align-items: end; }
.release-card > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.release-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(0,0,0,.92), transparent 68%); }
.release-card > div:last-child { position: relative; z-index: 1; padding: clamp(26px, 4vw, 52px); width: 100%; }
.release-card p { margin: 0 0 12px; text-transform: uppercase; letter-spacing: .15em; color: var(--muted); font-size: .75rem; }
.release-card h3 { margin: 0; font: 400 clamp(38px, 5vw, 72px)/.96 Georgia, serif; letter-spacing: -.04em; }
.release-card a { display: inline-block; margin-top: 28px; padding-bottom: 5px; border-bottom: 1px solid currentColor; }
.release-secondary { background: radial-gradient(circle at 50% 25%, #6d5c7b, #1b1721 50%, #090909 86%); }
.release-signal { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; gap: 10px; }
.release-signal span { width: 8px; height: 28%; background: rgba(244,241,233,.75); border-radius: 999px; }
.release-signal span:nth-child(2) { height: 47%; }.release-signal span:nth-child(3) { height: 68%; }.release-signal span:nth-child(4) { height: 40%; }.release-signal span:nth-child(5) { height: 20%; }
.contact { padding: 150px 0; display: grid; grid-template-columns: 1fr 1.4fr; }
.contact .section-index { grid-column: 1 / -1; }
.contact-copy { max-width: 650px; }
.contact-copy p { max-width: 540px; margin: 28px 0; color: var(--muted); font-size: 1rem; line-height: 1.65; }
.contact-links { display: flex; flex-direction: column; justify-content: end; align-items: flex-end; gap: 18px; font-size: clamp(24px, 4vw, 50px); }
footer { border-top: 1px solid var(--line); padding: 28px 0 50px; display: flex; justify-content: space-between; color: var(--muted); font-size: .75rem; text-transform: uppercase; letter-spacing: .14em; }
.frang-audio { position: relative; z-index: 4; width: min(100%, 430px); margin-top: 26px; padding: 14px; border: 1px solid rgba(255,255,255,.23); border-radius: 10px; background: rgba(14,14,14,.84); box-shadow: 0 18px 55px rgba(0,0,0,.34); backdrop-filter: blur(18px); }
.audio-head { display: flex; justify-content: space-between; align-items: center; color: rgba(255,255,255,.62); font-size: .64rem; font-weight: 700; letter-spacing: .16em; }
.audio-status { color: #d7b4ff; }
.audio-spectrum { height: 48px; margin-top: 10px; display: grid; grid-template-columns: repeat(28, 1fr); align-items: end; gap: 3px; overflow: hidden; }
.audio-spectrum i { display: block; height: calc(var(--level) * 1%); min-height: 4px; border-radius: 4px 4px 1px 1px; background: linear-gradient(180deg, hsl(var(--h) 100% 72%), hsl(calc(var(--h) + 48) 90% 51%)); opacity: .54; transform: scaleY(.18); transform-origin: bottom; }
.frang-audio[data-state="playing"] .audio-spectrum i { opacity: .95; animation: spectrum-dance calc(540ms + var(--i) * 18ms) ease-in-out calc(var(--i) * -41ms) infinite alternate; }
.audio-rail { height: 2px; margin: 8px 0 12px; overflow: hidden; background: rgba(255,255,255,.09); }
.audio-rail::after { content: ""; display: block; width: 48%; height: 100%; background: linear-gradient(90deg, transparent, #52d6ff, #bd6cff, #ff7d54, transparent); transform: translateX(-110%); }
.frang-audio[data-state="playing"] .audio-rail::after { animation: audio-rail 2.7s linear infinite; }
.audio-controls { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 11px; }
.audio-toggle, .audio-volume { border: 1px solid rgba(255,255,255,.22); color: var(--ink); background: rgba(255,255,255,.06); cursor: pointer; }
.audio-toggle { min-height: 38px; display: inline-flex; align-items: center; gap: 8px; padding: 0 12px; border-radius: 99px; font-size: .72rem; white-space: nowrap; }
.audio-toggle:hover, .audio-toggle:focus-visible, .audio-volume:hover, .audio-volume:focus-visible { background: rgba(255,255,255,.14); }
.audio-icon { color: #dc99ff; font-size: .82rem; }
.audio-track { min-width: 0; display: grid; gap: 2px; }
.audio-track strong { overflow: hidden; color: #fff; font: 400 .84rem/1.2 Georgia, serif; text-overflow: ellipsis; white-space: nowrap; }
.audio-track span { color: var(--muted); font-size: .66rem; }
.audio-volume { width: 38px; height: 30px; padding: 0; border-radius: 99px; color: var(--muted); font-size: .62rem; }
.audio-embed { position: absolute; width: 1px; height: 1px; overflow: hidden; opacity: .001; pointer-events: none; }
@keyframes spectrum-dance { 0% { transform: scaleY(.18); } 45% { transform: scaleY(.72); } 100% { transform: scaleY(1); } }
@keyframes audio-rail { to { transform: translateX(225%); } }
@media (max-width: 960px) {
  .nav { grid-template-columns: 1fr auto; }.nav nav { display: none; }
  .hero { grid-template-columns: 1fr; }.hero-media { min-height: 500px; border-left: 0; border-top: 1px solid var(--line); }
  .section-heading, .contact, .release-grid, .open-layout { grid-template-columns: 1fr; }.section-heading { gap: 20px; }
  .artist-card, .direction-card { grid-column: 1 / -1 !important; min-height: 240px; }
  .language-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .release-secondary { min-height: 480px; }.contact-links { align-items: flex-start; margin-top: 60px; }
}
@media (max-width: 560px) {
  .shell { width: min(100% - 28px, 1320px); }.nav { height: 158px; }.wordmark-logo { width: 148px; height: 148px; }.hero { min-height: calc(100svh - 158px); padding-top: 58px; }
  .hero h1 { font-size: clamp(57px, 18vw, 74px); }.hero-copy { font-size: 1.08rem; }.hero-media { min-height: 390px; }
  .manifesto, .artists, .open-call, .directions, .releases, .contact { padding-block: 90px; }.manifesto-text { font-size: 38px; }
  .section-mark { top: 8px; width: 76px; }.mark-left { left: 4px; }.mark-right { right: 4px; }
  .principles { grid-template-columns: 1fr; }.principles p + p { border-left: 0; border-top: 1px solid var(--line); padding-left: 0; }
  .artist-grid, .direction-grid { display: block; }.artist-card, .direction-card { margin-bottom: 12px; }
  .language-heading { margin-top: 64px; }.language-grid { display: grid; grid-template-columns: 1fr; gap: 10px; }.language-card { display: grid; grid-template-columns: 112px minmax(0, 1fr); }.language-cover { aspect-ratio: 1; height: 100%; min-height: 148px; }.language-code { width: 32px; height: 32px; top: 9px; right: 9px; }.language-copy { align-content: center; }
  .open-visual { min-height: 520px; }.open-rules { grid-template-columns: 1fr; }.open-rules article { min-height: 230px; }.release-card { min-height: 460px; } footer { gap: 20px; flex-direction: column; }
  .hero-media figcaption { right: 14px; bottom: 14px; }.frang-audio { width: 100%; margin-top: 22px; padding: 12px; }.audio-spectrum { height: 38px; gap: 2px; }.audio-toggle { min-height: 36px; padding-inline: 10px; }.audio-toggle [data-audio-action] { display: none; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; }.artist-card, .artist-art { transition: none; }.hero-media img, .hero-media::before, .audio-spectrum i, .audio-rail::after { animation: none !important; } }

/* FRANG OPEN — submission and curation prototype */
.submission-hero, .studio-head { min-height: 540px; padding-block: 100px; display: grid; grid-template-columns: 1.3fr .7fr; align-items: end; gap: 70px; border-bottom: 1px solid var(--line); }
.submission-hero h1, .studio-head h1 { margin: 32px 0 0; font-size: clamp(58px, 8vw, 118px); line-height: .83; letter-spacing: -.07em; }
.submission-hero h1 em, .studio-head h1 em { font-family: Georgia, serif; font-weight: 400; }
.submission-hero > p, .studio-head > p { color: var(--muted); font-size: 1.05rem; line-height: 1.7; max-width: 430px; }
.submission-layout { display: grid; grid-template-columns: .72fr 1.28fr; gap: clamp(50px, 8vw, 120px); padding-block: 120px; align-items: start; }
.submission-policy { position: sticky; top: 30px; }
.submission-policy h2, .placement-map h2 { margin: 22px 0 48px; font-size: clamp(42px, 5vw, 72px); line-height: .95; letter-spacing: -.055em; }
.submission-policy ol { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.submission-policy li { display: grid; grid-template-columns: 48px 1fr; gap: 14px; padding: 24px 0; border-bottom: 1px solid var(--line); }
.submission-policy li > span { color: var(--muted); font-size: .75rem; letter-spacing: .14em; }
.submission-policy strong { font: 400 1.55rem Georgia, serif; }.submission-policy li p { margin: 8px 0 0; color: var(--muted); line-height: 1.5; }
.prototype-note { margin-top: 28px; padding: 20px; border: 1px solid rgba(215,158,106,.38); background: rgba(215,158,106,.07); color: #d7c1a7; line-height: 1.55; }
.submission-form { display: grid; gap: 18px; }
.submission-form fieldset { margin: 0; padding: 30px; border: 1px solid var(--line); display: grid; gap: 22px; }
.submission-form legend { padding: 0 10px; color: var(--muted); font-size: .75rem; letter-spacing: .18em; text-transform: uppercase; }
.submission-form label { display: grid; gap: 9px; color: var(--muted); font-size: .86rem; letter-spacing: .04em; }
.submission-form input, .submission-form textarea, .submission-form select { width: 100%; border: 1px solid var(--line); border-radius: 0; background: #101010; color: var(--ink); padding: 15px; font: 1rem/1.4 Arial, sans-serif; }
.submission-form textarea { resize: vertical; min-height: 120px; }.field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.submission-form .check { grid-template-columns: 22px 1fr; align-items: start; line-height: 1.5; letter-spacing: 0; color: var(--ink); }.submission-form .check input { width: 18px; height: 18px; margin-top: 2px; accent-color: #d9854a; }
.submit-button { justify-content: center; width: 100%; border-radius: 0; cursor: pointer; font-weight: 700; }
.submission-result { padding: 26px; border: 1px solid #58794f; background: rgba(88,121,79,.12); line-height: 1.55; }.submission-result strong { font: 400 1.6rem Georgia, serif; }.submission-result a { border-bottom: 1px solid currentColor; }
.studio { padding-bottom: 120px; }.studio-metrics { display: grid; grid-template-columns: repeat(5, 1fr); margin: 54px 0; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.studio-metrics article { min-height: 130px; padding: 20px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); display: flex; flex-direction: column; justify-content: space-between; }.studio-metrics span { color: var(--muted); font-size: .78rem; text-transform: uppercase; letter-spacing: .1em; }.studio-metrics strong { font: 400 3.2rem Georgia, serif; }
.review-board { display: grid; grid-template-columns: repeat(5, minmax(210px, 1fr)); gap: 12px; overflow-x: auto; padding-bottom: 18px; }
.review-lane { min-height: 470px; border: 1px solid var(--line); background: #0d0d0d; padding: 16px; }.review-lane h2 { margin: 4px 0 20px; font: 400 1.15rem Georgia, serif; }.lane-empty { color: var(--muted); }
.review-card { padding: 18px; background: #191919; border: 1px solid var(--line); }.review-card > span { color: var(--muted); font-size: .7rem; letter-spacing: .12em; }.review-card h3 { margin: 28px 0 6px; font: 400 1.8rem Georgia, serif; }.review-card p, .review-card small { color: var(--muted); line-height: 1.5; }.review-card button { margin-top: 22px; border: 0; border-bottom: 1px solid currentColor; background: transparent; color: var(--ink); padding: 5px 0; cursor: pointer; }
.placement-map { margin-top: 120px; padding-top: 100px; border-top: 1px solid var(--line); display: grid; grid-template-columns: .75fr 1.25fr; gap: 70px; }.placement-lanes { display: grid; gap: 12px; }.placement-lanes article { min-height: 190px; padding: 26px; border: 1px solid var(--line); display: flex; flex-direction: column; }.placement-lanes span { color: var(--muted); font-size: .72rem; letter-spacing: .16em; }.placement-lanes strong { margin: auto 0 12px; font: 400 clamp(28px, 3.3vw, 48px) Georgia, serif; }.placement-lanes p { margin: 0; color: var(--muted); line-height: 1.5; }
@media (max-width: 960px) { .submission-hero, .studio-head, .submission-layout, .placement-map { grid-template-columns: 1fr; }.submission-policy { position: static; }.studio-metrics { grid-template-columns: repeat(2, 1fr); }.review-board { grid-template-columns: repeat(5, 260px); } }
@media (max-width: 560px) { .submission-hero, .studio-head { min-height: 460px; padding-block: 70px; }.submission-layout { padding-block: 80px; }.field-row { grid-template-columns: 1fr; }.submission-form fieldset { padding: 22px 18px; }.studio-metrics { grid-template-columns: 1fr 1fr; }.placement-map { margin-top: 80px; padding-top: 70px; } }
