/* Portfolio: three concepts, followed by an expandable editorial case. */
.case-cta{text-decoration:none}
#main:focus{outline:none}.works-section{max-width:1800px;margin:auto;padding:90px 5.2vw 100px;scroll-margin-top:30px}.works-heading{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-bottom:44px}.works-heading h2{font-size:clamp(2.5rem,4.25vw,4.6rem);text-transform:uppercase;line-height:1.05;letter-spacing:-.03em;font-weight:650;margin:0 0 16px}.works-caption{margin:0;color:#8f9496;font-size:.8125rem;letter-spacing:.06em;text-transform:uppercase}.work-filters{display:flex;gap:12px}.work-filters button{min-width:65px;min-height:44px;padding:11px 20px;background:none;border:1px solid #ffffff3b;border-radius:4px;color:#afb4b6;font-size:.8125rem;text-transform:uppercase;transition:background .2s,color .2s}.work-filters button[aria-pressed=true]{background:#f0f0ed;color:#161719;border-color:#f0f0ed}.work-filters button:hover{border-color:#d5d5d2}.works-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.work-card{display:block;width:100%;text-align:left;padding:0;border:0;background:transparent;min-width:0}.work-frame{display:block;position:relative;aspect-ratio:4/3;overflow:hidden;border:1px solid #ffffff1f;background:#111213}.work-frame>img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .4s ease}.work-card:hover .work-frame>img{transform:scale(1.035)}.corner{position:absolute;width:15px;height:15px;border-color:#c8cdce;border-style:solid;border-width:0;z-index:2;pointer-events:none}.tl{left:0;top:0;border-width:2px 0 0 2px}.tr{right:0;top:0;border-width:2px 2px 0 0}.bl{left:0;bottom:0;border-width:0 0 2px 2px}.br{right:0;bottom:0;border-width:0 2px 2px 0}.work-open{position:absolute;right:14px;bottom:14px;display:flex;align-items:center;gap:16px;padding:11px 14px;border:1px solid #ffffff45;border-radius:3px;background:#141516db;backdrop-filter:blur(8px);text-transform:uppercase;font-size:.625rem;letter-spacing:.05em;opacity:0;transform:translateY(5px);transition:opacity .2s,transform .2s}.work-open>span{font-size:17px}.work-card:hover .work-open,.work-card:focus-visible .work-open{opacity:1;transform:none}.work-meta{display:flex;align-items:center;gap:12px;margin-top:18px;min-height:44px}.work-number{font-size:1.65rem;font-weight:600;letter-spacing:-.05em;color:#efefec;flex:none}.work-name{font-size:.8125rem;font-weight:450;text-transform:uppercase;color:#b5babc;line-height:1.5}.work-arrow{margin-left:auto;border:1px solid #ffffff3b;width:38px;height:38px;display:flex;align-items:center;justify-content:center;font-size:24px;border-radius:4px;flex:none;transition:background .2s}.work-card:hover .work-arrow{background:#e6e8e4;color:#111}.work-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:9px;padding-left:57px}.work-tags>span{border:1px solid #ffffff2d;padding:4px 8px;border-radius:3px;color:#91979b;font-size:.625rem;letter-spacing:.03em;text-transform:uppercase}.works-bottom{display:flex;align-items:center;gap:28px;margin-top:42px}.works-rule{height:1px;background:#ffffff23;flex:1}.works-bottom p{color:#8f9699;font-size:.6875rem;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;margin:0}.project-view{border-top:1px solid #ffffff2a;margin-top:72px;padding-top:28px;scroll-margin-top:28px}.case-toolbar{display:flex;align-items:center;gap:24px;margin-bottom:24px}.case-back{background:none;border:0;padding:10px 0;display:flex;align-items:center;gap:14px;text-transform:uppercase;color:#c4c8ca;font-size:.75rem;min-height:44px}.case-back>span{font-size:22px}.case-back:hover{color:#fff}.case-demo{font-size:.6875rem;color:#838b8f;letter-spacing:.04em;text-transform:uppercase;margin:0}.case-navigation{display:flex;align-items:center;gap:16px;margin-left:auto}.case-navigation button{width:44px;height:44px;border:1px solid #ffffff35;border-radius:4px;background:none;font-size:22px;color:#bac1c4}.case-navigation button:hover{border-color:#dadeda;color:#fff}.case-navigation span{font-size:.6875rem;color:#838b90;letter-spacing:.06em}.case-layout{display:grid;grid-template-columns:minmax(0,2.05fr) minmax(260px,1fr);gap:48px;align-items:center}.case-figure{min-width:0;margin:0}.case-image-stage{aspect-ratio:4/3;position:relative;overflow:hidden;background:#111213}.case-image-stage>img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .45s ease}.case-figure figcaption{display:flex;align-items:center;justify-content:space-between;gap:20px;color:#899296;border-top:1px solid #ffffff23;padding-top:12px;font-size:.6875rem;letter-spacing:.06em;text-transform:uppercase}.case-overview{display:flex;align-items:center;gap:12px;min-height:44px;background:none;border:0;color:#bcc4c7;text-transform:uppercase;font-size:.6875rem}.case-overview>span{font-size:20px}.case-overview:hover{color:#fff}.case-description{border-left:1px solid #ffffff24;padding:28px 0 28px 40px;min-width:0}.case-index{font-size:.8125rem;letter-spacing:.1em;text-transform:uppercase;color:#a9b2b5;margin:0 0 24px}.case-description h3{font-size:clamp(2rem,3vw,3.3rem);text-transform:uppercase;line-height:1.1;letter-spacing:-.025em;font-weight:600;margin:0 0 26px;overflow-wrap:normal}.case-copy{font-size:.9375rem;line-height:1.7;color:#9da7ac;margin:0 0 28px}.case-tags{display:flex;flex-wrap:wrap;gap:8px;padding-top:22px;border-top:1px solid #ffffff24}.case-tags span{font-size:.6875rem;letter-spacing:.03em;padding:6px 9px;border:1px solid #ffffff2e;border-radius:3px;text-transform:uppercase;color:#c7cdcf}.case-cta{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:54px;margin-top:34px;padding:15px 18px;border:1px solid #b5bcbc;border-radius:4px;text-transform:uppercase;font-size:.75rem;letter-spacing:.04em;transition:background .2s}.case-cta>span{font-size:20px}.case-cta:hover{background:#ffffff08}.case-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;border-top:1px solid #ffffff2a;padding-top:20px;margin-top:24px}.case-detail{border:0;background:none;padding:0;min-width:0;text-align:left}.detail-thumb{display:block;aspect-ratio:2.4;overflow:hidden;border:1px solid #ffffff2b;position:relative}.detail-thumb img{display:block;width:100%;height:100%;object-fit:cover}.detail-thumb.facade img{transform:scale(2.1);transform-origin:32% 42%}.detail-thumb.geometry img{transform:scale(2.3);transform-origin:65% 42%}.detail-thumb.landscape img{transform:scale(2.25);transform-origin:55% 77%}.detail-title{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding-top:9px;font-size:.75rem;letter-spacing:.03em;text-transform:uppercase;color:#989fa3}.detail-title>span{font-size:20px}.case-detail:hover .detail-thumb,.case-detail[aria-pressed=true] .detail-thumb{border-color:#bfc8cb}.case-detail:hover .detail-title,.case-detail[aria-pressed=true] .detail-title{color:#f0f2ef}.site-footer{max-width:1800px;margin:auto;border-top:1px solid #ffffff22;display:flex;align-items:center;gap:30px;padding:35px 5.2vw;color:#909699}.footer-name{font-size:1.0625rem;font-weight:600;color:#d9dedf;text-decoration:none;white-space:nowrap}.site-footer p{font-size:.75rem;margin:0}.site-footer>div{margin-left:auto;display:flex;flex-wrap:wrap;gap:24px}.site-footer>div>a{font-size:.75rem;text-decoration:none;white-space:nowrap}.site-footer a:hover{color:#fff}
@media(max-width:1100px){.works-grid{gap:18px}.work-meta{gap:8px}.work-number{font-size:1.4rem}.work-name{font-size:.75rem}.work-arrow{width:34px;height:34px}.work-tags{padding-left:47px}.case-layout{gap:28px;grid-template-columns:minmax(0,1.65fr) minmax(250px,1fr)}.case-description{padding-left:26px}.case-description h3{font-size:2rem}.case-demo{font-size:.625rem}.case-details{gap:16px}}
@media(max-width:800px){.works-section{padding:55px 24px 65px;scroll-margin-top:20px}.works-heading{align-items:flex-start;flex-direction:column;gap:24px;margin-bottom:28px}.works-heading h2{font-size:2.5rem;margin-bottom:12px}.works-caption{font-size:.6875rem}.work-filters{gap:9px}.work-filters button{font-size:.75rem;min-width:64px}.works-grid{grid-template-columns:1fr;gap:34px}.work-name{font-size:.8125rem}.work-number{font-size:1.65rem}.work-arrow{width:40px;height:40px}.work-tags{padding-left:57px}.work-open{display:none}.works-bottom{gap:20px;margin-top:32px}.project-view{margin-top:45px;padding-top:22px}.case-toolbar{flex-wrap:wrap;gap:12px 20px}.case-demo{order:3;width:100%}.case-navigation{gap:12px}.case-navigation button{width:40px;height:40px}.case-layout{grid-template-columns:1fr;gap:25px}.case-description{border-left:0;border-top:1px solid #ffffff25;padding:25px 0 0}.case-description h3{font-size:2rem;max-width:500px}.case-index{margin-bottom:18px}.case-copy{font-size:.875rem;max-width:520px;margin-bottom:22px}.case-tags{padding-top:18px}.case-cta{max-width:360px;margin-top:24px}.case-details{gap:12px;margin-top:32px}.detail-thumb{aspect-ratio:1.3}.detail-title{font-size:.5625rem;line-height:1.5;gap:4px;min-height:44px}.detail-title>span{display:none}.site-footer{padding:28px 24px;flex-wrap:wrap;gap:14px 22px}.site-footer p{font-size:.625rem}.site-footer>div{width:100%;margin:10px 0 0;gap:20px}.site-footer>div>a{font-size:.6875rem}}
@media(min-width:601px) and (max-width:800px){.works-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.work-tags{padding-left:0}.work-name{font-size:.75rem}}
@media(max-width:360px){.works-section{padding-left:18px;padding-right:18px}.case-details{gap:8px}.detail-title{font-size:.5rem}.case-description h3{font-size:1.75rem}.site-footer{padding-left:18px;padding-right:18px}}
@media(prefers-reduced-motion:reduce){.work-frame>img,.work-open,.case-image-stage>img{transition:none}}
