/* Shared visual refinements. Original page styles remain the base. */
:root{--muted:#a6b5c5;--mono:ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace}
html{scroll-padding-top:24px}
body{font-size:16px;-webkit-font-smoothing:antialiased}
h1,h2,h3{text-wrap:balance}
p{text-wrap:pretty}
.eyebrow,.kicker,.number,.principles article>span,.status,.breadcrumb,.terminal pre,.terminal-label,.workflow{font-family:var(--mono)}
.eyebrow,.kicker{letter-spacing:.13em;line-height:1.6}
.intro{color:#b9c7d5;max-width:58ch;line-height:1.75}
.section-note{color:var(--muted);max-width:43ch;line-height:1.75}
.topbar{height:auto;min-height:90px;gap:24px;padding:18px 0}
.topbar nav{display:flex;align-items:center;flex-wrap:wrap;gap:6px 22px;font-size:.82rem}
.topbar nav a{display:inline-flex;align-items:center;min-height:44px;position:relative}
.topbar nav a[aria-current="page"]{color:var(--accent)}
.topbar nav a[aria-current="page"]:after{content:"";position:absolute;bottom:3px;left:0;right:0;height:2px;background:var(--accent)}
a:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
.button{display:inline-flex;align-items:center;min-height:46px;transition:transform .2s,border-color .2s,background .2s}
.button:not(.primary):hover{border-color:var(--accent);background:#102a2a}
.cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.card{display:flex;flex-direction:column;min-width:0;padding:30px 26px;background:linear-gradient(145deg,#142231,#101a27);border-radius:12px}
.card h3{margin:28px 0 12px;line-height:1.3;font-size:1.28rem}
.card p{line-height:1.75;color:var(--muted)}
.card-link{transition:border-color .2s,transform .2s,box-shadow .2s}
.card-link:hover,.card-link:focus-visible{border-color:var(--accent);transform:translateY(-3px);box-shadow:0 12px 34px #0003}
.card-cta{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:auto;padding-top:26px;color:var(--accent);font-size:.85rem;font-weight:650}
.card-cta b{font-size:1.1rem;font-weight:400;transition:transform .2s}
.card-link:hover .card-cta b{transform:translate(2px,-2px)}
.home .hero{grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr);gap:60px;min-height:620px;padding:75px 0 85px}
.home .hero:before{right:0;width:75%}
.home .hero h1{font-size:clamp(3.4rem,6.6vw,6.1rem);letter-spacing:-.065em}
.home .graphic{min-width:0;min-height:390px;isolation:isolate}
.home .graphic:before{inset:-20px -8px;border:0;border-radius:0;box-shadow:none;background:linear-gradient(#68e1c10b 1px,transparent 1px),linear-gradient(90deg,#68e1c10b 1px,transparent 1px);background-size:32px 32px;mask-image:radial-gradient(ellipse,#000 25%,transparent 72%)}
.home .terminal{max-width:420px;transform:rotate(-2deg);border-color:#3d5869;box-shadow:0 28px 75px #0006}
.terminal-label{margin-left:auto;font-size:.65rem;color:#a6b5c5;letter-spacing:.04em}
.home .terminal pre{padding:24px;line-height:1.9;font-size:.8rem;overflow-wrap:anywhere}
.home .terminal .dim{color:#9badbd}
.home .terminal .blue{color:#94c2ff}
.home .section{padding:80px 0}
.home .mission-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr);gap:65px;align-items:start}
.home .mission-layout .section-header{display:block;margin-bottom:22px}
.home .mission-layout .section-note{margin-top:24px;font-size:1.07rem;color:#c1cfdb}
.home .mission-lead{font-size:.98rem;line-height:1.8;color:var(--muted);margin-bottom:24px}
.home .principles{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 25px}
.home .principles article{padding:22px 0;background:none;border:0;border-top:1px solid var(--line);border-radius:0}
.home .principles h3{font-size:1.08rem;margin:9px 0 7px;letter-spacing:-.02em}
.home .principles p{font-size:.88rem;line-height:1.7}
.home #expertise .card{min-height:280px}
.lab-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:18px}
.featured-project{grid-row:span 3;padding:38px;background:radial-gradient(ellipse at top left,#19443e70,transparent 70%),linear-gradient(145deg,#142431,#101a27);border-color:#3b615c}
.featured-project h3{font-size:clamp(1.9rem,3vw,2.7rem);line-height:1.16;letter-spacing:-.045em;margin:28px 0 19px}
.status{display:inline-flex;align-self:flex-start;align-items:center;gap:9px;padding:6px 10px;margin-top:20px;border:1px solid #365952;border-radius:5px;color:#b7ddcf;font-size:.69rem;line-height:1.6}
.status:before{content:"";width:6px;height:6px;background:var(--accent);border-radius:50%;flex-shrink:0}
.featured-project .project-note{font-size:.84rem;margin-top:18px}
.workflow{margin:30px 0;padding:24px 20px;border:1px solid #36564f;border-radius:9px;background:#09151d80;font-size:.75rem;color:#c0d1dc}
.workflow-title{display:block;color:var(--muted);font-size:.65rem;letter-spacing:.09em;text-transform:uppercase;margin-bottom:20px}
.workflow-steps{display:flex;align-items:center;justify-content:space-between;gap:8px}
.workflow-steps span{padding:10px 7px;border:1px solid #45665f;border-radius:5px;text-align:center}
.workflow-steps i{font-style:normal;color:var(--accent)}
.workflow-foot{display:block;text-align:center;margin-top:19px;font-size:.68rem;color:#a3beb8}
.lab-grid>.card:not(.featured-project){padding:25px 28px}
.lab-grid>.card:not(.featured-project) h3{margin:15px 0 9px}
.lab-grid .card-cta{padding-top:20px}
.lab-note{line-height:1.75;max-width:76ch}
.about p{max-width:60ch;color:#b2c1d0;line-height:1.8}
.footer{line-height:1.8}
.breadcrumb{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:30px;font-size:.75rem;color:var(--muted)}
.breadcrumb a{color:var(--accent);padding:5px 0}
.detail main{padding-top:54px}
.detail main p{max-width:68ch;line-height:1.85;color:#b2c1d0}
.detail main>.intro{max-width:60ch;font-size:1.12rem;color:#c0cedb}
.detail main h2{letter-spacing:-.035em}
.detail main section{padding:36px 0}
.detail .philosophy-intro{padding:0 0 20px}
.detail .panel{border-radius:12px}
.detail .panel p{font-size:.94rem}
.detail .links a,.detail .small-links a{padding:8px 0}
.detail main p a{color:var(--accent);text-decoration:underline;text-underline-offset:4px}
@media(max-width:1000px){.home .hero{gap:30px}.home .mission-layout{gap:35px}.featured-project{padding:28px}.workflow{padding:20px 12px}.workflow-steps{gap:5px;font-size:.68rem}}
@media(max-width:850px){.home .hero{grid-template-columns:1fr;padding:60px 0;gap:30px;min-height:0}.home .hero h1{max-width:12ch}.home .graphic{min-height:350px;max-width:500px;width:100%;justify-self:center}.home .section{padding:60px 0}.home .mission-layout{grid-template-columns:1fr;gap:20px}.home .mission-layout .section-note{max-width:55ch}.home .cards{grid-template-columns:1fr}.home #expertise .card{min-height:0}.lab-grid{grid-template-columns:1fr}.featured-project{grid-row:auto}.workflow{max-width:430px}.workflow-steps{font-size:.75rem}.detail .cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.topbar{align-items:flex-start;flex-direction:column;gap:10px;padding:20px 0 16px}.topbar nav{width:100%;gap:0 20px;font-size:.8rem}.topbar nav a:nth-child(2){display:inline-flex}.shell{padding-left:22px;padding-right:22px}.detail main{padding-top:35px;padding-bottom:65px}.detail main h1{font-size:clamp(2.5rem,9vw,4rem)}.detail .philosophy-intro h1{font-size:clamp(2.5rem,9vw,4rem)}.breadcrumb{margin-bottom:22px}.detail .footer{flex-wrap:wrap}}
@media(max-width:520px){.home .hero{padding:42px 0 48px}.home .hero h1{font-size:clamp(3.1rem,12.5vw,4rem);margin-top:20px}.home .eyebrow{font-size:.65rem;letter-spacing:.08em}.home .hero .intro{font-size:1rem}.home .graphic{min-height:320px}.home .terminal{transform:none}.home .terminal pre{padding:20px 17px;font-size:.74rem}.terminal-label{font-size:.6rem}.home .section{padding:45px 0}.home .principles{grid-template-columns:1fr}.home .principles article{display:grid;grid-template-columns:28px minmax(0,1fr);column-gap:12px;padding:17px 0}.home .principles article>span{grid-row:span 2;padding-top:2px}.home .principles h3{margin:0 0 5px}.home .principles p{grid-column:2}.section-header{margin-bottom:25px}.card,.lab-grid>.card:not(.featured-project){padding:24px}.featured-project h3{font-size:2rem}.status{font-size:.64rem}.workflow{padding:20px 12px}.workflow-steps{font-size:.65rem}.workflow-steps span{padding:9px 5px}.home .actions{gap:10px;margin-top:28px}.home .about{gap:18px}.detail .cards{grid-template-columns:1fr}.detail .grid{grid-template-columns:1fr}.detail main section{padding:28px 0}.detail .philosophy-grid .card{min-height:0}.footer{padding:28px 0 35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card-link,.button,.card-cta b{transition:none}.card-link:hover,.card-link:focus-visible,.button:hover,.card-link:hover .card-cta b{transform:none}}
