.subpage-main{min-height:100svh}.subpage-shell{width:100%;margin:0 auto;padding:5rem 24px 6rem}.work-detail-shell{max-width:798px}@media(min-width:768px){.subpage-shell{padding-left:96px;padding-right:96px}.work-detail-shell{max-width:942px}}.subpage-header{display:flex;flex-direction:column;gap:1rem;margin-bottom:3rem}.subpage-kicker{font-size:.75rem;letter-spacing:.12em;color:#9b9b9b;text-transform:uppercase}.subpage-title{font-size:clamp(2rem,5vw,4rem);line-height:1.08}.subpage-lead{color:#b0b0b0;line-height:1.8;max-width:70ch}.works-filter{display:flex;flex-wrap:wrap;gap:.55rem;margin-bottom:2rem}.works-filter-btn{border:1px solid rgba(255,255,255,.25);background:transparent;color:#cfcfcf;font:inherit;font-size:.73rem;letter-spacing:.08em;text-transform:uppercase;padding:.45rem .7rem;cursor:pointer;transition:background-color .22s ease,color .22s ease,border-color .22s ease}.works-filter-btn:hover{border-color:#ffffff80}.works-filter-btn.is-active{background-color:#f5f5f5;color:#111;border-color:#f5f5f5;font-weight:700}.works-grid{list-style:none;display:grid;grid-template-columns:1fr;gap:1rem}@media(min-width:768px){.works-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}}@media(min-width:1024px){.works-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.works-card{background:#0f0f0fe6;border:1px solid rgba(255,255,255,.16);opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease}.works-card.is-visible{opacity:1;transform:translateY(0)}.works-card.is-no-transition{transition:none}.works-card.is-hidden{display:none}.works-card-link{display:block;padding:1.25rem 1.25rem 1.5rem}.works-thumb-frame{margin-bottom:1rem;border:1px solid rgba(255,255,255,.1)}.works-card-title{font-size:1.25rem;line-height:1.35;margin-bottom:.85rem}.roles-list{list-style:none;display:flex;flex-direction:column;gap:.25rem;margin-bottom:1rem;color:#b4b4b4;font-size:.95rem}.work-worked-as{color:#a7a7a7;font-size:.84rem;letter-spacing:.05em;margin-bottom:1rem}.tags-row{display:flex;flex-wrap:wrap;gap:.45rem}.tag-chip{border:1px solid rgba(255,255,255,.3);padding:.2rem .5rem;font-size:.72rem;letter-spacing:.04em;color:#dbdbdb}.works-card-meta{margin-top:1rem;font-size:.74rem;color:#8c8c8c;letter-spacing:.08em;text-transform:uppercase}.works-filter-empty{margin-top:1.25rem;color:#8c8c8c;font-size:.9rem}.work-detail-hero{margin-bottom:2rem}.back-link{margin-bottom:1.5rem}.work-top-image-wrap{margin-bottom:2rem}.work-top-image-frame{border:1px solid rgba(255,255,255,.12)}.works-index-back-link{margin-bottom:2.25rem}.back-link a{color:#b9b9b9;border-bottom:1px solid rgba(255,255,255,.35);padding-bottom:.15rem}.work-title{font-size:clamp(2rem,4.8vw,3.4rem);line-height:1.14;margin-bottom:1.2rem}.work-summary{color:#b4b4b4;line-height:1.8;margin-bottom:1.1rem}.work-meta-line{font-size:.8rem;color:#939393;letter-spacing:.09em;text-transform:uppercase;margin-bottom:1.2rem}.work-gallery{display:grid;grid-template-columns:1fr;gap:.9rem;margin:2rem 0}@media(min-width:900px){.work-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}.work-gallery img{width:100%;aspect-ratio:16 / 10;object-fit:cover;border:1px solid rgba(255,255,255,.12)}.work-article{border-top:1px solid rgba(255,255,255,.16);margin-top:2rem;padding-top:2rem;line-height:1.9;color:#d2d2d2}.work-article p{margin-bottom:1rem}.work-article img{width:100%;max-width:100%;height:auto;display:block;margin:1.2rem 0;border:1px solid rgba(255,255,255,.12)}.work-article iframe{width:100%;max-width:100%;aspect-ratio:16 / 9;height:auto;display:block;margin:1.2rem 0;border:1px solid rgba(255,255,255,.12)}.work-related-links{border-top:1px solid rgba(255,255,255,.16);margin-top:2rem;padding-top:1.6rem}.work-related-links-title{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:#9f9f9f;margin-bottom:.85rem}.work-related-links-list{list-style:none;display:flex;flex-direction:column;gap:.6rem}.work-related-link-anchor{display:inline-block;color:#d7d7d7;border-bottom:1px solid rgba(255,255,255,.32);padding-bottom:.12rem;transition:opacity .2s ease,border-color .2s ease}.work-related-link-anchor:hover{opacity:.72;border-color:#ffffff8c}.policy-content{color:#d0d0d0;line-height:1.9}.policy-content h2{font-size:1.25rem;margin:2rem 0 .75rem}.policy-content h3{font-size:1.05rem;margin:1.75rem 0 .65rem;color:#e5e5e5}.policy-content a{color:#d7d7d7;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.12em;text-decoration-color:#ffffff52;transition:opacity .2s ease,text-decoration-color .2s ease}.policy-content a:hover{opacity:.72;text-decoration-color:#ffffff8c}
