:root{font-family:Noto Sans SC,Microsoft YaHei,Arial,sans-serif;color:#20201e;background:#fffdf8;font-synthesis:none;font-weight:400;--paper:#fffdf8;--red:#f04431;--orange:#ff8a35;--ink:#20201e;--line:#dcd9d1;scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.55}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid #ff9e5c;outline-offset:6px}::selection{color:var(--paper);background:var(--red)}svg{display:block;width:24px;height:24px}button{background:none;border:none}p,h1,h2,h3{margin:0}.wrap{width:min(100% - 112px,1700px);margin-inline:auto}section[id]{scroll-margin-top:32px}.eyebrow{font-size:13px;font-weight:600;letter-spacing:.08em}.hero{position:relative;min-height:850px;height:100svh;max-height:1250px;color:var(--paper);background:#b72c23;overflow:hidden}.hero-film,.hero-wash{position:absolute;top:0;right:0;bottom:0;left:0}.hero-film video{width:100%;height:100%;object-fit:cover;object-position:70% center;filter:grayscale(1) contrast(1.15);opacity:.64}.hero-wash{background:linear-gradient(90deg,#b11c14e8,#d22318b3 48%,#cc2c1c33);mix-blend-mode:normal}.navbar{height:115px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:10;border-bottom:1px solid #ffffff40}.brand{display:flex;align-items:center;gap:13px;font-size:29px;letter-spacing:-1.5px;font-weight:900}.brand-symbol{font-size:51px;line-height:1}.brand-en{font-family:Arial,sans-serif;font-size:13px;letter-spacing:-.3px;margin-left:9px;font-weight:600}.navigation{display:flex;gap:44px;font-size:14px}.navigation a{transition:opacity .2s}.navigation a:hover{opacity:.6}.navigation a span{font-size:11px;margin-left:5px}.nav-contact{display:flex;align-items:center;gap:28px;border:1px solid #ffffff70;border-radius:30px;padding:13px 20px;font-size:14px}.nav-contact svg{width:18px;height:18px}.menu-toggle{display:none}.hero-body{position:relative;z-index:1;padding-top:60px}.hero-kicker{font-size:13px;display:flex;align-items:center;gap:9px;letter-spacing:.05em}.tiny-cross{font-size:20px;font-weight:400}.hero-index{margin-left:auto;font-family:Arial,sans-serif;font-size:11px;letter-spacing:.12em}h1{font-size:clamp(110px,11.7vw,214px);font-weight:900;letter-spacing:-.07em;line-height:1.08;margin-top:35px;position:relative}h1>span{display:block}.second-line{position:relative;padding-left:14vw}.orange-stop{color:var(--orange)}.title-asterisk{display:inline-block;color:var(--orange);font-family:Arial,sans-serif;position:absolute;font-size:.65em;right:12%;top:10%;font-weight:400;line-height:1;transform:rotate(-15deg)}.hero-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:28px}.hero-intro{font-size:16px;line-height:1.9}.hero-intro p+p{font-size:14px;opacity:.8;letter-spacing:.04em}.hero-intro span{margin-inline:8px;color:var(--orange)}.round-cta{display:flex;align-items:center;gap:25px;border-radius:60px;background:var(--orange);color:#361909;padding:20px 25px;font-size:14px;line-height:1.6;transition:background .2s,transform .2s}.round-cta:hover{background:var(--paper);transform:translateY(-3px)}.round-cta svg{width:34px;height:34px}.hero-foot{position:absolute;bottom:26px;left:0;right:0;display:flex;justify-content:space-between;align-items:center;font-size:12px;padding-top:22px;border-top:1px solid #ffffff40}.scroll-cue{display:flex;gap:16px;align-items:center}.scroll-cue span{font-size:24px;line-height:1}.film-hint{opacity:.7;font-size:11px;letter-spacing:.15em}.video-toggle{display:flex;align-items:center;gap:10px;font-size:12px;padding:0}.video-toggle span{font-size:20px}@media(min-width:1800px){.hero-body{padding-top:85px}.hero-bottom{margin-top:40px}}@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.hero{min-height:780px}.hero-body{padding-top:60px}.navigation{gap:24px}h1{font-size:13.5vw}.hero-bottom{margin-top:55px}.title-asterisk{right:4%}.hero-index{font-size:10px}}@media(max-width:700px){.wrap{width:calc(100% - 40px)}.hero{min-height:740px;height:100svh;max-height:950px}.navbar{height:90px}.brand{font-size:23px}.brand-symbol{font-size:39px}.brand-en{font-size:10px}.nav-contact{margin-left:auto;margin-right:12px;padding:10px 14px;gap:10px;font-size:12px}.nav-contact svg{width:14px;height:14px}.menu-toggle{display:block;font-size:12px;padding:7px 0}.navigation{display:none}.navigation.open{position:absolute;display:flex;flex-direction:column;top:80px;left:0;right:0;padding:25px;background:#9e251d;box-shadow:0 10px 20px #0002}.hero-body{padding-top:58px}.hero-kicker{font-size:11px}.hero-index{display:none}h1{font-size:20vw;line-height:1.25;margin-top:32px;letter-spacing:-.08em}.second-line{padding-left:8vw}.title-asterisk{right:1%;top:12%;font-size:.6em}.hero-bottom{margin-top:42px;align-items:flex-start;gap:15px}.hero-intro{font-size:12px;line-height:2}.hero-intro p+p{font-size:11px;max-width:180px}.hero-intro span{margin-inline:3px}.round-cta{font-size:11px;padding:13px 16px;gap:8px;flex-shrink:0}.round-cta svg{width:23px;height:23px}.hero-foot{bottom:25px;font-size:11px}.film-hint{display:none}.video-toggle{font-size:11px}}.red-text{color:var(--red)}.skip-link{position:fixed;top:10px;left:10px;z-index:100;padding:12px 20px;background:var(--paper);color:var(--ink);transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.section-label{display:flex;align-items:center;gap:10px;font:12px Arial,sans-serif;letter-spacing:.07em;white-space:nowrap}.section-label .tiny-cross{font-size:21px}.section-heading{display:grid;grid-template-columns:31% 1fr;align-items:start;gap:30px;margin-bottom:75px}.section-heading .section-label{padding-top:14px}h2{font-size:clamp(44px,4.5vw,82px);line-height:1.25;letter-spacing:-.06em;font-weight:800}.heading-sub{margin-top:24px;font:12px Arial,sans-serif;letter-spacing:.1em;color:#767570}.about-section{padding-block:115px 120px}.about-grid{display:grid;grid-template-columns:.85fr 1.2fr;gap:8%;align-items:center}.portrait{position:relative;margin:0;align-self:stretch;min-height:610px;background:#fff}.portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top;position:absolute;top:0;right:0;bottom:0;left:0}.portrait-corner{position:absolute;top:25px;left:25px;color:#777;font:12px/1.4 Arial,sans-serif;letter-spacing:.08em}.portrait figcaption{position:absolute;bottom:24px;left:25px;color:#fff9;font-size:11px}.portrait-stamp{display:flex;justify-content:center;align-items:center;position:absolute;right:-27px;bottom:55px;width:116px;height:116px;background:var(--orange);color:#27190f;border-radius:50%;font-size:20px;line-height:1.4;font-weight:600;transform:rotate(12deg)}.about-copy{padding-block:8px}.about-copy .eyebrow{font-size:13px;letter-spacing:.02em}.about-copy h3{font-size:clamp(26px,2.3vw,40px);letter-spacing:-.045em;line-height:1.55;margin-block:22px 25px}.about-copy>p{max-width:620px;color:#6d6c66;font-size:16px;line-height:1.95;margin-bottom:13px}.experience{margin-block:34px 30px}.experience>div{display:grid;grid-template-columns:105px 1fr;gap:6px 18px;border-top:1px solid var(--line);padding-block:17px}.experience-label{font-size:11px;color:#8d8b83;grid-row:span 2;padding-top:3px}.experience strong{font-size:15px;font-weight:600}.experience>div>span:last-child{font-size:12px;color:#817f76}.stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);padding-top:18px}.stats>div{display:flex;flex-direction:column;gap:7px}.stats strong{font:64px/1.2 Arial,sans-serif;letter-spacing:-.09em}.stats span{font-size:12px;color:#686761}.about-note{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:24px}.about-note>span{font-size:11px;color:#99968c}.about-note a{display:flex;align-items:center;gap:15px;font-size:13px;border-bottom:1px solid var(--ink);padding-bottom:7px}.about-note svg{width:15px;height:15px}.work-section{padding-block:105px 75px;border-top:1px solid var(--line);background:#f2f0ea}.work-heading{display:flex;justify-content:space-between;gap:45px;align-items:end;margin-bottom:65px}.work-heading h2{margin-top:32px}.work-heading>p{font-size:16px;color:#76736d;line-height:1.8;padding-bottom:8px}.work-heading>p span{display:block;font:11px Arial,sans-serif;letter-spacing:.09em;margin-top:30px}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px 28px}.project-visual{display:block;padding:0;text-align:left;width:100%;aspect-ratio:16 / 10;background:#201e1d;overflow:hidden;position:relative;color:#fff}.project-visual:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(#0005,transparent 35%,transparent 60%,#0006);pointer-events:none}.project-visual>img,.project-visual>video{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s cubic-bezier(.2,.6,.2,1),filter .7s}.project-visual:hover>img,.project-visual:hover>video{transform:scale(1.035);filter:brightness(.87)}.project-preview-fallback{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:flex-end;gap:10px;padding:34px;background:radial-gradient(circle at 72% 28%,#ff8a3566 0 8%,transparent 29%),linear-gradient(135deg,#24120e,#a61c17 48%,#ef4930);transition:transform .7s cubic-bezier(.2,.6,.2,1)}.project-preview-fallback:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#ffffff12 1px,transparent 1px),linear-gradient(#ffffff10 1px,transparent 1px);background-size:84px 84px;opacity:.3}.project-preview-fallback>span{position:relative;z-index:1;font-size:clamp(30px,3vw,54px);line-height:1;font-weight:900;letter-spacing:-.08em}.project-preview-fallback>small{position:relative;z-index:1;font:700 12px/1.4 Arial,sans-serif;letter-spacing:.18em;opacity:.72}.project-visual:hover .project-preview-fallback{transform:scale(1.035)}.project-topline{position:absolute;left:28px;right:28px;top:24px;display:flex;justify-content:space-between;gap:20px;z-index:1;font-size:11px}.project-topline>span:last-child{padding:6px 12px;border:1px solid #ffffff60;border-radius:30px;margin-top:-6px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.project-action{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2;display:flex;flex-direction:column;align-items:center;gap:12px}.project-action>svg,.play-icon{width:60px;height:60px;padding:18px;background:#ffffff14;border:1px solid #ffffff70;border-radius:50%;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:background .3s,color .3s}.play-icon{font:31px/1 Arial,sans-serif;padding:13px 14px 14px 18px}.project-action>span:last-child{font-size:11px;white-space:nowrap;letter-spacing:.07em}.project-visual:hover .project-action>svg,.project-visual:hover .play-icon{color:var(--ink);background:var(--orange);border-color:var(--orange)}.project-frame-index{position:absolute;bottom:20px;right:25px;font:10px Arial,sans-serif;letter-spacing:.1em;z-index:1}.project-caption{padding-top:22px;display:flex;align-items:center;justify-content:space-between;gap:12px}.project-caption>div{display:flex;align-items:start;gap:16px}.project-id{font:11px Arial,sans-serif;color:var(--red);padding-top:8px}.project-caption h3{font-size:24px;letter-spacing:-.04em;font-weight:600}.project-caption h3 span{font:10px Arial,sans-serif;color:#8a867d;letter-spacing:.09em;display:inline-block;margin-left:18px}.project-type{color:#8a867d;font-size:11px}.work-note{font-size:11px;color:#8a867d;border-top:1px solid #d5d2c9;padding-top:25px;margin-top:55px}.work-note>span{color:var(--red);margin-right:8px}.skills-section{padding-block:115px 125px}.skills-section .heading-sub{font-family:inherit;font-size:13px;letter-spacing:.03em}.skills-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}.skill-card{padding:28px 26px 30px;min-width:0}.skill-card+.skill-card{border-left:1px solid var(--line)}.skill-card:nth-child(2){background:var(--red);color:var(--paper);border-color:var(--red)}.skill-card-top{display:flex;justify-content:space-between;align-items:start;margin-bottom:65px}.skill-card-top>span{font:12px Arial,sans-serif;opacity:.5}.skill-symbol{width:57px;height:57px;color:var(--red)}.skill-card:nth-child(2) .skill-symbol{color:var(--paper)}.skill-english{font:10px Arial,sans-serif;letter-spacing:.07em;opacity:.55}.skill-card h3{font-size:clamp(18px,1.52vw,27px);letter-spacing:-.05em;white-space:nowrap;margin-top:15px}.skill-card>p{font-size:16px;line-height:1.9;color:#7c7a73;margin-top:20px;min-height:125px}.skill-card:nth-child(2)>p{color:#fffdf8cc}.skill-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:20px}.skill-tags>span{font-size:10px;padding:6px 8px;border:1px solid #dedbd2;border-radius:3px;white-space:nowrap}.skill-card:nth-child(2) .skill-tags>span{border-color:#fff6}.contact-section{min-height:840px;background:var(--red);color:var(--paper);padding-top:53px;position:relative;overflow:hidden}.contact-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:28px;border-bottom:1px solid #fff5}.contact-top>span{font-size:12px;opacity:.85}.contact-title{display:flex;align-items:end;justify-content:space-between;margin-top:65px;gap:25px}.contact-title h2{font-size:clamp(75px,9.7vw,175px);letter-spacing:-.07em;line-height:1.17;font-weight:900}.contact-title h2>span{color:#ffae62}.contact-circle{display:flex;align-items:center;justify-content:center;flex-direction:column;background:var(--orange);color:#592814;border-radius:50%;width:clamp(140px,14vw,230px);height:clamp(140px,14vw,230px);flex-shrink:0;margin:0 3% 8px 0;transition:transform .4s,background .3s}.contact-circle:hover{transform:rotate(-8deg);background:var(--paper)}.contact-circle svg{width:80px;height:80px;margin-bottom:15px}.contact-circle span{font-size:13px}.contact-bottom{display:flex;justify-content:space-between;align-items:end;margin-block:48px 55px}.contact-bottom p{font-size:14px;line-height:1.85}.contact-bottom p span{font-size:12px;opacity:.7}.contact-link{display:flex;gap:45px;align-items:center;padding:12px 0;font-size:19px;border-bottom:1px solid #fff}.footer-line{display:flex;align-items:center;justify-content:space-between;padding-block:24px;border-top:1px solid #fff5;font-size:11px}.footer-brand{font:700 27px Arial,sans-serif;letter-spacing:-.08em}.footer-line>span{opacity:.7}.detail-dialog{border:0;padding:0;width:min(1040px,calc(100% - 48px));max-height:90svh;color:var(--ink);background:var(--paper);overflow:auto}.detail-dialog::backdrop{background:#120c0bd9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.dialog-close{position:sticky;z-index:5;top:14px;float:right;margin:14px 16px -53px 0;padding:8px 15px;display:flex;align-items:center;gap:15px;border-radius:30px;background:var(--paper);box-shadow:0 0 12px #0002;font-size:12px}.dialog-close span{font-size:23px;line-height:1}.dialog-media{background:#151312}.dialog-media>video,.dialog-media>img{width:100%;max-height:65svh;object-fit:contain;display:block}.dialog-project-info{padding:32px 38px}.dialog-project-info h2{font-size:34px;margin-top:14px}.dialog-project-info h2 span{display:inline-block;font:12px Arial,sans-serif;color:#969086;letter-spacing:.04em;margin-left:20px}.dialog-project-info>p{margin-top:20px;font-size:15px;line-height:1.8}.dialog-project-info .project-role{color:#928c82;font-size:12px;margin-top:15px}.media-error{padding:30px;color:#fff}.contact-dialog{width:min(650px,calc(100% - 40px))}.contact-dialog-content{padding:70px 48px 30px}.contact-dialog h2{font-size:40px;margin-top:20px}.contact-dialog-content>p{margin:25px 0 35px;font-size:14px;color:#888276}.contact-method{display:flex;align-items:center;flex-wrap:wrap;gap:18px;border-top:1px solid var(--line);padding-block:22px;font-size:15px}.contact-method>span:first-child{font:11px Arial,sans-serif;color:#969086;min-width:68px}.contact-method>a{word-break:break-all}.contact-method>button{margin-left:auto;font-size:12px;padding:5px 10px;border:1px solid var(--line);border-radius:3px}.contact-dialog-content>.contact-pending,.contact-dialog-content>.copy-feedback{font-size:12px;margin-block:15px}.contact-dialog-content>.copy-feedback{color:var(--red);min-height:18px}@media(min-width:1800px){.contact-section{min-height:100svh}.contact-bottom{margin-block:65px 70px}}@media(max-width:1100px){.section-heading{grid-template-columns:25% 1fr;gap:24px}.about-grid{gap:7%;grid-template-columns:.85fr 1.1fr}.portrait{min-height:620px}.experience>div{grid-template-columns:90px 1fr;gap:8px}.portrait-stamp{width:95px;height:95px;font-size:17px}.skills-grid{grid-template-columns:1fr 1fr}.skill-card{padding:30px}.skill-card:nth-child(3){border-left:0}.skill-card:nth-child(n+3){border-top:1px solid var(--line)}.skill-card h3{font-size:25px}.skill-card-top{margin-bottom:45px}.skill-card>p{min-height:60px}.project-caption h3 span{display:block;margin:9px 0 0}.contact-section{min-height:740px}.contact-title{margin-top:70px}.contact-title h2{font-size:11vw}.contact-bottom{margin-top:60px}.contact-circle{margin-right:0}}@media(max-width:700px){.section-heading{display:block;margin-bottom:42px}.section-heading .section-label{padding-top:0;margin-bottom:28px}h2{font-size:39px}.about-section{padding-block:70px}.heading-sub{font-size:10px;margin-top:20px}.about-grid{grid-template-columns:1fr;gap:45px}.portrait{height:auto;min-height:0;aspect-ratio:4/4.2;margin-right:20px}.portrait img{object-position:center top}.portrait-stamp{right:-20px;bottom:30px}.about-copy h3{font-size:28px}.experience>div{grid-template-columns:95px 1fr}.stats strong{font-size:55px}.work-section{padding-block:65px 45px}.work-heading{display:block;margin-bottom:35px}.work-heading h2{margin-top:25px}.work-heading>p{font-size:16px;margin-top:25px}.work-heading>p span{margin-top:18px;font-size:10px}.project-grid{grid-template-columns:1fr;gap:32px}.project-visual{aspect-ratio:1.6}.project-topline{top:20px;left:18px;right:18px;font-size:10px}.project-topline>span:last-child{padding:4px 8px}.project-action>span:last-child{font-size:10px}.project-caption{padding-top:18px}.project-caption h3{font-size:23px}.project-type{font-size:10px}.work-note{margin-top:35px;font-size:11px;line-height:1.8}.skills-section{padding-block:70px}.skills-grid{grid-template-columns:1fr}.skill-card{padding:25px}.skill-card+.skill-card{border-left:0;border-top:1px solid var(--line)}.skill-card-top{margin-bottom:25px}.skill-card>p{min-height:0;font-size:16px;margin-top:18px}.skill-card h3{font-size:27px;white-space:normal}.skill-tags>span{font-size:11px}.contact-section{padding-top:35px;min-height:760px}.contact-top>span{font-size:10px}.contact-top .section-label{font-size:10px;gap:6px}.contact-title{position:relative;display:block;margin-top:50px}.contact-title h2{font-size:15.5vw;line-height:1.25}.contact-circle{width:105px;height:105px;margin-top:25px;margin-left:auto}.contact-circle svg{width:38px;height:38px;margin-bottom:8px}.contact-circle span{font-size:10px}.contact-bottom{margin-block:30px 40px;gap:15px}.contact-bottom p{font-size:11px}.contact-bottom p span{font-size:10px}.contact-link{font-size:14px;gap:18px}.contact-link svg{width:18px;height:18px}.footer-brand{font-size:22px}.footer-line{font-size:10px;gap:15px;flex-wrap:wrap}.footer-line>span{order:3;flex-basis:100%;margin-top:4px}.detail-dialog{width:calc(100% - 24px)}.dialog-project-info{padding:28px 23px}.dialog-project-info h2{font-size:28px}.dialog-project-info h2 span{font-size:10px;margin-left:12px}.dialog-project-info>p{font-size:14px}.contact-dialog-content{padding:70px 24px 25px}.contact-dialog h2{font-size:30px}.contact-dialog .eyebrow{font-size:10px}}@media(max-width:380px){.brand-en{display:none}.hero-intro{font-size:12px}.hero-bottom{gap:10px}.round-cta{padding:12px;gap:4px}}:root{--paper: #f4f0e8;--paper-light: #fbf8f2;--red: #ef3d2f;--red-deep: #b51f1b;--orange: #ff7928;--ink: #171715;--muted: #77736b;--line: #d4cfc5;--ease-expo: cubic-bezier(.16,1,.3,1);--ease-power3: cubic-bezier(.22,1,.36,1)}html{background:var(--paper)}body{color:var(--ink);background:var(--paper);overflow-x:clip}main{position:relative;z-index:2;background:transparent}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;pointer-events:none;opacity:.035;background-image:repeating-radial-gradient(circle at 18% 32%,#000 0 .55px,transparent .7px 3px);background-size:5px 5px;mix-blend-mode:multiply}.site-curtain{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999;pointer-events:none;background:var(--red);transform-origin:top;animation:curtain-open 1.35s var(--ease-expo) .08s both}.global-film{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden;background:#b72c23}.global-film video{display:block;width:100%;height:100%;object-fit:cover;object-position:70% center;filter:grayscale(.75) contrast(1.18) saturate(.82);opacity:.82}@keyframes curtain-open{0%,18%{clip-path:inset(0 0 0 0);transform:translateY(0)}to{clip-path:inset(0 0 100% 0);transform:translateY(-2%)}}.hero{min-height:880px;max-height:1180px;z-index:1;background:transparent;isolation:isolate}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;background:linear-gradient(180deg,#08000033 0%,transparent 32%,transparent 70%,#25030266 100%)}.hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none;opacity:.23;background-image:linear-gradient(90deg,transparent calc(25% - .5px),#fff4 25%,transparent calc(25% + .5px),transparent calc(50% - .5px),#fff3 50%,transparent calc(50% + .5px),transparent calc(75% - .5px),#fff3 75%,transparent calc(75% + .5px))}.hero-film{top:-6%;right:0;bottom:-6%;left:0;transform:translate3d(0,var(--parallax-y,0),0) scale(1.08);will-change:transform}.hero-film video{filter:grayscale(.75) contrast(1.18) saturate(.82);opacity:.82}.hero-wash{z-index:1;background:linear-gradient(90deg,#9c0f11f5,#cc201bd1 42%,#ce341f40 77%,#46080638)}.navbar{height:102px;z-index:8;border-bottom-color:#ffffff4d}.brand{font-size:27px;letter-spacing:-.06em}.brand-symbol{color:var(--orange);font-size:44px}.navigation{gap:52px;font-size:12px;letter-spacing:.06em}.navigation a{position:relative;padding-block:12px;transition:opacity .65s var(--ease-power3)}.navigation a:after{content:"";position:absolute;left:0;right:0;bottom:6px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .7s var(--ease-expo)}.navigation a:hover{opacity:1}.navigation a:hover:after{transform:scaleX(1);transform-origin:left}.nav-contact{border-radius:0;padding:12px 0 10px;border:0;border-bottom:1px solid #ffffffb3;gap:34px}.hero-body{z-index:5;padding-top:clamp(62px,7vh,92px)}.hero-kicker{font-size:12px;text-transform:uppercase}h1{font-size:clamp(96px,9.4vw,168px);line-height:.9;margin-top:clamp(48px,7vh,82px);letter-spacing:-.075em}h1 .title-line{display:block;overflow:hidden;padding-block:.08em;margin-block:-.08em}h1 .title-line>span{display:block}.second-line{padding-left:19vw}.title-asterisk{right:9%;top:7%;color:var(--orange)}.hero-bottom{margin-top:clamp(40px,6vh,72px)}.hero-intro{font-size:15px}.round-cta{position:relative;isolation:isolate;overflow:hidden;border-radius:0;min-width:190px;justify-content:space-between;padding:19px 20px;background:var(--orange);transition:transform .8s var(--ease-expo)}.round-cta:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:var(--paper-light);transform:scaleX(0);transform-origin:right;transition:transform .85s var(--ease-expo)}.round-cta:hover{background:var(--orange);transform:translateY(-5px)}.round-cta:hover:before{transform:scaleX(1);transform-origin:left}.hero-foot{z-index:5;bottom:30px}.scroll-cue span{color:var(--orange)}.navbar{opacity:0;animation:hero-rise 1.2s var(--ease-expo) 1.05s forwards}.hero-kicker{opacity:0;animation:hero-rise 1.15s var(--ease-expo) 1.18s forwards}.title-line>span{transform:translateY(112%);animation:title-in 1.35s var(--ease-expo) 1.22s forwards}.title-line:nth-child(2)>span{animation-delay:1.34s}.hero-intro{opacity:0;animation:hero-rise 1.15s var(--ease-expo) 1.52s forwards}.round-cta{opacity:0;animation:hero-rise 1.15s var(--ease-expo) 1.62s forwards}.hero-foot{opacity:0;animation:hero-rise 1.15s var(--ease-expo) 1.72s forwards}@keyframes hero-rise{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}@keyframes title-in{0%{transform:translateY(112%)}to{transform:translateY(0)}}.about-section{padding-block:clamp(130px,12vw,205px);background:#fffdf8b8;box-shadow:0 0 0 100vmax #fffdf8b8;clip-path:inset(0 -100vmax)}.section-heading{grid-template-columns:24% 1fr;margin-bottom:clamp(85px,8vw,135px)}.section-label{font-size:11px;letter-spacing:.13em}.section-label .tiny-cross{color:var(--red)}h2{font-size:clamp(54px,5.15vw,94px);line-height:1.08;letter-spacing:-.068em}.heading-sub{margin-top:30px;letter-spacing:.16em}.about-grid{grid-template-columns:5fr 6fr;gap:10%;align-items:start}.portrait{min-height:720px;box-shadow:22px 22px #e9e3d9;overflow:hidden}.portrait img{height:112%;top:-6%;transform:translate3d(0,var(--parallax-y,0),0) scale(1.035);will-change:transform}.portrait-corner{color:#20201e99;letter-spacing:.14em}.portrait figcaption{color:#fff;letter-spacing:.08em}.portrait-stamp{right:-7px;bottom:38px;width:132px;height:132px;border-radius:0;font-size:18px;transform:rotate(7deg)}.about-copy{padding-top:3.5vw}.about-copy h3{font-size:clamp(30px,2.55vw,46px);line-height:1.38;margin-block:28px 34px}.about-copy>p{font-size:15px;line-height:2.05}.experience{margin-block:52px 36px}.experience>div{padding-block:22px}.stats{padding-top:24px}.stats strong{font-size:72px}.work-section{padding-block:clamp(125px,10vw,180px) 110px;background:#e9e5ddbd;border-top:0}.work-heading{align-items:start;margin-bottom:clamp(72px,7vw,116px)}.work-heading>div{max-width:930px}.work-heading h2{margin-top:42px}.work-heading>p{padding-top:42px;max-width:340px}.project-grid{grid-template-columns:repeat(12,1fr);gap:86px 32px;align-items:start}.project-card{position:relative;grid-column:span 6;transition:transform 1s var(--ease-expo)}.project-card:nth-child(1),.project-card:nth-child(4){grid-column:span 7}.project-card:nth-child(2),.project-card:nth-child(3){grid-column:span 5}.project-card:nth-child(2){margin-top:120px}.project-card:nth-child(4){margin-top:92px}.project-card:hover{transform:translateY(-10px)}.project-visual{aspect-ratio:16/10;background:#0f0f0e}.project-card:nth-child(2) .project-visual,.project-card:nth-child(3) .project-visual{aspect-ratio:4/3}.project-visual>img,.project-visual>video{height:112%;margin-top:-6%;transform:translate3d(0,var(--parallax-y,0),0) scale(1.045);transition:transform 1.25s var(--ease-expo),opacity .8s var(--ease-power3);will-change:transform}.project-visual:hover>img,.project-visual:hover>video{transform:translate3d(0,var(--parallax-y,0),0) scale(1.09);filter:none;opacity:.82}.project-visual:after{z-index:1;background:linear-gradient(180deg,#0008 0%,transparent 34%,transparent 58%,#000a 100%)}.project-topline{z-index:2;left:24px;right:24px;top:22px;letter-spacing:.08em}.project-action{z-index:2;gap:14px}.play-icon{width:72px;height:72px;padding:18px 19px 18px 24px;font-size:33px;transition:transform .85s var(--ease-expo)}.project-visual:hover .play-icon{transform:scale(.9)}.project-frame-index{z-index:2}.project-caption{padding-top:27px;border-top:1px solid transparent}.project-caption h3{font-size:clamp(24px,2vw,34px);font-weight:700}.project-caption h3 span{display:block;margin:11px 0 0}.project-type{align-self:flex-start;padding-top:10px;letter-spacing:.09em}.work-note{margin-top:92px;padding-top:28px}.skills-section{padding-block:clamp(130px,11vw,190px);background:#fffdf8b8;box-shadow:0 0 0 100vmax #fffdf8b8;clip-path:inset(0 -100vmax)}.skills-grid{border:0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.skill-card{position:relative;min-height:455px;padding:34px 28px 32px;overflow:hidden;transition:transform .9s var(--ease-expo)}.skill-card:before{content:"";position:absolute;right:-92px;bottom:-92px;width:220px;height:220px;border:1px solid currentColor;border-radius:50%;opacity:.08;pointer-events:none}.skill-card:hover{transform:translateY(-8px)}.skill-card:nth-child(2){background:var(--red)}.skill-card-top{margin-bottom:82px}.skill-symbol{width:62px;height:62px}.skill-card>p{min-height:138px}.contact-section{z-index:2;min-height:100svh;padding-top:58px;background:#d83227d1}.contact-section:before{content:"✳";position:absolute;right:-.08em;top:.14em;font:400 min(62vw,980px)/1 Arial,sans-serif;color:#7f0f0d1f;transform:rotate(-12deg);pointer-events:none}.contact-title{margin-top:clamp(72px,8vh,115px)}.contact-title h2{font-size:clamp(92px,10.5vw,188px);line-height:.98}.contact-circle{position:relative;isolation:isolate;overflow:hidden;border-radius:50%;background:var(--orange);transition:transform 1s var(--ease-expo)}.contact-circle:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;border-radius:50%;background:var(--paper-light);transform:scaleX(0);transform-origin:right;transition:transform .9s var(--ease-expo)}.contact-circle:hover{transform:rotate(-5deg) translateY(-7px);background:var(--orange)}.contact-circle:hover:before{transform:scaleX(1);transform-origin:left}.contact-bottom{margin-block:clamp(55px,7vh,90px) 64px}.contact-link{transition:transform .75s var(--ease-expo)}.contact-link:hover{transform:translate(-8px)}.footer-line{position:relative}.motion-ready [data-reveal]{opacity:0;transform:translateY(52px);clip-path:inset(0 0 14% 0);transition:transform 1.15s var(--ease-expo),opacity .9s var(--ease-power3),clip-path 1.15s var(--ease-expo)}.motion-ready [data-reveal].is-visible{opacity:1;transform:translateY(0);clip-path:inset(0 0 0 0)}.motion-ready .project-card.is-visible:hover,.motion-ready .skill-card.is-visible:hover{transform:translateY(-10px);transition-delay:0s}.motion-ready .section-heading .section-title-block{transition-delay:.1s}.motion-ready .project-card:nth-child(2),.motion-ready .skill-card:nth-child(2){transition-delay:.12s}.motion-ready .project-card:nth-child(3),.motion-ready .skill-card:nth-child(3){transition-delay:.22s}.motion-ready .project-card:nth-child(4),.motion-ready .skill-card:nth-child(4){transition-delay:.32s}.project-visual:before,.portrait.image-reveal:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;pointer-events:none;background:var(--red);clip-path:inset(0 0 0 0);transition:clip-path 1.35s var(--ease-expo) .18s}.project-card.is-visible .project-visual:before,.portrait.image-reveal.is-visible:after{clip-path:inset(0 0 0 100%)}.detail-dialog{box-shadow:0 45px 120px #0a050557}.detail-dialog[open]{animation:dialog-enter .7s var(--ease-expo) both}@keyframes dialog-enter{0%{opacity:0;transform:translateY(28px);clip-path:inset(8% 0 0 0)}to{opacity:1;transform:translateY(0);clip-path:inset(0)}}@media(max-width:1100px){.hero{min-height:800px}.second-line{padding-left:12vw}.project-card,.project-card:nth-child(n){grid-column:span 6;margin-top:0}.project-card:nth-child(n) .project-visual{aspect-ratio:16/10}.portrait{min-height:640px}.skill-card{min-height:390px}}@media(max-width:700px){body:before{opacity:.025}.site-curtain{animation-duration:.95s}.hero:after{display:none}.hero-film{top:0;right:0;bottom:0;left:0;transform:none!important;will-change:auto}.navbar{height:86px}.brand-symbol{font-size:36px}.navigation.open{background:#a91f1b}h1{font-size:17vw;line-height:1.05;margin-top:48px}.second-line{padding-left:7vw}.hero-bottom{margin-top:50px}.round-cta{min-width:0;border-radius:0}.about-section,.skills-section{padding-block:88px}.section-heading{margin-bottom:52px}h2{font-size:43px;line-height:1.12}.about-grid{gap:58px}.portrait{min-height:0;box-shadow:12px 12px #e9e3d9}.portrait img,.project-visual>img,.project-visual>video{height:100%;top:0;margin-top:0;transform:none!important;will-change:auto}.portrait-stamp{width:100px;height:100px;right:-14px;bottom:22px;font-size:15px}.about-copy{padding-top:0}.stats strong{font-size:54px}.work-section{padding-block:88px 62px}.work-heading{margin-bottom:50px}.project-grid{display:grid;grid-template-columns:1fr;gap:52px}.project-card,.project-card:nth-child(n){grid-column:auto;margin-top:0}.project-card:hover,.skill-card:hover,.motion-ready .project-card.is-visible:hover,.motion-ready .skill-card.is-visible:hover{transform:none}.project-card:nth-child(n) .project-visual{aspect-ratio:1.55}.play-icon{width:58px;height:58px;padding:13px 14px 14px 19px;font-size:29px}.project-caption h3{font-size:25px}.work-note{margin-top:52px}.skills-grid{border-color:var(--line)}.skill-card{min-height:0}.contact-section{min-height:780px}.contact-section:before{font-size:115vw;top:22%}.contact-title h2{font-size:16vw;line-height:1.08}.contact-circle:hover{transform:none}.motion-ready [data-reveal]{transform:translateY(28px);clip-path:inset(0 0 8% 0);transition-duration:.85s}.motion-ready [data-reveal].is-visible{transform:translateY(0);clip-path:inset(0)}.motion-ready .project-card:nth-child(n),.motion-ready .skill-card:nth-child(n){transition-delay:0s}}.hero-particles{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;width:100%;height:100%;pointer-events:none;opacity:.72;mix-blend-mode:screen}html.motion-enhanced .site-curtain{display:none}html.motion-enhanced .navbar,html.motion-enhanced .hero-kicker,html.motion-enhanced .hero-intro,html.motion-enhanced .round-cta,html.motion-enhanced .hero-foot,html.motion-enhanced .title-line>span{animation:none;opacity:1}html.motion-enhanced .title-line>span{transform:none}html.motion-enhanced .project-visual:before,html.motion-enhanced .portrait.image-reveal:after{display:none}.navbar{position:fixed;top:0;left:50%;right:auto;width:min(calc(100% - 112px),1700px);margin-inline:0;z-index:80;transform:translate(-50%)}.navbar.is-compact{top:10px;height:76px;padding-inline:24px;color:var(--paper);background:#4c0a08c7;border:1px solid #ffffff2e;box-shadow:0 14px 42px #21040326;backdrop-filter:blur(20px) saturate(1.22);-webkit-backdrop-filter:blur(20px) saturate(1.22)}.navbar.is-compact .brand-symbol{font-size:36px}.navbar.is-compact .brand{font-size:23px}.project-grid,.skills-grid{perspective:1200px}html.motion-enhanced section[id],html.motion-enhanced footer[id]{scroll-margin-top:100px}@media(max-width:767px){.hero-particles{display:none}.navbar{width:calc(100% - 40px)}.navbar.is-compact{top:6px;height:68px;padding-inline:14px}.navbar.is-compact .brand-symbol{font-size:31px}.navbar.is-compact .brand{font-size:20px}html.motion-enhanced section[id],html.motion-enhanced footer[id]{scroll-margin-top:80px}}.navigation a.is-active:after{transform:scaleX(1);transform-origin:left}.navigation a.is-active{opacity:1}
