/* About, Work, Careers, Contact, Legal: builds on site.css + editorial.css. */
.idx-side{display:grid;gap:0}
.anchor .wrap,.studio .wrap{padding-block:clamp(28px,4vw,48px) clamp(56px,8vw,104px);display:grid;gap:clamp(24px,3vw,40px)}
.anchor-grid,.studio-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.15fr);gap:clamp(32px,5vw,72px);align-items:center}
.anchor-copy,.studio-grid>.fit{display:grid;gap:24px}
.anchor h1,.studio h1{font-size:clamp(44px,14cqi,140px)}
@media (max-width:900px){.anchor-grid,.studio-grid{grid-template-columns:1fr}}

/* broadcast lower-third on the founder loop */
.chyron{position:absolute;z-index:3;left:4%;bottom:12%;display:grid;max-width:70%}
.chy-name{background:var(--blue);color:#fff;font-weight:800;font-stretch:112%;text-transform:uppercase;letter-spacing:-.01em;font-size:clamp(16px,2vw,28px);padding:8px 26px 8px 14px;clip-path:polygon(0 0,100% 0,calc(100% - 14px) 100%,0 100%);justify-self:start}
.chy-role{background:rgba(5,5,6,.85);color:var(--bone);font-family:var(--mono);font-size:clamp(11px,.9vw,12px);letter-spacing:.1em;text-transform:uppercase;padding:6px 14px;justify-self:start}
.chyron{animation:chy 5s ease-in-out infinite}
@keyframes chy{0%,6%{transform:translateX(-12px);opacity:0}12%,100%{transform:none;opacity:1}}

.founder-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(32px,6vw,96px);align-items:start}
.founder-grid .fit{display:grid;gap:22px}
.why-lead{margin:0;font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(30px,7.4cqi,60px);line-height:1.12;letter-spacing:-.01em;text-wrap:balance}
.founder-body{display:grid;gap:20px;color:var(--ash);font-size:18px;padding-top:44px}
.founder-body p{margin:0}
.founder-links{display:flex;flex-wrap:wrap;gap:12px}
@media (max-width:900px){.founder-grid{grid-template-columns:1fr}.founder-body{padding-top:0}}
#partners-title{font-size:clamp(36px,13cqi,96px)}

/* work: tapes */
.vault .loop{aspect-ratio:21/9}
.cases{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.8vw,24px);margin-top:clamp(28px,3vw,44px)}
.case{border:1px solid var(--rule);background:var(--plate);display:grid;align-content:start;transition:border-color .25s}
.case:hover{border-color:var(--blue)}
.case-media{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:#000}
.case-media img{width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(1) contrast(1.1) brightness(.55);transition:filter .5s}
.case:hover .case-media img{filter:none}
.case-stamp{position:absolute;right:12px;top:12px;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--blue-lite);border:1px solid var(--blue-lite);padding:4px 8px;transform:rotate(-3deg);background:rgba(0,0,0,.6)}
.case-body{padding:18px;display:grid;gap:14px}
.case-actions{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;align-items:center}
.case-link{font-family:var(--mono);font-size:12px;letter-spacing:.06em;color:var(--ash);text-decoration:none}
.case-link:hover{color:var(--bone)}
.more{display:inline-flex;align-items:center;gap:10px;font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;color:var(--bone);border-bottom:1px solid var(--blue);padding-bottom:3px}
.more svg{width:12px;height:12px}
.deck{margin-top:clamp(28px,3vw,44px);border:1px solid var(--rule);padding:clamp(18px,2.4vw,28px);display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;align-items:center}
.deck p{margin:0;max-width:60ch;color:var(--ash)}
.deck p b{display:block;color:var(--bone);font-size:18px;margin-bottom:6px}
@media (max-width:1000px){.cases{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.cases{grid-template-columns:1fr}.vault .loop{aspect-ratio:16/10}}

/* careers */
.roles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(14px,1.8vw,24px)}
.role{border:1px solid var(--rule);padding:clamp(20px,2.4vw,32px);display:grid;gap:16px;align-content:start;text-decoration:none;position:relative;overflow:hidden;transition:border-color .25s,background .25s}
.role::after{content:"";position:absolute;right:-30px;top:0;bottom:0;width:60px;background:var(--blue);transform:skewX(-30deg) translateX(120%);transition:transform .5s cubic-bezier(.2,.7,.1,1)}
.role:hover{border-color:var(--blue);background:rgba(11,107,242,.05)}
.role:hover::after{transform:skewX(-30deg) translateX(0)}
.role-top{display:flex;justify-content:space-between;gap:12px;align-items:center}
.role-open{display:flex;align-items:center;gap:8px;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--bone)}
.role-open i{width:8px;height:8px;border-radius:50%;background:#2fd17a;box-shadow:0 0 8px #2fd17a}
.role-t{font-weight:800;font-stretch:108%;text-transform:uppercase;letter-spacing:-.02em;line-height:1;font-size:clamp(26px,2.8vw,40px)}
.role-meta{display:flex;flex-wrap:wrap;gap:6px}
.role-meta span{font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--rule);padding:5px 9px;color:var(--ash)}
.role-meta span:first-child{border-color:var(--blue);color:var(--bone)}
.role .sc-d{color:var(--ash);font-size:15px;line-height:1.55}
.role .more{justify-self:start}
@media (max-width:900px){.roles{grid-template-columns:1fr}}
.apply{display:grid;gap:14px}
.apply p{margin:0;color:var(--ash);font-size:14px}
.apply .line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid var(--rule)}
.apply .v{font-weight:600;overflow-wrap:anywhere}
.apply .v.small{font-family:var(--mono);font-size:12px;font-weight:400;color:var(--bone)}

