/* Human Life Labs — a shared editorial rhythm, from care to discovery. */
:root{--muted:#52657f;--line:#d9e4f3}
.section{padding-top:112px;padding-bottom:112px}
h2{text-wrap:balance;letter-spacing:-.045em}
.header nav{font-size:13px}
.nav-contact{min-height:46px;padding:14px 21px;gap:30px}
.button{min-height:52px;font-size:13px;padding:18px 23px}
.hero-copy{padding-block:88px}
.hero-foot{font-size:9px;padding-block:26px}
.hero-foot a{font-family:var(--sans);font-size:12px;letter-spacing:0}
.intro-grid{gap:8%;grid-template-columns:1.05fr 1fr}
.intro-text>p:first-child{font-size:clamp(22px,2vw,28px);line-height:1.45;margin-bottom:24px}
.intro-text>p:nth-child(2){font-size:15px;line-height:1.85;max-width:510px}
.text-link{font-size:13px;padding-block:16px;min-height:48px}
.fields{margin-top:64px;gap:0}
.fields>a{padding-block:30px;align-items:flex-start;gap:22px;font-size:24px;letter-spacing:-.7px}
.fields i{padding-top:7px;color:#2456b2}
.fields small{display:block;font-size:12px;font-weight:400;letter-spacing:0;color:var(--muted);line-height:1.6;margin-top:9px}
.fields b{color:#255de4}
.portfolio{padding-top:24px}
.section-heading{margin-bottom:48px;align-items:center}
.section-heading>p{font-size:15px;line-height:1.8}
.company-grid{gap:36px}
.company-card{border-color:#d8e3f2;border-radius:12px;background:#fff}
.card-art{min-height:455px}
.card-body{padding:48px clamp(30px,4vw,64px)}
.card-body h3{font-size:56px;letter-spacing:-2.8px}
.card-body h3.research-title{font-size:46px}
.card-body>p{font-size:25px;line-height:1.35;letter-spacing:-.7px;margin:24px 0 18px}
.card-description{font-size:14px;line-height:1.85;max-width:420px}
.venture-tags{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:23px 0 5px}
.venture-tags li{font-size:10px;line-height:1.4;letter-spacing:.1px;padding:7px 10px;border:1px solid #dbe6f5;border-radius:30px;color:#3f5e8b;background:#f9fbff}
.card-body .text-link{font-size:12px;margin-top:18px;border-bottom-color:#c9d9ef}
.workflow{background:radial-gradient(ellipse at 48% 48%,#fff 0,#eef5ff 57%,#e5efff 100%)}
.flow-core{background:#0000ff;color:#fff;border:1px solid #0000ff;box-shadow:0 20px 48px #0000ff25;border-radius:26px}
.flow-node{border-radius:9px;font-size:11px;padding:15px;box-shadow:0 10px 35px #133e8610}
.flow-a{left:6%;top:22%}
.flow-b{right:6%;bottom:22%}
.orbit{width:325px;height:325px;border-color:#4e85df40}
.graphic-index{font-family:var(--mono);font-size:112px;letter-spacing:-9px;bottom:27px;right:25px;color:#336be412}
.discovery{background:radial-gradient(ellipse at 55% 45%,#f8fcff,#e7f0ff 75%)}
.discovery .graphic-index{color:#336be412}
.research-sculpture{position:absolute;inset:8% 10%;display:grid;place-items:center}
.research-sculpture img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 20px 25px #1a469212);transition:transform 1s var(--ease)}
.research:hover .research-sculpture img{transform:scale(1.035)}
.purpose{min-height:670px}
.purpose-copy{padding-top:66px}
.purpose-copy>p:last-child{font-size:14px;max-width:58%;line-height:1.9}
.purpose-art{inset:0 -5% 100px 42%}
.purpose-bottom{color:#a5bde3;border-color:#adc7f12e}
.approach .section-heading{align-items:center}
.principles{margin-top:48px}
.principle{border-color:#d9e4f3}
.principle-toggle{padding-block:32px;grid-template-columns:58px 60px 1fr 32px}
.principle-title{font-size:29px;letter-spacing:-.9px}
.principle-toggle svg{width:36px;height:36px}
.principle-plus{display:grid;place-items:center;width:32px;height:32px;border:1px solid #d9e4f3;border-radius:50%;font-size:20px;color:#0000ff}
.principle-content{padding-left:148px;padding-bottom:32px}
.principle-content p{font-size:15px;line-height:1.85;max-width:580px}
.principle:not(.closed){background:#f7faff}
.contact{padding-block:88px;background:linear-gradient(115deg,#0808b8 0%,#0000ff 58%,#2466ff 100%);color:#fff}
.contact h2{font-size:clamp(52px,6.5vw,94px);line-height:1.04;letter-spacing:-.055em;margin-bottom:28px}
.contact h2 em{color:#b7d9ff}
.contact p:last-child{color:#e0eaff;font-size:15px;line-height:1.8}
.round-cta{width:188px;height:188px;background:#fff;color:#0000ff;border-color:#fff;box-shadow:0 20px 60px #00005722;backdrop-filter:none}
.round-cta>span:last-child{font-size:13px}
.round-cta:hover{background:#dceeff;color:#0000bb;border-color:#dceeff;box-shadow:0 24px 65px #00005740}
.contact-rings{right:-50px}
.contact-rings i{border-color:#ffffff30}
.footer{padding-top:56px;padding-bottom:30px}
.footer-top{padding-bottom:38px}
.footer-top>p{font-size:13px}
.footer-bottom{font-size:11px;line-height:1.7}
.footer-bottom button,.back-top{font-size:11px;min-height:32px}
.footer-bottom a:hover,.footer-bottom button:hover,.back-top:hover{color:#0000ff}
.footer-bottom>span:last-child{font-size:8px}
dialog{border-radius:12px;border-color:#d9e4f3;padding:48px}
.dialog-close{height:40px;width:40px;right:10px;top:8px;border-radius:50%;background:#f2f6fd}
.dialog-close:hover{background:#e5efff;color:#0000ff}
@media(min-width:1600px){.section{padding-block:124px}.portfolio{padding-top:32px}.purpose{min-height:720px}.purpose-art{bottom:110px}.card-art{min-height:490px}}
@media(max-width:1000px){
 .header nav{gap:22px;font-size:12px}
 .fields>a{font-size:21px;gap:16px}.fields>a+a{padding-left:24px}
 .fields small{font-size:11px;max-width:175px}
 .card-body{padding:32px}.card-body h3{font-size:46px}.card-body h3.research-title{font-size:39px}
 .card-body>p{font-size:22px}.card-description{font-size:13px}.card-art{min-height:440px}
 .flow-node{font-size:9px;padding:12px;gap:8px}.orbit{width:270px;height:270px}
 .purpose-copy h2{font-size:clamp(43px,5.2vw,55px)}.purpose-art{left:40%;right:-13%}
 .purpose-copy>p:last-child{max-width:59%;font-size:13px}
 .round-cta{width:155px;height:155px;margin-right:3%}
}
@media(max-width:700px){
 .section{padding:76px 6%}.header nav{font-size:15px}.header nav>a{padding-block:15px}
 .nav-contact{padding:15px 19px;margin-top:12px;min-height:50px}
 .hero-copy{padding:48px 0 0}.hero-art{min-height:360px;margin-top:0}
 .hero-foot{font-size:7px;gap:16px;padding-block:20px}.hero-foot a{font-size:10px;gap:12px}
 h2{font-size:37px;line-height:1.12}
 .intro-grid{gap:28px}.intro-text>p:first-child{font-size:22px}.intro-text>p:nth-child(2){font-size:14px}
 .fields{margin-top:38px}.fields>a,.fields>a+a{padding:23px 0;gap:22px;font-size:23px}
 .fields i{padding-top:6px}.fields small{max-width:none;font-size:12px;margin-top:5px}
 .portfolio{padding-top:12px}.section-heading{margin-bottom:32px}.section-heading>p{font-size:14px;margin-top:20px}
 .company-grid{gap:26px}.company-card{border-radius:9px}.card-art{min-height:310px}
 .card-body{padding:30px 25px}.card-body h3{font-size:46px}.card-body h3.research-title{font-size:40px}
 .card-body>p{font-size:23px}.card-description{font-size:14px}.venture-tags{margin-top:20px;gap:6px}
 .venture-tags li{font-size:10px;padding:7px 9px}.card-body .text-link{font-size:12px}
 .flow-node{font-size:9px;padding:12px}.flow-a{top:22%;left:5%}.flow-b{bottom:22%;right:5%}
 .orbit{width:250px;height:250px}.graphic-index{font-size:94px}.research-sculpture{inset:5% 13%}
 .purpose{min-height:760px;padding:44px 6% 26px}
 .purpose-copy{padding:15px 0 320px}.purpose-copy h2{font-size:clamp(30px,8.5vw,43px);letter-spacing:-1.5px}
 .purpose-copy>p:last-child{max-width:100%;font-size:13px;margin-top:24px}
 .purpose-art{inset:305px -8% 92px -8%}
 .purpose-bottom{font-size:8px;gap:12px;padding-top:20px}
 .principles{margin-top:32px}.principle-toggle{grid-template-columns:26px 32px 1fr 26px;gap:10px;padding:25px 4px 25px 0}
 .principle-toggle svg{width:27px;height:27px}.principle-number{font-size:7px}.principle-title{font-size:19px;letter-spacing:-.6px}
 .principle-plus{width:26px;height:26px;font-size:18px}.principle-content{padding:0 18px 26px 78px}
 .principle-content p{font-size:14px}
 .contact{padding:64px 6%;gap:36px}.contact h2{font-size:57px;margin-bottom:25px}
 .contact p:last-child{font-size:14px}.round-cta{width:125px;height:125px;margin:0}.round-cta>span:last-child{font-size:11px}
 .contact-rings{right:-195px;top:65%}
 .footer{padding:40px 6% 26px}.footer-top{gap:18px;padding-bottom:28px}.footer-bottom{font-size:11px;gap:16px}
 .footer-bottom>div{gap:24px}.footer-bottom>span:last-child{font-size:8px}
 dialog{padding:46px 25px 28px}
}
@media(prefers-reduced-motion:reduce){.research-sculpture img{transition:none}}

/* Keep the company introduction evenly balanced across lines. */
.intro-text>p:nth-child(2){text-wrap:balance}
