:root{--bg:#0b0d13;--panel:#141720;--panel2:#1a1d27;--text:#f4f1ea;--muted:#9c9da7;--line:rgba(255,255,255,.13);--accent:#e96b59;--accent2:#f2aa80;--max:1480px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:"Noto Sans SC",system-ui,sans-serif;min-width:320px}button,a{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid var(--accent2);outline-offset:4px}::selection{background:var(--accent);color:#fff}.grain{position:fixed;inset:0;z-index:20;pointer-events:none;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.22'/%3E%3C/svg%3E")}.site-header{height:76px;display:flex;align-items:center;gap:56px;padding:0 clamp(22px,4vw,72px);border-bottom:1px solid var(--line);position:relative;z-index:30;background:rgba(11,13,19,.92);backdrop-filter:blur(16px)}.brand{font-size:23px;font-weight:800;letter-spacing:-.08em;display:flex;align-items:center;gap:12px;white-space:nowrap}.brand-mark{width:29px;height:29px;display:grid;place-items:center;border:1px solid var(--accent);color:var(--accent);font-size:15px;font-weight:700;transform:rotate(-9deg);letter-spacing:0}.brand-dot,.footer-brand span{color:var(--accent)}.top-nav{display:flex;align-items:center;gap:34px;font-size:14px;color:#bec0c8}.top-nav a{position:relative;padding:27px 0}.top-nav a:hover,.top-nav a.active{color:#fff}.top-nav a.active:after{content:"";height:2px;background:var(--accent);position:absolute;bottom:-1px;left:0;right:0}.header-note{margin-left:auto;color:#797b86;font-size:13px;letter-spacing:.08em;white-space:nowrap}main{min-height:65vh}.container{max-width:var(--max);margin:auto;padding-left:clamp(22px,4vw,72px);padding-right:clamp(22px,4vw,72px)}.eyebrow{display:flex;align-items:center;gap:12px;color:var(--accent2);font-size:13px;font-weight:700;letter-spacing:.22em}.eyebrow:before{content:"";width:28px;height:1px;background:var(--accent)}.hero{min-height:620px;display:grid;grid-template-columns:45% 55%;border-bottom:1px solid var(--line);overflow:hidden}.hero-copy{padding:clamp(55px,8vw,136px) 5vw 85px max(clamp(22px,4vw,72px),calc((100vw - var(--max))/2 + 72px));display:flex;flex-direction:column;justify-content:center;position:relative;z-index:1}.hero-kicker{color:#b0b0b8;font-size:14px;letter-spacing:.28em;margin-bottom:23px}.hero h1{font-size:clamp(58px,7vw,112px);line-height:1.05;letter-spacing:-.09em;margin:0 0 23px;font-weight:800;white-space:nowrap}.hero h1 em{font-style:normal;color:var(--accent)}.hero-copy p{color:#aeb0ba;font-size:17px;line-height:1.9;max-width:390px;margin:0 0 37px}.primary-link{width:max-content;background:var(--accent);color:#151418;padding:16px 25px;font-size:14px;font-weight:700;display:inline-flex;align-items:center;gap:30px;transition:background .2s,transform .2s}.primary-link:hover{background:#f58c77;transform:translateY(-3px)}.primary-link .arrow{font-size:20px;line-height:0}.hero-side{position:relative;min-height:620px;background:#141824}.hero-art{position:absolute;inset:0;background:#202638;overflow:hidden}.art{background-image:url('./portfolio-sheet.png');background-repeat:no-repeat;background-size:300% 200%;background-color:#242635}.art-1{background-position:0 0}.art-2{background-position:50% 0}.art-3{background-position:100% 0}.art-4{background-position:0 100%}.art-5{background-position:50% 100%}.art-6{background-position:100% 100%}.hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,13,19,.8),transparent 35%),linear-gradient(0deg,rgba(11,13,19,.55),transparent 55%)}.hero-frame{position:absolute;inset:28px;border:1px solid rgba(255,255,255,.23);z-index:1;pointer-events:none}.hero-index{position:absolute;top:53px;right:58px;z-index:2;color:#fff;font-size:13px;letter-spacing:.2em}.hero-caption{position:absolute;bottom:60px;left:62px;z-index:2}.hero-caption span{font-size:13px;color:#e7b6aa;letter-spacing:.2em}.hero-caption h2{font-size:clamp(28px,3vw,49px);margin:9px 0 0;letter-spacing:-.03em}.hero-scroll{position:absolute;bottom:32px;left:max(clamp(22px,4vw,72px),calc((100vw - var(--max))/2 + 72px));font-size:12px;color:#777a84;letter-spacing:.18em}.number-strip{display:grid;grid-template-columns:repeat(6,1fr);border-bottom:1px solid var(--line);background:#11141b}.number-strip a{min-height:122px;border-right:1px solid var(--line);padding:22px 22px 18px;display:flex;flex-direction:column;justify-content:space-between;transition:background .2s}.number-strip a:hover{background:#23232b}.number-strip a:last-child{border-right:0}.number-strip small{font-size:12px;color:var(--accent);font-weight:700}.number-strip strong{font-size:16px;font-weight:600}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;padding-top:95px;padding-bottom:30px}.section-head h2,.page-heading h1{font-size:clamp(34px,4vw,64px);line-height:1.25;margin:12px 0 0;letter-spacing:-.055em}.section-head p,.page-heading p{color:var(--muted);font-size:15px;line-height:1.8;margin:0}.text-link{font-size:14px;border-bottom:1px solid var(--accent);padding-bottom:5px;color:#e5e1da;white-space:nowrap}.works-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px 20px;padding-bottom:100px}.work-card{display:block;min-width:0}.work-thumb{position:relative;aspect-ratio:1.22;background:#252732;overflow:hidden}.work-thumb .art{position:absolute;inset:0;transition:transform .65s cubic-bezier(.2,.75,.2,1)}.work-card:hover .art{transform:scale(1.065)}.work-thumb:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,9,13,.32),transparent 45%)}.work-no{position:absolute;z-index:1;top:17px;left:18px;border:1px solid rgba(255,255,255,.6);border-radius:50%;display:grid;place-items:center;width:37px;height:37px;font-size:13px}.work-kind{position:absolute;z-index:1;bottom:18px;left:19px;font-size:13px;color:#fff}.work-meta{display:flex;align-items:flex-start;justify-content:space-between;padding:15px 2px}.work-meta h3{margin:0 0 6px;font-size:21px;font-weight:700}.work-meta p{margin:0;color:#8e909b;font-size:13px}.work-meta span{font-size:21px;color:var(--accent);transition:transform .2s}.work-card:hover .work-meta span{transform:translate(3px,-3px)}.page-heading{padding-top:80px;padding-bottom:34px}.page-heading p{margin-top:17px}.filter-row{display:flex;gap:8px;overflow:auto;padding-bottom:28px;scrollbar-width:none}.filter-row::-webkit-scrollbar{display:none}.filter-row button{border:1px solid var(--line);background:transparent;color:#b6b7bf;padding:10px 17px;font-size:14px;white-space:nowrap}.filter-row button:hover,.filter-row button.selected{color:#fff;background:#a84b41;border-color:#a84b41}.detail{padding-top:38px;padding-bottom:100px}.back-link{display:inline-flex;align-items:center;gap:11px;color:#bfc0c8;font-size:14px;padding:8px 0;margin-bottom:43px}.back-link:hover{color:#fff}.detail-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:28px}.detail-head h1{font-size:clamp(43px,6vw,88px);line-height:1.15;letter-spacing:-.07em;margin:11px 0 0}.detail-count{color:#767984;font-size:14px;white-space:nowrap}.detail-stage{height:min(62vw,680px);min-height:320px;position:relative;overflow:hidden;background:#171a24}.detail-stage .art{position:absolute;inset:0}.detail-stage:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,8,12,.65),transparent 45%)}.detail-stage-label{position:absolute;z-index:1;left:32px;bottom:27px;font-size:13px;color:#fff;letter-spacing:.15em}.detail-body{display:grid;grid-template-columns:1fr minmax(240px,350px);gap:60px;padding:43px 0 65px;border-bottom:1px solid var(--line)}.detail-body h2{font-size:27px;margin:0 0 17px}.detail-body p{max-width:720px;color:#b5b6bf;font-size:16px;line-height:2;margin:0}.facts{border-top:1px solid var(--line)}.fact{padding:14px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:14px}.fact span{color:#8d909a}.fact strong{font-weight:500;text-align:right}.next-work{display:flex;align-items:center;justify-content:space-between;padding:50px 0;color:#e7e2dc}.next-work small{display:block;color:#878995;font-size:13px;margin-bottom:10px}.next-work strong{font-size:31px}.next-work b{font-size:28px;color:var(--accent)}.about-page{padding-top:85px;padding-bottom:120px}.about-page h1{font-size:clamp(44px,6vw,88px);letter-spacing:-.07em;line-height:1.15;max-width:950px;margin:13px 0 50px}.about-page h1 span{color:var(--accent)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px;border-top:1px solid var(--line);padding-top:36px}.about-grid p{color:#b6b7c0;font-size:17px;line-height:2;margin:0;max-width:650px}.about-list{list-style:none;margin:0;padding:0}.about-list li{padding:15px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;font-size:16px}.about-list b{color:var(--accent);font-size:13px}.site-footer{border-top:1px solid var(--line);padding:35px clamp(22px,4vw,72px) 42px;display:flex;justify-content:space-between;align-items:center;gap:20px;color:#848692;font-size:13px}.footer-brand{font-size:24px;color:#f3eee8;font-weight:800;letter-spacing:-.08em}.site-footer a:hover{color:#fff}@media(max-width:900px){.site-header{gap:26px}.header-note{display:none}.hero{grid-template-columns:1fr}.hero-copy{min-height:470px;padding:70px 7vw 80px}.hero-side{min-height:450px}.hero-scroll{display:none}.number-strip{grid-template-columns:repeat(3,1fr)}.number-strip a:nth-child(3){border-right:0}.number-strip a:nth-child(-n+3){border-bottom:1px solid var(--line)}.works-grid{grid-template-columns:repeat(2,1fr)}.detail-body{gap:25px}}@media(max-width:600px){.site-header{height:66px;padding:0 20px;gap:18px}.brand{font-size:20px}.brand-mark{width:26px;height:26px;font-size:13px}.top-nav{margin-left:auto;gap:16px;font-size:13px}.top-nav a{padding:22px 0}.top-nav a:last-child{display:none}.hero-copy{min-height:420px;padding:64px 22px 75px}.hero h1{font-size:clamp(53px,14vw,76px)}.hero-copy p{font-size:15px}.hero-side{min-height:340px}.hero-frame{inset:15px}.hero-index{top:32px;right:35px}.hero-caption{left:34px;bottom:37px}.hero-caption h2{font-size:28px}.number-strip{grid-template-columns:repeat(2,1fr)}.number-strip a{min-height:96px}.number-strip a:nth-child(2n){border-right:0}.number-strip a:nth-child(3){border-right:1px solid var(--line)}.number-strip a:nth-child(4){border-bottom:1px solid var(--line)}.section-head{padding-top:65px;align-items:start}.section-head h2{font-size:38px}.section-head .text-link{margin-top:18px}.works-grid{grid-template-columns:1fr;gap:22px;padding-bottom:70px}.work-thumb{aspect-ratio:1.28}.page-heading{padding-top:55px}.detail{padding-top:20px;padding-bottom:60px}.back-link{margin-bottom:28px}.detail-head{display:block}.detail-head h1{font-size:48px}.detail-count{display:none}.detail-stage{height:390px;min-height:0}.detail-body{grid-template-columns:1fr;gap:28px;padding:32px 0}.detail-body h2{font-size:23px}.detail-body p{font-size:15px}.about-page{padding-top:60px}.about-grid{grid-template-columns:1fr;gap:34px}.about-page h1{font-size:48px}.site-footer{flex-wrap:wrap}.site-footer a{margin-left:auto}}