/* contact */
.brief-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr);gap:clamp(32px,5vw,80px);align-items:start}
.brief{display:grid;gap:20px;container-type:inline-size}
#brief-title,#apply-title{font-size:clamp(34px,10cqi,80px);margin-bottom:8px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.field{display:grid;gap:8px;border:0;margin:0;padding:0;min-width:0}
.field label,.field legend{font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ash);padding:0}
.field small{text-transform:none;letter-spacing:0}
.field input,.field textarea{width:100%;background:#0b0b0e;border:1px solid var(--rule);color:var(--bone);font:inherit;font-size:16px;padding:14px 14px;border-radius:0;transition:border-color .2s}
.field textarea{resize:vertical;min-height:130px}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--blue-lite);box-shadow:0 0 0 1px var(--blue-lite)}
.field input[aria-invalid="true"],.field textarea[aria-invalid="true"]{border-color:#ff5a5a}
.picks{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.pick{position:relative;cursor:pointer}
.pick input{position:absolute;opacity:0;width:1px;height:1px}
.pick span{display:block;border:1px solid var(--rule);padding:9px 13px;font-size:14px;color:var(--ash);transition:all .2s}
.pick:hover span{color:var(--bone);border-color:var(--bone)}
.pick input:checked+span{background:var(--blue);border-color:var(--blue);color:#fff}
.pick input:focus-visible+span{outline:2px solid var(--blue-lite);outline-offset:2px}
.brief>.btn{justify-self:start}
.form-err{margin:0;color:#ff8a8a;font-size:14px}
.sent{border:1px solid var(--blue);background:rgba(11,107,242,.06);padding:20px;display:grid;gap:12px}
.sent p{margin:0;color:var(--ash)}.sent b{color:var(--bone)}
.sent pre{margin:0;white-space:pre-wrap;font-family:var(--mono);font-size:13px;line-height:1.6;color:var(--bone);background:#08080a;border:1px solid var(--rule);padding:14px;max-height:260px;overflow:auto}
.sent-actions{display:flex;flex-wrap:wrap;gap:10px}
.desk-info{display:grid;gap:32px;position:sticky;top:100px}
.desk-info .line{grid-template-columns:90px minmax(0,1fr) auto}
.hq{font-style:normal;display:grid;gap:4px;color:var(--ash);line-height:1.6}
.hq .who-k{margin-bottom:6px}
.social{display:flex;flex-wrap:wrap;gap:18px;margin:0;font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.social a{text-decoration:none;color:var(--bone)}.social a:hover{color:var(--blue-lite)}
@media (max-width:980px){.brief-grid{grid-template-columns:1fr}.desk-info{position:static}}
@media (max-width:560px){.row2{grid-template-columns:1fr}}

/* legal */
.legal .prose{font-size:16.5px}
.legal .prose h2{font-size:clamp(20px,1.9vw,26px)}
.toc{gap:14px}
.toc ol{margin:0;padding:0;list-style:none;display:grid;gap:2px;counter-reset:t;max-height:60vh;overflow:auto;border-top:1px solid var(--rule)}
.toc li,.toc-m li{counter-increment:t}
.toc a,.toc-m a{display:grid;grid-template-columns:28px 1fr;padding:10px 0;font-size:13.5px;color:var(--ash);text-decoration:none;border-bottom:1px solid var(--rule)}
.toc a::before,.toc-m a::before{content:counter(t,decimal-leading-zero);font-family:var(--mono);font-size:11px;color:var(--blue-lite);padding-top:2px}
.toc a:hover{color:var(--bone)}
footer nav{flex-wrap:wrap}
/* founder loop: timecode label sits top-left so it never collides with the name caption */
.anchor .tc{top:10px;bottom:auto}
@media (max-width:560px){.chyron{bottom:8%;max-width:88%}.chy-role{font-size:11px}}

/* about: partners grouped by category */
.fixtures .fix-group+.fix-group{margin-top:28px}
.fix-h{margin:0 0 6px;font-family:var(--mono);font-weight:500;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--blue-lite)}
/* founder still */
.anchor .loop img{object-position:70% 50%}

/* work: experience cards */
.case-t{margin:0;font-weight:800;font-stretch:108%;text-transform:uppercase;letter-spacing:-.02em;font-size:clamp(18px,1.6vw,22px);line-height:1.05}
.case-dl{margin:0;display:grid;gap:10px}
.case-dl div{display:grid;gap:3px}
.case-dl dt{font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--blue-lite)}
.case-dl dd{margin:0;color:var(--ash);font-size:14px;line-height:1.5}
.case-caps{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 10px}
.case-caps li{color:var(--bone);font-size:13.5px}
.case-caps li+li::before{content:"/";color:#3a3a42;margin-right:10px}

/* forms (contact + careers) */
.form-note{margin:0;color:var(--ash);font-size:14px}
.form-alt{margin:0;color:var(--ash);font-size:13.5px}
.form-alt a{color:var(--bone);text-decoration-color:var(--blue)}
.form-body{display:grid;gap:20px}
.form-body[hidden]{display:none}
.form-status{padding:14px 16px;border:1px solid var(--rule);font-size:15px;line-height:1.55;outline:none}
.form-status.is-ok{border-color:#2fd17a;background:rgba(47,209,122,.07);color:var(--bone)}
.form-status.is-error{border-color:#ff8a8a;background:rgba(255,90,90,.07);color:var(--bone)}
.form-status code{font-family:var(--mono);font-size:13px;color:var(--blue-lite)}
.field-err{margin:2px 0 0;color:#ff9b9b;font-size:13px}
.field select{width:100%;background:#0b0b0e;border:1px solid var(--rule);color:var(--bone);font:inherit;font-size:16px;padding:14px;border-radius:0;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ash) 50%),linear-gradient(135deg,var(--ash) 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50%;background-size:6px 6px;background-repeat:no-repeat}
.field select:focus{outline:none;border-color:var(--blue-lite);box-shadow:0 0 0 1px var(--blue-lite)}
.field input[type=file]{padding:11px;font-size:14px;color:var(--ash)}
.field input[readonly]{color:var(--ash);border-style:dashed}
.checks{gap:12px}
.check{display:grid;grid-template-columns:22px minmax(0,1fr);gap:12px;align-items:start;font-size:14px;line-height:1.55;color:var(--ash);cursor:pointer;text-transform:none;letter-spacing:0;font-family:var(--display)}
.check input{width:20px;height:20px;margin:1px 0 0;accent-color:var(--blue)}
.check a{color:var(--bone);text-decoration-color:var(--blue)}
.hp{position:absolute!important;left:-10000px;width:1px;height:1px;overflow:hidden}
.brief>.form-body>.btn{justify-self:start}
.apply-facts{display:grid;gap:12px}
.facts-col{flex-direction:column;width:100%}
.facts-col div+div{border-left:0;border-top:1px solid var(--rule)}

/* 404 */
.nosignal .sec{display:grid;gap:24px;max-width:900px}
.nosignal h1{font-size:clamp(44px,8vw,120px)}
/* job page key facts: a full grid whose last cell stretches to complete its row */
.job-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--rule);width:100%;max-width:980px}
.job-facts div{background:var(--void);align-content:start}
.job-facts div+div{border-left:0}
.job-facts>div:last-child:nth-child(4n+1){grid-column:span 4}
.job-facts>div:last-child:nth-child(4n+2){grid-column:span 3}
.job-facts>div:last-child:nth-child(4n+3){grid-column:span 2}
@media (max-width:760px){
  .job-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .job-facts>div:last-child:nth-child(n){grid-column:auto}
  .job-facts>div:last-child:nth-child(odd){grid-column:span 2}
}
/* legal pages on phones/tablets: contents as a collapsible list at the top (desktop keeps the side column) */
.toc-m{display:none}
@media (max-width:980px){
  .toc-m{display:block;border:1px solid var(--rule);background:var(--plate)}
  .toc-m summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;min-height:48px;padding:0 16px;font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--bone)}
  .toc-m summary::-webkit-details-marker{display:none}
  .toc-m summary::after{content:"+";font-size:18px;color:var(--blue-lite)}
  .toc-m[open] summary::after{content:"−"}
  .toc-m ol{margin:0;padding:0 16px 8px;list-style:none;counter-reset:t;border-top:1px solid var(--rule)}
  .toc-m a{font-size:14px;color:var(--ash);text-decoration:none;border-bottom:1px solid var(--rule)}
  .toc-m li:last-child a{border-bottom:0}
  .art-side.toc>.who-k,.art-side.toc>nav{display:none}
}
/* form hints such as the résumé format note: readable, never below 12px */
.field label small{font-size:12px;letter-spacing:.02em;text-transform:none;color:var(--ash)}
