/* Readable captions at every breakpoint; display headings keep their hierarchy. */
body.software-page.unified-page .eyebrow,
body.software-page.unified-page .mono{font-size:12px;letter-spacing:.9px;line-height:1.6}
body.software-page.unified-page .desktop-nav{font-size:14px;gap:24px}
body.software-page.unified-page .header-contact{font-size:13px;gap:16px}
body.software-page.unified-page .hero-description{font-size:16px;line-height:1.8}
body.software-page.unified-page .button,
body.software-page.unified-page .text-link{font-size:13px}
body.software-page.unified-page .hero-actions{flex-wrap:wrap;gap:18px 24px}
body.software-page.unified-page .hero-signoff{font-size:13px;flex-wrap:wrap}
body.software-page.unified-page .proof-strip p{font-size:13px;line-height:1.6;max-width:170px}
body.software-page.unified-page .partners-caption{font-size:14px}
body.software-page.unified-page .partners-caption>span{font-size:12px;white-space:normal}
body.software-page.unified-page .section-heading>p,
body.software-page.unified-page .work-intro>p,
body.software-page.unified-page .expertise-card>p,
body.software-page.unified-page .creative-intro>p:not(.eyebrow),
body.software-page.unified-page .creative-services p,
body.software-page.unified-page .about-copy>p:not(.eyebrow){font-size:15px;line-height:1.85}
body.software-page.unified-page .expertise-card li{font-size:13px;line-height:1.7}
body.software-page.unified-page .expertise-top{gap:14px}
body.software-page.unified-page .expertise-top>.mono{max-width:calc(100% - 54px)}
body.software-page.unified-page .engineering-note{font-size:13px;align-items:flex-start;gap:18px 28px}
body.software-page.unified-page .engineering-note>div{font-size:13px;flex-wrap:wrap;gap:10px 22px}
body.software-page.unified-page .engineering-note>a{font-size:13px}
body.software-page.unified-page .case-client{font-size:12px;letter-spacing:.8px;line-height:1.7}
body.software-page.unified-page .case-narrative dt{font-size:13px}
body.software-page.unified-page .case-narrative dd{font-size:15px;line-height:1.8}
body.software-page.unified-page .case-narrative dl>div{grid-template-columns:65px minmax(0,1fr)}
body.software-page.unified-page .case-numbers>div>span{font-size:13px}
body.software-page.unified-page .case-outcome>small{font-size:12px;line-height:1.75;max-width:none}
body.software-page.unified-page .manual-result{font-size:14px}
body.software-page.unified-page .filter,
body.software-page.unified-page .reference-filter{font-size:13px;min-height:44px}
body.software-page.unified-page .filter sup,
body.software-page.unified-page .reference-filter sup{font-size:12px}
body.software-page.unified-page .project-number{font-size:12px;letter-spacing:.7px}
body.software-page.unified-page .project-visual{padding-top:47px}
body.software-page.unified-page .project-meta{flex-wrap:wrap;gap:10px 12px;min-height:0}
body.software-page.unified-page .project-meta>span:first-child{flex:1 1 165px;min-width:0}
body.software-page.unified-page .project-meta small{font-size:13px;line-height:1.6}
body.software-page.unified-page .project-type{display:block;font-size:12px;line-height:1.5;white-space:normal;flex-shrink:0}
body.software-page.unified-page .project-stage{font-size:12px;line-height:1.5}
body.software-page.unified-page .project-count,
body.software-page.unified-page .reference-count{font-size:12px;line-height:1.7}
body.software-page.unified-page .portfolio-show-all,
body.software-page.unified-page .references-end>a{font-size:13px}
body.software-page.unified-page .about-stamp{font-size:12px;letter-spacing:.5px;line-height:1.8}
body.software-page.unified-page .approach-steps>div{grid-template-columns:25px 90px minmax(0,1fr);gap:12px}
body.software-page.unified-page .approach-steps>div>span{font-size:12px}
body.software-page.unified-page .approach-steps strong{font-size:14px}
body.software-page.unified-page .approach-steps p{font-size:14px;line-height:1.75}
body.software-page.unified-page .awards-inner>p{font-size:14px}
body.software-page.unified-page .awards-inner>p>span{font-size:12px;letter-spacing:.6px}
body.software-page.unified-page .faq-list summary{font-size:16px;line-height:1.6}
body.software-page.unified-page .faq-list summary>span{flex-shrink:0}
body.software-page.unified-page .faq-list details p{font-size:15px;line-height:1.85}
body.software-page.unified-page .contact-orb>small{font-size:12px;letter-spacing:1.3px}
body.software-page.unified-page .contact-bottom address{font-size:15px;line-height:1.8}
body.software-page.unified-page .map-link{font-size:13px;flex-shrink:0}
body.software-page.unified-page .footer-inner{flex-wrap:wrap;gap:25px}
body.software-page.unified-page .footer-inner p{font-size:12px;line-height:1.7}
body.software-page.unified-page .footer-links{flex-wrap:wrap;gap:16px 24px;font-size:13px}
body.software-page.unified-page .privacy-button,
body.software-page.unified-page .motion-preference{font-size:13px;min-height:44px}
body.software-page.unified-page .dialog-copy>p:not(.eyebrow),
body.software-page.unified-page #project-dialog-details,
body.software-page.unified-page .privacy-dialog>p:not(.eyebrow){font-size:15px;line-height:1.85}
body.software-page.unified-page #project-dialog-stage{font-size:12px}
body.software-page.unified-page .dialog-tags span{font-size:12px}
body.software-page.unified-page .video-external{font-size:13px}
body.software-page.unified-page .privacy-dialog{max-height:90dvh;overflow:auto}
body.software-page.unified-page .discovery-eyebrow,
body.software-page.unified-page .discovery-meta,
body.software-page.unified-page .discovery-tile-number,
body.software-page.unified-page .discovery-board-labels,
body.software-page.unified-page .discovery-signature{font-size:12px;letter-spacing:.5px}
body.software-page.unified-page .discovery-tile-number{opacity:.85;line-height:1}
body.software-page.unified-page #discovery-description{font-size:15px;line-height:1.75}
body.software-page.unified-page .discovery-level-name{font-size:15px}
body.software-page.unified-page [data-discovery-result],
body.software-page.unified-page .discovery-hint{font-size:14px}
body.software-page.unified-page .discovery-secondary-actions button,
body.software-page.unified-page .discovery-next{font-size:13px}
body.software-page.unified-page .discovery-meta{flex-wrap:wrap}

