/* Production portfolio: extend the existing identity and interaction system. */
.site-header nav{gap:clamp(18px,2vw,28px)}
.site-header nav a{white-space:nowrap}
.production-hero{padding-top:64px;padding-bottom:32px}
.production-hero .experience-hero-grid{grid-template-columns:minmax(0,1.9fr) minmax(220px,.75fr);gap:32px;min-height:440px}
.production-hero .hero-copy{min-width:0;position:relative;z-index:1}
.production-hero .hero-copy h1{font-size:clamp(3.4rem,5.65vw,6.5rem);line-height:1.015;letter-spacing:-.045em;max-width:100%;margin:0 0 30px}
.production-hero .hero-copy h1 br{display:none}
.production-hero .hero-copy h1 span{display:block;white-space:normal;text-wrap:balance}
.production-hero .intro{font-size:1rem;line-height:1.85;max-width:690px}
.production-hero .actions{margin-top:29px;gap:12px}
.production-hero .foundry-emblem{min-height:350px;align-self:center;width:100%}
.production-hero .foundry-emblem img{width:min(100%,290px)}
.production-hero .emblem-rings{inset:5% -1%}
.production-hero .emblem-annotation{font-size:.75rem;letter-spacing:.13em;text-align:center}
.production-hero .hero-bottom{margin-top:42px;font-size:.75rem;letter-spacing:.09em}
.work-intro h1{max-width:1050px}
.work-count{display:flex;flex-wrap:wrap;gap:12px 32px;font-size:.8125rem;letter-spacing:.08em;text-transform:uppercase;color:var(--stone);margin-top:26px}
.portfolio-index{display:grid;gap:80px;padding-bottom:90px}
.portfolio-feature{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);align-items:center;gap:48px;min-width:0}
.portfolio-feature.reverse{grid-template-columns:minmax(0,1fr) minmax(0,1.45fr)}
.portfolio-feature.reverse .portfolio-visual{order:2}
.portfolio-feature.reverse .portfolio-copy{order:1}
.portfolio-visual{display:block;min-width:0;margin:0;background:#111310;border:1px solid var(--rule);overflow:hidden}
.portfolio-visual img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:contain}
.portfolio-visual.interface-frame img{aspect-ratio:auto;object-fit:contain}
.portfolio-media-note{display:block;padding:10px 14px;border-top:1px solid var(--rule);font-size:.8125rem;line-height:1.6;color:var(--stone)}
.portfolio-visual>.farm-diagram{height:400px;margin:0;border:0}
.portfolio-copy{min-width:0;padding:20px 0}
.portfolio-copy .eyebrow{margin-bottom:12px;line-height:1.7}
.portfolio-copy .tag{margin-bottom:20px}
.portfolio-copy h2{font-size:clamp(2.9rem,4.65vw,4.8rem);overflow-wrap:break-word}
.portfolio-copy p{font-size:.9375rem;max-width:470px}
.portfolio-copy .text-link{margin-top:6px;font-size:.8125rem}
.supporting-work{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 32px}
.supporting-work>article{min-width:0;border-top:1px solid var(--rule);padding-top:18px}
.supporting-work img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;background:#151815;margin-bottom:24px}
.supporting-work h3{font-size:2.35rem;margin-bottom:15px}
.supporting-work p{font-size:.875rem;line-height:1.75}
.supporting-work .tag{font-size:.75rem;line-height:1.6;margin-bottom:17px}
.supporting-work .eyebrow{margin-bottom:10px;line-height:1.6}
.supporting-work .text-link{font-size:.8125rem}
.software-feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:55px;align-items:center}
.software-copy{min-width:0}
.software-copy h2{font-size:clamp(2.8rem,4.5vw,4.5rem)}
.software-copy h3{font-size:clamp(2.7rem,4vw,3.8rem)}
.software-copy p{max-width:580px;font-size:.9375rem}
.software-feature figure{margin:0;min-width:0}
.software-feature figure img{display:block;width:100%;height:auto;object-fit:contain}
.software-feature figcaption,.software-hero figcaption{font-size:.8125rem;line-height:1.7;color:var(--stone);margin-top:14px}
.interface-frame{margin:0;border:1px solid #766453;background:#12191b;box-shadow:0 20px 60px #0003;min-width:0}
.interface-frame img{display:block;width:100%;height:auto;object-fit:contain}
.interface-frame figcaption{padding:0 18px 16px}
.software-hero{padding-bottom:60px}
.software-hero h1{max-width:1050px}
.software-hero .lede{max-width:820px}
.software-hero>.interface-frame,.software-hero>figure{margin-top:44px}
.software-notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:70px}
.software-notes>*{min-width:0}
.software-notes h2{font-size:clamp(2.4rem,4vw,3.5rem)}
.software-notes h3{font-size:2.1rem}
.software-notes p,.software-notes li{font-size:.9375rem}
.activity-section{background:var(--ink);border-block:1px solid var(--rule)}
.activity-list{display:grid;border-top:1px solid var(--rule);padding:0;margin:0}
.activity-list :is(a,.activity-item){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,auto) 24px;gap:25px;align-items:center;padding:23px 0;border-bottom:1px solid var(--rule);min-height:78px;transition:background .2s,color .2s}
.activity-list a:hover{background:#c17a4e0b}
.activity-list :is(a,.activity-item)>span:first-child{font-family:var(--display);font-size:2rem;line-height:1.15;letter-spacing:-.02em}
.activity-list :is(a,.activity-item)>span:nth-child(2){font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--stone)}
.activity-list :is(a,.activity-item)>span:last-child:not(:nth-child(2)){font-size:1rem;color:var(--bright);text-align:right}
.foundry-directions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.foundry-directions>article{min-width:0;border-bottom:1px solid var(--rule);padding-bottom:25px}
.foundry-directions img{display:block;width:100%;height:auto;aspect-ratio:16/11;object-fit:contain;background:#111510;margin-bottom:25px}
.foundry-directions h3{font-size:2.35rem;margin-bottom:15px}
.foundry-directions p{font-size:.875rem;line-height:1.75;margin-bottom:0}
.foundry-directions .eyebrow{margin-bottom:15px}
@media(min-width:1600px){
  .production-hero{padding-top:85px}
  .production-hero .experience-hero-grid{min-height:480px}
  .production-hero .hero-copy h1{font-size:6rem}
  .production-hero .foundry-emblem{min-height:380px}
  .production-hero .foundry-emblem img{width:310px}
}
@media(max-width:1100px){
  .production-hero .experience-hero-grid{grid-template-columns:minmax(0,1.8fr) minmax(180px,.7fr);gap:24px}
  .production-hero .hero-copy h1{font-size:clamp(3rem,5.7vw,4.8rem)}
  .production-hero .foundry-emblem{min-height:280px}
  .production-hero .foundry-emblem img{width:min(100%,225px)}
  .production-hero .emblem-annotation{letter-spacing:.07em}
  .portfolio-feature,.portfolio-feature.reverse{gap:32px}
  .portfolio-index{gap:62px}
  .portfolio-copy h2{font-size:3.2rem}
  .supporting-work,.foundry-directions{gap:24px}
  .supporting-work h3,.foundry-directions h3{font-size:2rem}
  .software-feature{gap:35px}
  .software-notes{gap:45px}
}
@media(max-width:800px){
  .js .site-header nav.is-open{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 18px;padding:8px 0 12px}
  .site-header nav a{font-size:.8125rem;min-height:44px}
  .production-hero{padding-top:40px}
  .production-hero .experience-hero-grid{grid-template-columns:minmax(0,1fr) 170px;gap:24px;min-height:0}
  .production-hero .hero-copy h1{font-size:clamp(2.9rem,6.4vw,3.65rem);line-height:1.04}
  .production-hero .intro{font-size:.9375rem;line-height:1.75}
  .production-hero .foundry-emblem{min-height:230px}
  .production-hero .foundry-emblem img{width:160px}
  .production-hero .emblem-annotation{display:none}
  .production-hero .hero-bottom{margin-top:35px}
  .portfolio-feature,.portfolio-feature.reverse{grid-template-columns:1fr;gap:25px}
  .portfolio-feature.reverse .portfolio-visual,.portfolio-feature.reverse .portfolio-copy{order:initial}
  .portfolio-copy{padding:0}
  .portfolio-copy h2{font-size:3.4rem}
  .portfolio-copy p{max-width:680px}
  .portfolio-visual img{aspect-ratio:16/9}
  .portfolio-index{gap:66px;padding-bottom:65px}
  .supporting-work{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 24px}
  .software-feature{grid-template-columns:1fr;gap:30px}
  .software-feature .software-copy{order:0}
  .software-feature figure{order:1}
  .software-notes{gap:35px}
  .activity-list :is(a,.activity-item){gap:18px}
  .activity-list :is(a,.activity-item)>span:first-child{font-size:1.8rem}
  .foundry-directions{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 24px}
}
@media(max-width:540px){
  .production-hero{padding-top:24px;padding-bottom:26px}
  .production-hero .experience-hero-grid{display:block;position:relative}
  .production-hero .hero-copy{padding-top:83px}
  .production-hero .hero-copy .eyebrow{top:5px;left:0;max-width:calc(100% - 94px);padding-right:0;font-size:.75rem;line-height:1.65;letter-spacing:.11em}
  .production-hero .hero-copy h1{font-size:clamp(2.65rem,11.9vw,3.65rem);line-height:1.02;letter-spacing:-.04em;margin-bottom:23px}
  .production-hero .hero-copy h1 span{text-wrap:balance}
  .production-hero .intro{font-size:.9375rem;line-height:1.7;margin-bottom:0}
  .production-hero .foundry-emblem{position:absolute;top:0;right:0;width:76px;height:76px;min-height:0}
  .production-hero .foundry-emblem img{width:67px}
  .production-hero .emblem-rings{inset:0}
  .production-hero .actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:10px;margin-top:24px}
  .production-hero .button{font-size:.75rem;min-height:61px;padding:12px 10px;gap:8px;text-align:left;justify-content:space-between;letter-spacing:0}
  .production-hero .button span{flex-shrink:0}
  .production-hero .hero-bottom{font-size:.75rem;letter-spacing:.035em;gap:16px;margin-top:29px;line-height:1.7;align-items:start}
  .production-hero .hero-bottom>span:first-child{max-width:185px}
  .production-hero .hero-bottom>a{white-space:normal;text-align:right;flex-shrink:0;max-width:110px}
  .work-intro h1{font-size:3.6rem}
  .work-count{margin-top:21px;font-size:.8125rem}
  .portfolio-index{gap:52px}
  .portfolio-feature,.portfolio-feature.reverse{gap:23px}
  .portfolio-copy h2{font-size:3rem}
  .portfolio-copy .eyebrow{margin-bottom:16px}
  .portfolio-copy p{font-size:.9375rem}
  .portfolio-visual img{aspect-ratio:4/3}
  .portfolio-visual.interface-frame img{aspect-ratio:auto}
  .portfolio-visual>.farm-diagram{height:300px}
  .supporting-work,.foundry-directions{grid-template-columns:1fr;gap:35px}
  .supporting-work img{aspect-ratio:4/3;margin-bottom:23px}
  .supporting-work h3,.foundry-directions h3{font-size:2.5rem}
  .supporting-work p,.foundry-directions p{font-size:.9375rem}
  .software-hero{padding-bottom:45px}
  .software-hero h1{font-size:3.6rem;overflow-wrap:break-word}
  .software-hero>.interface-frame,.software-hero>figure{margin-top:29px}
  .software-copy h2{font-size:3rem}
  .software-copy p,.software-notes p,.software-notes li{font-size:.9375rem}
  .software-notes{grid-template-columns:1fr;gap:30px}
  .software-notes h2{font-size:2.75rem}
  .interface-frame figcaption{padding:0 13px 14px}
  .activity-list :is(a,.activity-item){grid-template-columns:minmax(0,1fr) 22px;gap:8px 16px;min-height:92px;padding:20px 0}
  .activity-list :is(a,.activity-item)>span:first-child{grid-column:1;font-size:1.85rem}
  .activity-list :is(a,.activity-item)>span:nth-child(2){grid-column:1;font-size:.75rem;letter-spacing:.05em}
  .activity-list :is(a,.activity-item)>span:last-child:not(:nth-child(2)){grid-column:2;grid-row:1/3;align-self:center}
  .foundry-directions img{aspect-ratio:16/10;margin-bottom:23px}
}
@media(prefers-reduced-motion:reduce){.activity-list a{transition:none}}
