@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&display=swap");:root{--ink:#151515;--muted:#777;--line:#e8e8e8;--paper:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:DM Sans,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.shell{max-width:1440px;margin:0 auto;padding:26px 4.7vw}.header{display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{width:145px;height:auto;display:block}.nav{display:flex;gap:4px;background:#d8d8d8;padding:4px}.nav,.nav a{border-radius:999px}.nav a{font-size:14px;padding:11px 20px;color:#333;white-space:nowrap}.nav a:hover{background:#fff}.work{max-width:1080px;margin:88px auto 0;min-height:420px}.project-space{width:100%;aspect-ratio:16/8.6;background:#fff;display:block}.project-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:22px;gap:22px}.project img{width:100%;aspect-ratio:1.35;object-fit:cover;display:block}.project-meta{display:flex;justify-content:space-between;gap:12px;padding:12px 0;font-size:13px}.project-meta strong{font-weight:500}.project-meta span{color:#888}.about{max-width:1080px;margin:90px auto 0;padding:28px 0;border-top:1px solid var(--line)}.about h2{font-size:22px;font-weight:500;margin:0 0 12px}.about p{font-size:14px;color:var(--muted);line-height:1.7;max-width:560px}.contact{max-width:1080px;margin:35px auto 0;padding:25px 0 50px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:14px}.contact a{text-decoration:underline;text-underline-offset:4px}.admin-wrap{max-width:760px;margin:70px auto;padding:24px}.admin-wrap h1{font-size:36px;letter-spacing:-.05em;font-weight:500}.panel{border:1px solid var(--line);padding:24px;border-radius:16px;margin:20px 0}.field{display:grid;grid-gap:8px;gap:8px;margin:16px 0}.field label{font-size:12px;color:#777}.field input,.field select,.field textarea{border:1px solid #ddd;border-radius:8px;padding:12px;background:white;color:#151515}.action,.secondary{border:0;border-radius:999px;padding:12px 20px;cursor:pointer}.action{background:#151515;color:white}.secondary{background:#eee;color:#222}.action:disabled{opacity:.6;cursor:wait}.hint{font-size:12px;color:#888;line-height:1.6}.admin-top{display:flex;justify-content:space-between;align-items:center}.list-title{font-size:20px;font-weight:500;margin-top:36px}.admin-projects{display:grid;grid-gap:12px;gap:12px}.admin-project{display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--line);padding:12px 0}.admin-project img{width:100px;height:70px;object-fit:cover;border-radius:5px}.admin-project div{flex:1 1}.admin-project p{margin:5px 0}@media(max-width:700px){.shell{padding:18px 5vw}.logo{width:118px}.nav a{font-size:11px;padding:9px 11px}.work{margin-top:64px}.project-space{aspect-ratio:4/3}.project-grid{grid-template-columns:1fr}.about{margin-top:55px}.contact{flex-direction:column}.admin-wrap{margin:25px auto;padding:18px}}.detail-wrap{max-width:1180px;margin:60px auto;padding:24px}.back-link{font-size:14px;color:#555}.detail-heading{margin:38px 0 28px}.detail-heading h1{font-size:clamp(30px,5vw,48px);font-weight:500;letter-spacing:-.045em;margin:0 0 8px}.detail-heading p{color:#888;margin:0;font-size:14px}.detail-gallery{display:grid;grid-template-columns:1fr 1fr;grid-gap:18px;gap:18px}.detail-gallery figure{margin:0;overflow:hidden;background:#f5f5f5}.detail-gallery img{display:block;width:100%;height:auto;object-fit:contain}.detail-description{max-width:720px;margin:34px 0 60px;font-size:16px;line-height:1.8;color:#555}.selected-images{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px;margin-top:8px}.selected-image{min-width:0}.selected-image img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:6px;display:block}.selected-image span{display:block;font-size:10px;color:#777;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:4px}@media(max-width:700px){.detail-wrap{margin:28px auto;padding:18px}.detail-gallery{grid-template-columns:1fr}.selected-images{grid-template-columns:repeat(3,minmax(0,1fr))}}