@keyframes portrait-tide{0%,100%{clip-path:ellipse(45% 45% at 50% 50%)}35%{clip-path:ellipse(49% 38% at 50% 50%)}70%{clip-path:ellipse(42% 48% at 50% 50%)}}
.detail-trigger{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:48px;padding:12px 0;border:0;border-bottom:1px solid #8f9ca5;background:transparent;color:var(--ink);font-size:14px;line-height:1.7;letter-spacing:.025em;text-align:left;transition:color .2s,border-color .2s}
.detail-trigger:hover{color:#c85523;border-color:#c85523}
.detail-plus{position:relative;display:block;width:24px;height:24px;border:1px solid currentColor;border-radius:50%;flex-shrink:0;transition:transform .3s var(--ease)}
.detail-plus::before,.detail-plus::after{content:'';position:absolute;left:50%;top:50%;width:9px;height:1px;background:currentColor;transform:translate(-50%,-50%)}
.detail-plus::after{transform:translate(-50%,-50%) rotate(90deg)}
.detail-trigger:hover .detail-plus{transform:rotate(90deg)}
.purpose-trigger{margin-top:12px;min-width:min(100%,290px)}
#business .business-rows{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,3.2vw,48px)}
.business-card{display:flex;flex-direction:column;min-width:0;padding:30px 0 0;border-top:1px solid #b9c3c8}
.business-card>.eyebrow{color:#c85523;font-size:13px;line-height:1.5;letter-spacing:.08em;margin-bottom:24px}
.business-card>h3{font-size:clamp(20px,1.85vw,27px);line-height:1.85;letter-spacing:.015em;font-weight:400;margin:0 0 18px}
.business-card>.business-caption{font-size:14px;line-height:1.8;color:var(--ink);margin:0 0 20px}
.business-card>.business-summary{font-size:16px;line-height:2.05;color:var(--muted);margin:0 0 28px}
.business-card>.detail-trigger{margin-top:auto;width:100%}
#detail-dialog[data-view="business"]{width:min(960px,calc(100% - 32px))}
#detail-dialog[data-view="business"] .business-detail-intro{max-width:44em}
#detail-dialog[data-view="business"] .business-diagram{margin-top:30px;padding:30px;border:1px solid #dce3e5;border-radius:14px;min-width:0}
#detail-dialog .business-diagram p{font-size:14px;line-height:1.9;margin-bottom:0}
#detail-dialog .business-diagram h4{font-weight:400}
#detail-dialog .product-flow{padding:0;list-style:none}
#detail-dialog .product-flow>li>p{margin-top:16px}
#detail-dialog .diagram-heading{flex-wrap:wrap}
#detail-dialog .diagram-heading>span{font-size:18px}
#detail-dialog .diagram-heading small{font-size:12px}
#detail-dialog .diagram-bottom{margin-top:24px;font-size:14px}
#detail-dialog .research-flow{padding:0;list-style:none}
#detail-dialog .research-flow li{grid-template-columns:32px 1fr;gap:18px}
#detail-dialog .research-tag{display:none}
#detail-dialog .research-flow h4{font-size:17px;line-height:1.7;margin:0 0 6px}
#detail-dialog .business-diagram .diagram-note{font-size:12px;margin-top:20px}
#detail-dialog .lab-core p{font-size:14px}
#detail-dialog .lab-feedback{font-size:14px}
#detail-dialog[data-view="purpose"] .dialog-title{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.purpose-statement{padding:26px 0 30px}
.purpose-statement+.purpose-statement{border-top:1px solid var(--line);padding-top:32px}
#detail-dialog .purpose-statement .statement-label{font-size:13px;letter-spacing:.13em;color:#c85523;margin:0 0 18px}
#detail-dialog .purpose-statement h3{font-size:clamp(22px,2.5vw,28px);line-height:1.8;letter-spacing:.02em;margin:0 0 23px;font-weight:400}
#detail-dialog .purpose-statement>p:last-child{font-size:16px;line-height:2.15;margin:0}
.people-grid .person-card:nth-child(2){margin-top:0}
@media(max-width:960px){#business .business-rows{gap:22px}
.business-card>h3{font-size:19px;letter-spacing:0}
.business-card>.business-summary{font-size:15px}
}
@media(max-width:760px){#business .business-rows{grid-template-columns:minmax(0,1fr);gap:36px}
.business-card{padding-top:26px}
.business-card>.eyebrow{margin-bottom:17px}
.business-card>h3{font-size:25px;margin-bottom:10px}
.business-card>.business-caption{margin-bottom:17px}
.business-card>.business-summary{font-size:16px;margin-bottom:20px}
.business-card>.detail-trigger{max-width:none}
#detail-dialog[data-view="business"] #dialog-content{padding:68px 20px 28px}
#detail-dialog[data-view="business"] .business-diagram{padding:22px 16px}
#detail-dialog .product-flow{grid-template-columns:minmax(0,1fr);gap:0;margin:0}
#detail-dialog .product-flow>li{padding:22px 0}
#detail-dialog .product-flow>li+li{border-top:1px solid #dce3e5}
#detail-dialog .product-flow>li::after{display:none}
#detail-dialog .product-step-heading{min-height:0;margin-bottom:14px}
#detail-dialog .product-step-heading h4{font-size:18px}
#detail-dialog .product-thumb{width:56px;height:56px}
#detail-dialog .data-inputs,#detail-dialog .choice-output{display:flex;gap:10px}
#detail-dialog .data-inputs>span,#detail-dialog .choice-output>span{flex:1;font-size:14px}
#detail-dialog .lab-partners{gap:6px}
#detail-dialog .lab-partners>span{font-size:12px;padding:12px 2px}
#detail-dialog .lab-cycle{grid-template-columns:minmax(0,1fr);gap:16px}
#detail-dialog .lab-cycle>div{border-top:1px solid #d5dfe4;padding-top:14px}
#detail-dialog .lab-cycle>div::after,#detail-dialog .lab-cycle>div::before{display:none}
#detail-dialog .lab-cycle h4{font-size:17px}
#detail-dialog .purpose-statement h3{font-size:22px}
.people-grid .person-card:nth-child(2){margin:0 auto}
}
@media(prefers-reduced-motion:reduce){.detail-trigger,.detail-plus{transition:none}
}
