/* Fluid sizing and minmax columns keep translated text and zoom from forcing overflow. */
:root{--gutter:clamp(16px,3vw,40px)}
html,body{overflow-x:clip}body{min-width:0}img,svg,video{max-width:100%}
header,.section,.hero,.article-header,.article-layout,.article-footer{width:100%;min-width:0}
header{gap:clamp(10px,1.5vw,24px);height:auto;min-height:88px;padding-block:14px}
header>.brand{flex-shrink:0;order:0}header nav{order:1;gap:clamp(12px,1.8vw,28px);min-width:0}
header>.button,header>.inline-actions{order:3;flex-shrink:0}.inline-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.menu{order:4;min-width:44px;min-height:44px}
.language-switcher{position:relative;order:2;margin-left:auto;flex-shrink:0;font-size:13px}
.language-switcher summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px;min-height:44px;padding:10px 12px;border:1px solid var(--line);background:var(--paper);font-family:'DM Mono',monospace}
.language-switcher summary::-webkit-details-marker{display:none}.language-switcher summary:after{content:'⌄'}.language-switcher[open] summary:after{content:'⌃'}
.language-options{position:absolute;right:0;top:calc(100% + 8px);width:190px;max-width:calc(100vw - 32px);background:var(--paper);border:1px solid var(--line);box-shadow:0 16px 40px #12131820;padding:6px;z-index:50}
.language-options a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;color:var(--ink);text-decoration:none;min-height:44px}.language-options a:hover,.language-options a[aria-current]{background:#e9e6ff}
:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
.hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);grid-template-rows:min-content min-content min-content 1fr;align-items:start;column-gap:clamp(24px,4vw,64px);padding:clamp(48px,7vw,104px) var(--gutter) 80px;min-height:0}
.hero>.eyebrow,.hero>h1,.hero>p,.hero>.actions{grid-column:1;min-width:0}
.hero h1{font-size:clamp(36px,4.6vw,68px);letter-spacing:-.055em;line-height:1.08;max-width:100%;overflow-wrap:anywhere;hyphens:auto;text-wrap:balance}.hero h1 br{display:none}.hero em,h2 em{letter-spacing:-.04em}
.hero-visual{position:relative;grid-column:2;grid-row:1 / span 4;align-self:start;top:auto;right:auto;width:100%;height:auto;aspect-ratio:4/5;max-height:620px;min-height:0;margin:0;border-radius:50% 0 0 50%}.hero>.scroll{display:none}
.hero .actions{flex-wrap:wrap;gap:20px;align-self:start}.hero .actions>a{max-width:100%;white-space:normal;overflow-wrap:anywhere}
.section h2{font-size:clamp(30px,4vw,58px);letter-spacing:-.045em;overflow-wrap:anywhere;hyphens:auto;text-wrap:balance}
.about{grid-template-columns:minmax(0,.4fr) minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(24px,4vw,55px)}
.section-top,.news .section-top{grid-template-columns:minmax(0,150px) minmax(0,1fr) minmax(0,280px);gap:24px}
.service-grid,.news-grid,.repo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.service,.news-card,.repo-pill,.about>*,.contact-grid>*,.career>*,.section-top>*,.capability>*{min-width:0}
.service h3,.news-card h3,.repo-pill strong{overflow-wrap:anywhere;hyphens:auto}.service p{max-width:100%}.featured p{max-width:65%}.news-card h3{min-height:0}.news-links{flex-wrap:wrap}.news-links a{min-height:44px;display:inline-flex;align-items:center}.repo-pill strong{line-height:1.5}
.contact-grid{grid-template-columns:150px minmax(0,1fr) minmax(0,1fr);gap:24px}
.capability{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,6vw,100px)}.capability-art{min-height:0;align-self:stretch}.capability>div:last-child{padding-block:clamp(56px,8vw,110px)}.career{grid-template-columns:repeat(2,minmax(0,1fr))}
.article-header h1{font-size:clamp(30px,5.5vw,72px);letter-spacing:-.045em;overflow-wrap:anywhere;hyphens:auto;text-wrap:balance}.article-layout{grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:clamp(24px,5vw,66px)}.article-copy{min-width:0;overflow-wrap:anywhere;hyphens:auto}
.article-resources{border-top:1px solid var(--line);padding-top:24px;display:grid;gap:16px}.article-resources h2{font-size:20px;margin:0}.article-resources a{color:var(--ink);overflow-wrap:anywhere}.section{opacity:1;transform:none}
@media(max-width:1100px){header>.button{display:none}.about{grid-template-columns:repeat(2,minmax(0,1fr))}.about>.section-label{grid-column:1 / -1}.section-top,.news .section-top{grid-template-columns:1fr;gap:18px}.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-grid>div{grid-column:1}.contact-grid dl{grid-column:2}}
@media(max-width:1000px){header{padding-inline:var(--gutter)}.menu{display:block}header nav{display:none;position:absolute;top:calc(100% - 4px);left:var(--gutter);right:var(--gutter);padding:16px;background:var(--paper);border:1px solid var(--line);box-shadow:0 18px 36px #12131820;flex-direction:column;align-items:stretch;z-index:30}header nav.open{display:flex}header nav a{padding:12px;min-height:44px;border-bottom:1px solid var(--line)}.hero{grid-template-columns:minmax(0,1fr);padding-top:48px}.hero>.eyebrow,.hero>h1,.hero>p,.hero>.actions{grid-column:1}.hero h1{font-size:clamp(36px,7vw,64px);max-width:850px}.hero p{max-width:650px}.hero-visual{grid-column:1;grid-row:auto;aspect-ratio:16/9;max-height:460px;margin-top:40px;border-radius:160px 0 0 160px}.hero .actions .button{width:auto}.service-grid,.news-grid,.repo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.featured{grid-column:span 2}.capability{grid-template-columns:minmax(0,1fr);gap:0}.capability-art{min-height:340px}.capability>div:last-child{padding:64px var(--gutter)}.article-layout{grid-template-columns:minmax(0,1fr);max-width:860px}.article-layout img{position:static;max-width:680px}.article-header{max-width:860px}}
@media(max-width:600px){header{min-height:74px;padding-block:10px}header>.inline-actions{display:none}.hero,.section,.article-header,.article-layout,.article-footer{padding-inline:var(--gutter)}.hero h1{font-size:clamp(30px,9vw,48px)}.hero-visual{aspect-ratio:4/3;max-height:none;margin-right:0}.about,.service-grid,.news-grid,.repo-grid,.contact-grid,.career{grid-template-columns:minmax(0,1fr)}.featured{grid-column:auto}.featured p{max-width:100%}.service-art{opacity:.35}.about-card{min-height:300px}.contact-grid>div,.contact-grid dl{grid-column:1}.hero .actions{align-items:stretch;flex-direction:column}.hero .actions .button{width:100%}.hero .text-link{align-self:flex-start}.capability-art p{left:var(--gutter)}.career,footer{padding-inline:var(--gutter)}.footer-brand{max-width:100%}.footer-nav{gap:16px}footer small{overflow-wrap:anywhere}.article-header h1{font-size:clamp(28px,8vw,44px)}.article-footer a{max-width:100%;overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.section{opacity:1;transform:none}}
