.lab-page,.lab-detail-page{color:#111;background:#fff;min-width:0;min-height:100vh;padding:72px 72px 90px}.lab-red{color:#e80000}.lab-eyebrow{letter-spacing:.18em;color:#e80000;margin-bottom:24px;font-size:11px;font-weight:600;display:block}.lab-header{border-bottom:1px solid #dedede;padding-bottom:55px}.lab-header h1{letter-spacing:-.065em;white-space:nowrap;margin:0;font-size:clamp(58px,7vw,108px);font-weight:500;line-height:.92}.lab-title{color:#666;margin:25px 0 0;font-size:18px;line-height:1.5}.lab-intro{grid-template-columns:220px minmax(0,760px);gap:70px;padding:70px 0;display:grid}.lab-intro-label{letter-spacing:.18em;padding-top:9px;font-size:10px;font-weight:700}.lab-intro-content h2{letter-spacing:-.04em;margin:0 0 35px;font-size:clamp(32px,4vw,55px);font-weight:500;line-height:1.05}.lab-intro-content p{color:#555;max-width:720px;margin:0 0 22px;font-size:16px;line-height:1.75}.lab-projects{border-top:1px solid #111;padding-top:55px}.lab-projects-heading{justify-content:space-between;align-items:baseline;gap:30px;margin-bottom:35px;display:flex}.lab-projects-heading span{letter-spacing:.18em;font-size:10px;font-weight:700}.lab-projects-heading p{color:#777;margin:0;font-size:13px}.lab-project-grid{background:#dedede;border:1px solid #dedede;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid}.lab-project-card{background:#fff;flex-direction:column;min-width:0;padding:28px;transition:background .25s,color .25s;display:flex}a.lab-project-card:hover{color:#fff;background:#111}.lab-card-top{justify-content:space-between;align-items:center;margin-bottom:26px;display:flex}.lab-card-number{letter-spacing:.12em;color:#999;font-size:10px;font-weight:600}.lab-card-status{letter-spacing:.12em;border:1px solid #ccc;padding:7px 9px;font-size:8px;font-weight:700}.lab-card-status.active{color:#e80000}.lab-card-status.coming{color:#777}.lab-card-image{aspect-ratio:16/9;background:#f6f6f6;border:1px solid #dedede;margin-bottom:30px;overflow:hidden}.lab-card-image img{object-fit:cover;width:100%;height:100%;transition:transform .4s}a.lab-project-card:hover .lab-card-image img{transform:scale(1.025)}.lab-coming-visual{aspect-ratio:16/9;background:#f5f5f5;border:1px solid #dedede;justify-content:center;align-items:center;margin-bottom:30px;display:flex}.lab-coming-visual span{letter-spacing:-.06em;color:#ddd;font-size:70px;font-weight:500}.lab-card-content{flex-direction:column;flex:1;display:flex}.lab-card-category{letter-spacing:.14em;color:#e80000;margin-bottom:17px;font-size:9px;font-weight:700;display:block}.lab-card-content h2{letter-spacing:-.04em;margin:0 0 20px;font-size:clamp(28px,3vw,42px);font-weight:500;line-height:1.05}.lab-card-content>p{color:#666;margin:0 0 25px;font-size:14px;line-height:1.7}a.lab-project-card:hover .lab-card-content>p{color:#bbb}.lab-card-tech{flex-wrap:wrap;gap:7px;margin-bottom:35px;display:flex}.lab-card-tech span{letter-spacing:.06em;text-transform:uppercase;border:1px solid #ddd;padding:7px 9px;font-size:8px;font-weight:600}a.lab-project-card:hover .lab-card-tech span{border-color:#444}.lab-card-footer{border-top:1px solid #dedede;justify-content:space-between;align-items:center;gap:20px;margin-top:auto;padding-top:20px;display:flex}.lab-card-footer span{letter-spacing:.12em;color:#999;font-size:8px;font-weight:600}.lab-card-footer strong{letter-spacing:.12em;font-size:9px;font-weight:700}.lab-future{border-top:1px solid #111;margin-top:80px;padding-top:55px}.lab-future-label{letter-spacing:.18em;color:#e80000;margin-bottom:40px;font-size:10px;font-weight:700;display:block}.lab-future-content{grid-template-columns:minmax(350px,1fr) minmax(300px,.8fr);align-items:end;gap:80px;display:grid}.lab-future-content h2{letter-spacing:-.05em;margin:0;font-size:clamp(44px,5vw,74px);font-weight:500;line-height:.97}.lab-future-content p{color:#666;max-width:500px;margin:0;font-size:15px;line-height:1.7}.lab-back{margin-bottom:50px}.lab-back a,.lab-detail-footer a{letter-spacing:.12em;border-bottom:1px solid #111;padding-bottom:5px;font-size:10px;font-weight:700;display:inline-block}.lab-detail-header{border-bottom:1px solid #dedede;padding-bottom:55px}.lab-detail-header h1{letter-spacing:-.055em;max-width:1250px;margin:0;font-size:clamp(54px,6vw,94px);font-weight:500;line-height:.94}.lab-detail-subtitle{color:#666;margin:25px 0 0;font-size:17px;line-height:1.5}.lab-detail-philosophy{background:#fafafa;border-left:4px solid #e80000;margin:65px 0;padding:40px}.lab-detail-philosophy>span{letter-spacing:.16em;color:#e80000;margin-bottom:24px;font-size:9px;font-weight:700;display:block}.lab-detail-philosophy h2{letter-spacing:-.04em;max-width:1050px;margin:0;font-size:clamp(30px,4vw,52px);font-weight:500;line-height:1.1}.lab-detail-intro{border-top:1px solid #dedede;grid-template-columns:220px minmax(0,760px);gap:70px;padding:65px 0;display:grid}.lab-detail-label{letter-spacing:.18em;padding-top:8px;font-size:10px;font-weight:700}.lab-detail-copy h2{letter-spacing:-.04em;margin:0 0 30px;font-size:clamp(34px,4vw,55px);font-weight:500;line-height:1.05}.lab-detail-copy p{color:#555;margin:0 0 20px;font-size:16px;line-height:1.75}.lab-detail-status{background:#dedede;border:1px solid #dedede;grid-template-columns:repeat(4,1fr);gap:1px;margin-bottom:70px;display:grid}.lab-detail-status>div{background:#fff;min-height:120px;padding:22px}.lab-detail-status span{letter-spacing:.14em;color:#999;margin-bottom:28px;font-size:8px;font-weight:700;display:block}.lab-detail-status strong{font-size:14px;font-weight:500}.lab-detail-feature{border-top:1px solid #dedede;grid-template-columns:minmax(300px,.75fr) minmax(500px,1.25fr);align-items:center;gap:60px;padding:70px 0;display:grid}.lab-detail-feature.reverse{grid-template-columns:minmax(500px,1.25fr) minmax(300px,.75fr)}.lab-detail-feature.reverse .lab-detail-feature-copy{order:2}.lab-detail-feature.reverse .lab-detail-image{order:1}.lab-detail-number{letter-spacing:.12em;color:#999;margin-bottom:12px;font-size:10px;font-weight:600;display:block}.lab-detail-feature-label{letter-spacing:.16em;color:#e80000;margin-bottom:25px;font-size:9px;font-weight:700;display:block}.lab-detail-feature-copy h2{letter-spacing:-.04em;margin:0 0 28px;font-size:clamp(30px,3.5vw,50px);font-weight:500;line-height:1.05}.lab-detail-feature-copy p{color:#666;margin:0 0 17px;font-size:14px;line-height:1.75}.lab-detail-image{border:1px solid #dedede;margin:0;overflow:hidden}.lab-detail-image img{width:100%;height:auto}.lab-detail-image figcaption{letter-spacing:.1em;color:#777;border-top:1px solid #dedede;padding:14px 16px;font-size:8px;font-weight:700}.lab-detail-tags{flex-wrap:wrap;gap:8px;margin-top:28px;display:flex}.lab-detail-tags span{letter-spacing:.06em;text-transform:uppercase;border:1px solid #d5d5d5;padding:8px 10px;font-size:9px;font-weight:600}.lab-detail-section{border-top:1px solid #dedede;padding:70px 0}.lab-detail-section-heading{grid-template-columns:90px 1fr;gap:20px;margin-bottom:45px;display:grid}.lab-detail-section-heading>span{color:#999;padding-top:5px;font-size:10px;font-weight:600}.lab-detail-section-heading p{letter-spacing:.16em;color:#e80000;margin:0 0 12px;font-size:9px;font-weight:700}.lab-detail-section-heading h2{letter-spacing:-.04em;margin:0;font-size:clamp(32px,4vw,52px);font-weight:500;line-height:1.05}.lab-service-grid,.lab-security-grid{background:#dedede;border:1px solid #dedede;grid-template-columns:repeat(3,1fr);gap:1px;margin-left:110px;display:grid}.lab-service-grid article,.lab-security-grid article{background:#fff;min-height:220px;padding:26px}.lab-service-grid article>span,.lab-security-grid article>span{letter-spacing:.12em;color:#e80000;margin-bottom:35px;font-size:9px;font-weight:700;display:block}.lab-service-grid h3{letter-spacing:-.025em;margin:0 0 15px;font-size:19px;font-weight:500}.lab-service-grid p,.lab-security-grid p{color:#666;margin:0;font-size:12px;line-height:1.65}.lab-code-architecture{background:#fafafa;border:1px solid #dedede;margin-top:32px;padding:26px}.lab-code-architecture>div:first-child{color:#fff;background:#111;border:1px solid #111;align-items:center;min-height:42px;padding:0 14px;display:inline-flex}.lab-code-architecture>div:first-child span{letter-spacing:.08em;font-size:11px;font-weight:700}.lab-code-line{background:#cfcfcf;width:1px;height:28px;margin-left:28px}.lab-code-children{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.lab-code-children span{letter-spacing:.04em;overflow-wrap:anywhere;background:#fff;border:1px solid #d8d8d8;min-width:0;padding:12px 14px;font-size:10px;font-weight:600;line-height:1.4}.lab-delivery-flow{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);align-items:stretch;gap:10px;margin-left:110px;display:grid}.lab-delivery-flow>div{background:#fff;border:1px solid #dedede;flex-direction:column;justify-content:space-between;min-width:0;min-height:132px;padding:20px;display:flex}.lab-delivery-flow>div span{letter-spacing:.12em;color:#e80000;font-size:9px;font-weight:700}.lab-delivery-flow>div strong{font-size:13px;font-weight:500;line-height:1.35}.lab-delivery-flow>i{color:#999;justify-content:center;align-items:center;padding:0 2px;font-size:18px;font-style:normal;display:flex}.lab-detail-current{border-top:1px solid #111;grid-template-columns:220px minmax(0,760px);gap:70px;padding:70px 0;display:grid}.lab-detail-current>span{letter-spacing:.18em;color:#e80000;padding-top:8px;font-size:10px;font-weight:700}.lab-detail-current h2{letter-spacing:-.04em;margin:0 0 30px;font-size:clamp(36px,4vw,58px);font-weight:500;line-height:1}.lab-detail-current p{color:#666;margin:0 0 18px;font-size:15px;line-height:1.75}.lab-detail-footer{border-top:1px solid #dedede;padding-top:45px}@media (width<=1150px){.lab-project-grid,.lab-detail-feature,.lab-detail-feature.reverse{grid-template-columns:1fr}.lab-detail-feature.reverse .lab-detail-feature-copy,.lab-detail-feature.reverse .lab-detail-image{order:initial}.lab-service-grid,.lab-security-grid,.lab-detail-status{grid-template-columns:repeat(2,1fr)}.lab-delivery-flow{grid-template-columns:repeat(3,minmax(0,1fr));margin-left:0}.lab-delivery-flow>i{display:none}}@media (width<=1000px){.lab-page,.lab-detail-page{padding:50px 30px 70px}.lab-header h1{white-space:normal}.lab-intro,.lab-detail-intro,.lab-detail-current{grid-template-columns:1fr;gap:35px}.lab-service-grid,.lab-security-grid{margin-left:0}.lab-future-content{grid-template-columns:1fr;gap:40px}.lab-code-children{grid-template-columns:1fr}.lab-code-line{height:20px}}@media (width<=750px){.lab-detail-section-heading{grid-template-columns:1fr;gap:14px}.lab-service-grid,.lab-security-grid{grid-template-columns:1fr}.lab-projects-heading{flex-direction:column;align-items:flex-start}.lab-delivery-flow{grid-template-columns:1fr}.lab-delivery-flow>div{min-height:105px}}@media (width<=600px){.lab-page,.lab-detail-page{padding:40px 22px 60px}.lab-header h1{font-size:52px}.lab-title{font-size:15px}.lab-project-card{padding:22px}.lab-detail-header h1{font-size:48px}.lab-detail-philosophy{padding:26px}.lab-detail-status{grid-template-columns:1fr}.lab-detail-feature,.lab-detail-section,.lab-detail-current{padding:50px 0}.lab-service-grid article,.lab-security-grid article{min-height:auto}.lab-future-content h2{font-size:44px}}