/* The scene scales; its mobile caption does not. */
.studio-visual{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.studio-caption{display:none}
body.software-page.unified-page .studio-art .art-caption{font-size:12px}
body.software-page.unified-page .studio-art .sculpture-word{font-size:12px;letter-spacing:1px;left:54px}
body.software-page.unified-page .studio-art .art-coordinate{font-size:12px;letter-spacing:.4px}
body.software-page.unified-page .studio-art .floating-label strong{font-size:14px;line-height:1.5}
body.software-page.unified-page .studio-art .floating-label small{font-size:12px}
body.software-page.unified-page .studio-art .code-label{width:253px}
body.software-page.unified-page .studio-art .design-label{width:267px;right:-55px}
@media(max-width:1150px){
  body.software-page.unified-page .studio-art :is(.art-caption,.art-coordinate,.sculpture-word,.floating-label){display:none}
  .studio-caption{display:block;width:100%;max-width:530px;padding:0 6px 22px;color:var(--muted)}
  .studio-caption>p{font-size:13px;letter-spacing:.5px;padding-bottom:12px;border-bottom:1px solid var(--line)}
  .studio-caption-labels{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:14px}
  .studio-caption-labels strong{display:block;font-size:14px;color:var(--ink);line-height:1.5}
  .studio-caption-labels span{display:block;font-size:12px;line-height:1.7;margin-top:4px}
  .studio-caption-notes{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px 20px;margin-top:18px;font:12px/1.7 var(--body);letter-spacing:.3px}
  body.software-page.unified-page .desktop-nav{gap:18px}
  body.software-page.unified-page .header-contact{padding:12px 15px}
  body.software-page.unified-page .about-grid{gap:35px;grid-template-columns:.8fr 1.2fr}
}
@media(min-width:701px) and (max-width:1050px){
  body.software-page.unified-page .partners-inner{grid-template-columns:160px repeat(5,minmax(0,1fr));gap:22px}
  body.software-page.unified-page .proof-strip>div{align-items:flex-start;gap:15px}
  body.software-page.unified-page .contact-bottom{flex-wrap:wrap;gap:22px 30px}
  body.software-page.unified-page .contact-bottom>div:nth-child(2){padding-left:30px}
}
@media(max-width:1000px){
  body.software-page.unified-page .desktop-nav{display:none}
  body.software-page.unified-page .menu-toggle{display:flex;flex-direction:column;gap:5px;background:none;padding:10px 0 10px 5px;min-width:28px}
  body.software-page.unified-page .menu-toggle span{height:1.5px;width:21px;background:var(--ink);transition:transform .2s}
  body.software-page.unified-page .menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.25px) rotate(45deg)}
  body.software-page.unified-page .menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.25px) rotate(-45deg)}
  body.software-page.unified-page .header-contact{margin-left:auto}
  body.software-page.unified-page .mobile-nav:not([hidden]){display:flex;flex-direction:column;padding:12px 36px 22px;gap:0;background:var(--paper);border-top:1px solid var(--line)}
  body.software-page.unified-page .mobile-nav a{font-size:15px;padding:12px 0;border-bottom:1px solid var(--line)}
}
@media(min-width:701px) and (max-width:900px){
  body.software-page.unified-page .proof-strip>div{flex-direction:column}
  body.software-page.unified-page .about-grid{grid-template-columns:minmax(0,1fr)}
  body.software-page.unified-page .about-art{height:410px}
  body.software-page.unified-page .about-art>img{top:70px;right:40px}
  body.software-page.unified-page .about-art>p{bottom:90px}
  body.software-page.unified-page .about-art .about-stamp{bottom:24px}
}
@media(max-width:700px){
  body.software-page.unified-page .hero .eyebrow{font-size:12px;letter-spacing:.55px;align-items:baseline;gap:9px}
  body.software-page.unified-page .hero .status-dot{flex-shrink:0}
  body.software-page.unified-page .header-contact{display:none}
  body.software-page.unified-page .theme-toggle{margin-left:auto}
  body.software-page.unified-page .mobile-nav:not([hidden]){padding-inline:20px}
  body.software-page.unified-page .hero-signoff{gap:12px}
  body.software-page.unified-page .proof-strip{gap:25px}
  body.software-page.unified-page .proof-strip>div{min-width:0;align-items:flex-start}
  body.software-page.unified-page .proof-strip p{font-size:13px;max-width:none}
  body.software-page.unified-page .partners-inner{grid-template-columns:repeat(3,minmax(0,1fr))}
  body.software-page.unified-page .partners-caption{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:18px}
  body.software-page.unified-page .partners-caption>span{margin:0}
  body.software-page.unified-page .engineering-note>div{gap:10px 18px}
  body.software-page.unified-page .approach-steps>div{grid-template-columns:25px minmax(0,1fr);gap:7px 12px}
  body.software-page.unified-page .approach-steps p{grid-column:2}
  body.software-page.unified-page .about-art>p{bottom:95px}
  body.software-page.unified-page .about-art .about-stamp{bottom:26px}
  body.software-page.unified-page .awards-inner .eyebrow{letter-spacing:.5px}
  body.software-page.unified-page .awards-inner>p{margin-left:0}
  body.software-page.unified-page .contact-heading{padding-bottom:calc((100vw - 40px)/3 + 185px)}
  body.software-page.unified-page .contact-heading .eyebrow{font-size:12px;max-width:270px;letter-spacing:.7px}
  body.software-page.unified-page .contact-orb{width:96px;height:96px}
  body.software-page.unified-page .contact-orb>small{letter-spacing:.8px}
  body.software-page.unified-page .footer-inner>p{margin-left:0;flex:1 1 230px}
  body.software-page.unified-page .footer-links{justify-content:flex-start;gap:12px 24px}
  .studio-caption{padding:0 0 25px;margin-top:-8px}
}
@media(max-width:400px){
  .studio-caption-labels{gap:12px}
  body.software-page.unified-page .proof-strip{gap:22px 15px}
  body.software-page.unified-page .proof-strip>div{flex-direction:column;gap:12px}
  body.software-page.unified-page .partners-caption{align-items:flex-start}
  body.software-page.unified-page .dialog-copy{padding-inline:20px}
  body.software-page.unified-page .discovery-secondary-actions{gap:16px;flex-wrap:wrap}
}

/* Use the experience figure as the shared scale for all four metrics. */
body.software-page.unified-page .proof-strip{--proof-value-size:50.75px;--proof-symbol-size:40.6px;grid-template-columns:repeat(4,minmax(0,1fr))}
body.software-page.unified-page .proof-strip>div>strong{font-size:var(--proof-value-size);flex:none}
body.software-page.unified-page .proof-strip>div>strong>span{font-size:var(--proof-symbol-size)}
body.software-page.unified-page .proof-strip>div>p{font-size:18.2px;line-height:1.4;min-width:0}
body.software-page.unified-page .proof-strip>.proof-experience>p{font-size:18.85px}
@media(max-width:1150px){body.software-page.unified-page .proof-strip{--proof-value-size:44.95px}}
@media(min-width:701px) and (max-width:1050px){
  body.software-page.unified-page .proof-strip>div{flex-direction:column;gap:10px}
}
@media(max-width:700px){
  body.software-page.unified-page .proof-strip{--proof-value-size:46.4px;--proof-symbol-size:31.9px;grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:580px){
  body.software-page.unified-page .proof-strip>div{flex-direction:column;gap:10px}
}
