@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap";.shell{width:min(1120px,calc(100% - 96px));margin-inline:auto}.header{height:96px;display:flex;align-items:center;justify-content:space-between}.wordmark{font-size:16px;font-weight:500;letter-spacing:-.4px}.wordmark span,h1>span{color:#c18b9e}.header nav{display:flex;gap:38px;font-size:13px}.header nav a{padding:5px 0;border-bottom:1px solid transparent}.header nav a:hover,.header nav a.active{border-color:#9f697f}.hero{display:grid;grid-template-columns:1.08fr 1fr;gap:40px;align-items:center;min-height:590px;padding-bottom:60px}.hero-copy{padding-block:42px}.eyebrow{font-size:10px!important;letter-spacing:2.4px;font-weight:600;color:#a37486;margin-bottom:23px}.hero h1{font-size:clamp(38px,4vw,54px);letter-spacing:-1.6px;margin-bottom:27px}.hero-copy>p:not(.eyebrow){font-size:14px;line-height:1.85;max-width:435px;margin-bottom:14px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:5px;padding:10px 19px;font-size:12px;color:#343237;font-weight:500;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px);background:#eddae1}.pink{background:#e8c2cf}.outline{border-color:#edd4b8;background:transparent}.peach{background:#f4dcbc}.hero-visual{display:flex;flex-direction:column;align-items:center}.hero-photo{width:100%;aspect-ratio:720/629;background-image:url(/assets/originals/image.png),url(/assets/originals/bg.svg);background-size:contain;background-position:center;background-repeat:no-repeat}.caption{margin-top:24px;font-family:Georgia,serif;font-style:italic;font-size:13px;color:#a0818d}.projects{padding-top:20px;scroll-margin-top:35px}.section-heading{text-align:center;margin-bottom:50px}.section-heading .eyebrow{margin-bottom:12px}.section-heading h2{font-size:34px;margin-bottom:17px}.underline{width:52px;height:3px;background:#f1d3ae;margin:auto}.project-list{display:grid;gap:42px;max-width:980px;margin:auto}.project-card{display:grid;grid-template-columns:1fr 1fr;min-height:330px;background:#fff;border-radius:15px;overflow:hidden;box-shadow:0 10px 35px #39395604;transition:transform .25s,box-shadow .25s}.project-card:hover{transform:translateY(-4px);box-shadow:0 12px 35px #69536312}.project-card:nth-child(2n) .project-art{order:2}.project-art{min-height:330px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background:radial-gradient(ellipse at 65% 45%,#f5dec0,#e6bece)}.project-copy{padding:38px 40px;display:flex;flex-direction:column;align-items:flex-start}.project-meta{width:100%;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.4px;color:#9b828d;margin-bottom:24px}.project-copy h3{font-size:30px;margin-bottom:7px}.project-copy p{font-size:12px;line-height:1.85;margin-bottom:20px}.project-copy .subtitle{font-size:12px;color:#57515a;margin-bottom:13px}.project-link{font-size:11px;font-weight:600;display:flex;gap:28px;align-items:center;margin-top:auto}.sorority-preview{width:62%;aspect-ratio:184/196;background-image:url(/assets/complete/Screenshot%202025-06-28%20202932%201.svg);background-size:contain;background-position:center;background-repeat:no-repeat;border-radius:22px;box-shadow:0 16px 28px #7e536323;transform:rotate(-3deg)}.music{background:radial-gradient(ellipse at 30% 30%,#f8e9d8,#e9c8d4)}.art-word{position:relative;font-family:Georgia,serif;font-size:65px;font-weight:600;color:#886477;letter-spacing:-3px;text-align:center}.art-word small{display:block;font-family:DM Sans,sans-serif;font-size:10px;letter-spacing:2px;font-weight:400;margin-top:4px}.notes{position:absolute;color:#fff7;font-size:160px;transform:rotate(-15deg);white-space:nowrap;letter-spacing:65px}.game{background:#e5e3f4}.game-preview{width:80%;aspect-ratio:212/146;background-image:url(/assets/originals/Screenshot%202025-06-28%20202932%201-1.svg);background-size:contain;background-position:center;background-repeat:no-repeat;border-radius:24px;box-shadow:0 18px 35px #37316920}.invite{text-align:center;padding:110px 0 85px}.invite h2{font-size:32px;margin-bottom:27px}.invite .eyebrow{margin-bottom:17px}.footer{border-top:1px solid #e8e5ed;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;padding-block:30px 28px;font-size:11px}.footer .wordmark{font-size:14px}.footer>span{color:#94909a;font-size:11px}.footer small{flex-basis:100%;text-align:center;color:#a5a1aa;font-size:10px;margin-top:12px}.inner{padding-block:75px 110px;min-height:calc(100vh - 241px)}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}.inner h1{font-size:44px;letter-spacing:-1px;margin-bottom:28px}.inner p{font-size:14px;line-height:1.9}.portrait{width:100%;aspect-ratio:188/190;background-image:url(/assets/originals/bg-2.png);background-size:contain;background-position:center;background-repeat:no-repeat;border-radius:50%;margin-top:8px}.inner .button{margin-top:10px}form{display:flex;flex-direction:column;margin-top:28px}label{font-size:11px;margin-bottom:7px}input,textarea{border:1px solid #eeedf3;background:#fff;border-radius:5px;padding:10px 12px;margin-bottom:18px;width:100%;color:#343237}textarea{resize:vertical;min-height:135px}form .button{align-self:flex-end}form .form-note{font-size:11px;min-height:25px}.back{display:inline-block;font-size:12px;color:#8b7580;margin-bottom:35px}.detail>.eyebrow{margin-bottom:12px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center;margin-top:40px}.detail-grid .project-art{min-height:400px;border-radius:18px}.detail-grid h2{font-size:25px}@media (max-width:800px){.shell{width:calc(100% - 48px)}.header{height:80px}.header nav{gap:22px}.hero{gap:15px;min-height:500px}.hero h1{font-size:37px}.hero .eyebrow{letter-spacing:1.7px}.project-copy{padding:28px}.two-column{gap:45px}.inner h1{font-size:36px}.detail-grid{gap:30px}}@media (max-width:580px){.shell{width:calc(100% - 40px)}.header{height:78px;gap:16px}.wordmark{font-size:13px}.header nav{gap:15px;font-size:11px}.hero{display:flex;flex-direction:column-reverse;gap:0;padding-bottom:40px}.hero-visual{width:85%;align-self:center}.hero-photo{max-width:350px}.caption{font-size:11px;margin-top:12px}.hero-copy{padding-block:25px 10px;width:100%}.hero h1{font-size:38px;letter-spacing:-1.4px}.actions{gap:10px}.button{padding:10px 15px}.section-heading{margin-bottom:32px}.section-heading h2{font-size:29px}.project-card{grid-template-columns:1fr}.project-card:nth-child(2n) .project-art{order:0}.project-art{min-height:290px}.project-copy{padding:29px}.project-list{gap:28px}.project-meta{margin-bottom:19px}.sorority-preview{width:54%;max-width:240px}.game-preview{max-width:340px}.invite{padding-block:70px 60px}.invite h2{font-size:28px}.footer{justify-content:center;column-gap:24px}.footer>span{flex-basis:100%;text-align:center;order:2}.footer small{order:3;margin-top:0}.inner{padding-block:35px 65px}.two-column{display:flex;flex-direction:column-reverse;gap:38px}.portrait{width:70%;max-width:300px;align-self:center}.two-column section{width:100%}.detail-grid{grid-template-columns:1fr;gap:35px}.detail-grid .project-art{min-height:300px}.detail h1{font-size:35px}}.section-heading:after{content:"";display:block;width:150px;height:75px;margin:18px auto -18px;background:url(/assets/complete/alligator.svg) center/contain no-repeat;filter:drop-shadow(0 3px 5px #77777718)}.market{background:radial-gradient(ellipse at 35% 35%,#f4e4d1,#dce8ed)}.market-preview{width:88%;aspect-ratio:658/378;background:url(/assets/complete/image%201.svg) center/contain no-repeat;border-radius:20px;box-shadow:0 16px 30px #53687918}.project-copy .project-dates{font-size:10px;color:#887783;margin-top:-9px;margin-bottom:16px}.tech-stack{display:flex;flex-wrap:wrap;gap:6px;list-style:none;padding:0;margin:0 0 22px}.tech-stack li{font-size:10px;line-height:1.6;padding:4px 9px;border-radius:5px;background:#f6f1f4;color:#735d6b}.inner .project-role{font-size:12px;color:#887783}.contributions-heading{margin-top:28px}.contributions{padding-left:19px;color:#777881;font-size:13px;line-height:1.85}.contributions li{padding-left:4px;margin-bottom:13px}.header{position:relative;z-index:2}.header nav a{min-height:44px;display:inline-flex;align-items:center}.hero-visual{position:absolute;top:0;right:0;width:min(65vw,940px);z-index:0}.hero-photo{width:100%;max-width:none;aspect-ratio:auto;height:calc(min(65vw,940px) * 629 / 720 + 108px);background-size:100% auto,100% 100%;background-position:center bottom,center top}.hero{min-height:calc(min(65vw,940px) * 629 / 720 + 140px)}.hero-copy{position:relative;z-index:1;max-width:min(435px,36vw)}.hero h1{font-size:clamp(36px,4vw,54px)}.button{min-height:44px}.back{min-height:44px;display:inline-flex;align-items:center}input,textarea{font-size:16px;min-height:46px}.project-copy,.detail-grid>section,.two-column>section{min-width:0}.project-meta{gap:16px}.project-meta>span:first-child{min-width:0}.project-copy p{font-size:14px}.project-copy .project-dates{font-size:12px}.tech-stack li{font-size:11px}.contributions{font-size:14px}.detail-grid{align-items:start}.detail-grid .project-art{position:sticky;top:28px}.footer>a{min-height:44px;display:inline-flex;align-items:center}@media (max-width:900px){.header{height:88px;align-content:center;flex-wrap:wrap;gap:0 24px}.header .wordmark{font-size:16px;min-height:44px;display:flex;align-items:center}.header nav{gap:22px;font-size:14px}.hero{display:flex;flex-direction:column;min-height:0;padding-top:calc(min(100vw,600px) * 629 / 720 - 8px);padding-bottom:50px;gap:0}.hero-visual{width:min(100vw,600px);align-self:auto}.hero-photo{height:calc(min(100vw,600px) * 629 / 720 + 112px)}.hero-copy{width:100%;max-width:700px;align-self:flex-start;padding:4px 0 0}.hero-copy .eyebrow{margin-bottom:16px}.hero-copy>p:not(.eyebrow){max-width:680px;font-size:18px}.hero h1{font-size:clamp(44px,7vw,60px);letter-spacing:-1.2px}.caption{font-size:13px;margin-top:20px}.two-column{gap:32px;grid-template-columns:1.2fr 1fr}.inner{padding-top:40px}.detail-grid{grid-template-columns:1fr;gap:32px}.detail-grid .project-art{position:static;min-height:340px;max-width:620px;width:100%;margin-inline:auto}.detail-grid .sorority-preview{width:230px;max-width:70%}}@media (max-width:650px){.shell{width:calc(100% - 40px)}.header{justify-content:flex-start}.header .wordmark{flex-basis:100%;font-size:16px}.header nav{width:100%;justify-content:space-between;gap:12px;font-size:14px}.header nav a{padding:0 6px}.hero h1{font-size:clamp(34px,9vw,44px)}.eyebrow{letter-spacing:1.7px}.actions{gap:12px}.actions .button{flex:1;white-space:nowrap;font-size:12px;padding-inline:12px}.projects{padding-top:15px}.project-card{grid-template-columns:1fr}.project-card:nth-child(2n) .project-art{order:0}.project-art{min-height:280px}.project-copy{padding:26px}.project-copy h3{font-size:30px}.project-copy .subtitle{font-size:14px}.project-link{font-size:13px;min-height:44px}.sorority-preview{width:200px;max-width:65%}.project-list{gap:28px}.two-column{display:flex;flex-direction:column-reverse;gap:30px}.portrait{width:65%;max-width:280px;align-self:center}.inner h1{font-size:clamp(32px,9vw,40px);overflow-wrap:break-word}.inner p,.contributions{font-size:15px}.inner .eyebrow{font-size:10px}.detail-grid .project-art{min-height:280px}.detail-grid .market,.detail-grid .game{min-height:240px}label{font-size:13px}form .button{width:100%}.footer{padding-bottom:max(24px,env(safe-area-inset-bottom));gap:12px;justify-content:center}.footer>span{order:2;flex-basis:100%;text-align:center}.footer small{order:3}}@media (prefers-reduced-motion:reduce){.project-card:hover,.button:hover{transform:none}}.notes{top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:hidden;transform:none;display:flex;align-items:center;justify-content:center;letter-spacing:20px}.project-art:focus-visible{outline-offset:-5px}.project-art:hover .sorority-preview,.project-art:hover .market-preview,.project-art:hover .game-preview{filter:brightness(.96)}.sorority-preview,.detail-grid .sorority-preview{background-image:url(/assets/psr-website.png);aspect-ratio:2834/1520;width:90%;max-width:none;transform:none;border-radius:12px}.flow{background:radial-gradient(ellipse at 40% 35%,#e4f2fc,#ccdfef)}.macro{background:radial-gradient(ellipse at 40% 35%,#f0ede7,#e0e5df)}.glove{background:radial-gradient(ellipse at 40% 35%,#f9ecdd,#ead5c6)}.flow-preview{width:88%;aspect-ratio:480/320;background:url(/assets/my-flow-friend.jpg) center/contain no-repeat;border-radius:12px;box-shadow:0 14px 28px #53687918}.macro-preview{width:90%;aspect-ratio:806/453;background:url(/assets/macro.jpg) center/contain no-repeat;border-radius:12px;box-shadow:0 14px 28px #53687918}.glove-preview{height:360px;max-width:85%;aspect-ratio:688/1451;background:url(/assets/helping-hand.png) center/contain no-repeat;border-radius:20px}.project-art.glove{padding-block:25px}.detail-grid .glove-preview{height:460px}@media (max-width:650px){.glove-preview,.detail-grid .glove-preview{height:340px}.detail-grid .flow,.detail-grid .macro{min-height:260px}}.portrait{width:min(100%,430px);aspect-ratio:1;background-image:url(/assets/headshot.webp);background-size:170% auto;background-position:50% 43%;background-repeat:no-repeat;border-radius:50%;margin:8px auto 0;box-shadow:0 20px 45px #69536320;border:10px solid #fff}.hero-name{white-space:nowrap}.experience-page{padding-top:32px}.experience-intro{max-width:720px;margin-bottom:44px;padding-bottom:28px;border-bottom:1px solid #e8dce3}.experience-intro h1{font-size:clamp(42px,5vw,64px);margin-bottom:18px}.experience-intro>p:not(.eyebrow){max-width:600px;font-size:16px;line-height:1.8}.experience-timeline{display:grid;gap:32px}.experience-entry{display:grid;grid-template-columns:minmax(0,1fr);position:relative;overflow:hidden;border:1px solid #e8dce3;border-radius:24px;background:#fff;box-shadow:0 12px 36px #69536308}.experience-entry.has-photo{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:stretch}@media (min-width:701px){.experience-entry.has-photo:nth-child(2n){grid-template-columns:minmax(0,1fr) minmax(0,1.5fr)}.experience-entry.has-photo:nth-child(2n)>.experience-photo{order:-1;border-left:0;border-right:1px solid #eee2e8}}@media (min-width:701px) and (max-width:900px){.experience-entry.has-photo:nth-child(2n){grid-template-columns:minmax(0,1fr) minmax(0,1.3fr)}}.experience-content{padding:clamp(26px,4vw,48px);min-width:0;align-self:center}.experience-date{display:inline-flex;padding:6px 12px;margin-bottom:22px;border:1px solid #ead8e1;border-radius:999px;background:#faf2f6;color:#805c6d;font-size:12px;line-height:1.5}.experience-content h2{font-size:clamp(27px,3vw,38px);letter-spacing:-.6px;line-height:1.2;margin-bottom:16px}.experience-content .eyebrow{margin-bottom:10px;line-height:1.7}.experience-content .experience-subtitle{color:#65515e;font-size:14px;line-height:1.8;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid #eee5ea}.experience-location{display:block;color:#8c7c86;font-size:12px;margin-top:4px}.experience-story .contributions{margin:0;padding-left:18px;font-size:14px;line-height:1.85}.experience-story .contributions li{padding-left:6px;margin-bottom:14px}.experience-story .contributions li:last-child{margin-bottom:0}.experience-story .contributions li::marker{color:#ba8c9f}.experience-photo{margin:0;padding:24px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;background:linear-gradient(145deg,#f8ecf1,#f5efea);border-left:1px solid #eee2e8}.experience-photo img{display:block;width:auto;max-width:100%;height:auto;max-height:520px;border-radius:32px;box-shadow:0 10px 28px #69536318;transition:transform .5s ease,box-shadow .5s ease}.experience-photo figcaption{font-size:11px;color:#806575;line-height:1.6;margin-top:12px;text-align:center}@media (max-width:900px){.header{flex-wrap:wrap}.header nav{flex-wrap:wrap}.experience-entry.has-photo{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}.experience-content{padding:26px}.experience-photo{padding:16px}}@media (max-width:700px){.experience-intro{margin-bottom:28px}.experience-timeline{gap:24px}.experience-entry,.experience-entry.has-photo{grid-template-columns:minmax(0,1fr);border-radius:20px}.experience-content{padding:26px 22px}.experience-photo{padding:22px}.experience-photo img{max-width:360px;margin-inline:auto}.experience-content h2{font-size:28px}.experience-date{margin-bottom:18px}}@media (max-width:700px){.experience-photo{border-left:0;border-top:1px solid #eee2e8}.experience-intro{padding-bottom:20px}.experience-story .contributions{font-size:14px;line-height:1.75}}.language-toggle{border:1px solid #e8c2cf;background:#fff8;border-radius:999px;padding:8px 12px;color:#8f6375;font:inherit;font-size:11px;cursor:pointer;transition:transform .25s ease,background .25s ease}.language-toggle:hover{transform:translateY(-2px);background:#f3dce4}@media (max-width:650px){.language-toggle{padding:7px 10px;font-size:10px}.header{gap:8px}.header nav{flex:1}}.header{animation:nav-drop .8s cubic-bezier(.22,1,.36,1) both}.header nav a{position:relative;transition:color .25s ease,transform .25s ease}.header nav a:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:#9f697f;transform:scaleX(0);transform-origin:right;transition:transform .35s cubic-bezier(.22,1,.36,1)}.header nav a:hover{transform:translateY(-2px)}.header nav a:hover:after,.header nav a.active:after{transform:scaleX(1);transform-origin:left}.wordmark{transition:transform .3s ease,color .3s ease}.wordmark:hover{transform:translateY(-2px)}.project-card{will-change:transform}.project-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;border:1px solid transparent;border-radius:15px;transition:border-color .35s ease}.project-card:hover:before{border-color:#e8c2cf}.project-copy h3 a{background:linear-gradient(#9f697f,#9f697f) 0 100%/0 2px no-repeat;transition:background-size .35s ease}.project-copy h3 a:hover{background-size:100% 2px}.tech-stack li{transition:transform .25s ease,background .25s ease}.tech-stack li:hover{transform:translateY(-3px);background:#ead8df}.project-link span{display:inline-block;transition:transform .3s ease}.project-link:hover span{transform:translate(4px,-4px)}form label{transition:color .25s ease}form:focus-within label{color:#a37486}input,textarea{transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease}input:focus,textarea:focus{transform:translateY(-2px);box-shadow:0 8px 18px #69536312}.portrait{transition:transform .6s cubic-bezier(.22,1,.36,1),box-shadow .6s ease}.portrait:hover{transform:rotate(2deg) scale(1.025);box-shadow:0 25px 55px #69536330}.invite .button{animation:soft-pulse 3.5s 1.4s ease-in-out infinite}.footer{animation:footer-rise 1s .3s both ease-out}.footer>a{transition:transform .25s ease,color .25s ease}.footer>a:hover{transform:translateY(-3px);color:#9f697f}.social-links{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.social-links a{font-size:11px;transition:transform .25s ease,color .25s ease}.social-links a:hover{transform:translateY(-3px);color:#9f697f}.inner.detail{padding-top:28px}.detail .back{margin-bottom:24px}.detail>.eyebrow{margin-bottom:8px}.detail h1{margin-bottom:18px}.hero h1{font-size:clamp(46px,5vw,68px);letter-spacing:-2px}@media (max-width:900px){.hero h1{font-size:clamp(50px,8vw,72px)}.hero-copy>p:not(.eyebrow){font-size:19px}}@media (max-width:650px){.hero h1{font-size:clamp(40px,10vw,52px)}.hero-copy>p:not(.eyebrow){font-size:16px}}@keyframes nav-drop{0%{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:none}}@keyframes footer-rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes soft-pulse{0%,to{box-shadow:0 0 #e8c2cf00}50%{box-shadow:0 0 0 7px #e8c2cf25}}@media (max-width:650px){.header nav a:hover{transform:none}.project-card:hover{transform:translateY(-3px)}.portrait:hover{transform:none}.invite .button{animation:none}.project-copy h3{line-height:1.1}.hero-copy>p:not(.eyebrow){line-height:1.7}.project-card{min-width:0}}@media (min-width:651px) and (max-width:900px){.hero{padding-top:calc(min(100vw,600px) * 629 / 720 - 135px)}.hero-copy{max-width:760px}.hero h1{font-size:clamp(42px,6vw,56px);letter-spacing:-1.5px}}.detail{max-width:1180px}.detail .back{color:#9f697f;letter-spacing:.2px}.detail>h1{font-size:clamp(48px,6vw,78px);letter-spacing:-2.5px;line-height:1.02;max-width:760px}.detail-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(45px,7vw,100px);margin-top:35px}.detail-grid>.project-art{min-height:480px;border:1px solid #eadfe5;border-radius:24px;box-shadow:0 22px 55px #69536312;isolation:isolate}.detail-grid>section{padding:12px 0}.detail-grid h2{font-size:30px;letter-spacing:-.5px;margin-bottom:18px}.detail-grid p{font-size:15px;line-height:1.9}.detail-grid .project-role{font-size:13px;color:#9f697f;letter-spacing:.2px}.detail-grid .tech-stack{margin-top:22px}.contributions{margin-top:10px}.contributions li{padding-left:8px;margin-bottom:15px}.detail-grid .button{margin-top:18px;border-radius:999px;padding-inline:24px}@media (max-width:900px){.detail{padding-top:24px}.detail>h1{font-size:clamp(44px,8vw,64px)}.detail-grid{grid-template-columns:1fr;gap:32px}.detail-grid>.project-art{position:static;min-height:360px;max-width:700px;width:100%;margin-inline:auto}.detail-grid>section{padding:0;max-width:700px;margin-inline:auto}}@media (max-width:650px){.detail>h1{font-size:clamp(38px,12vw,54px);letter-spacing:-1.5px}.detail-grid>.project-art{min-height:280px;border-radius:18px}.detail-grid h2{font-size:26px}.detail-grid p{font-size:14px}.detail-grid .button{width:100%}}.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s cubic-bezier(.22,1,.36,1);transition-delay:var(--delay,0ms)}.reveal.is-visible{opacity:1;transform:none}.experience-entry.reveal{transform:translateY(28px);transition:opacity .7s ease,transform .7s cubic-bezier(.22,1,.36,1),box-shadow .3s ease,border-color .3s ease}.experience-entry.reveal.is-visible{transform:none}@media (min-width:701px){.experience-entry.reveal{transform:translate(-20px,28px)}.experience-entry.reveal:nth-child(2n){transform:translate(20px,28px)}.experience-entry.reveal.is-visible{transform:none}}@media (hover:hover) and (pointer:fine){.experience-entry.is-visible:hover{transform:translateY(-5px);box-shadow:0 20px 45px #69536316;border-color:#d4b2c2}.experience-photo:hover img{transform:scale(1.025);box-shadow:0 14px 32px #69536325}}@media (max-width:700px){.experience-photo img{max-width:min(100%,360px);border-radius:26px}}@media (prefers-reduced-motion:reduce){.experience-entry.reveal,.experience-entry.reveal:nth-child(2n),.experience-entry.is-visible:hover{opacity:1;transform:none;transition:none}.experience-photo img,.experience-photo:hover img{transform:none;transition:none}}.hero-copy.reveal{transform:translate(-24px)}.hero-copy.reveal.is-visible{transform:none}.hero-photo{animation:photo-float 7s ease-in-out infinite}.caption{animation:caption-in 1s .8s both ease-out}.button{position:relative;overflow:hidden}.button:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#fff6;transform:translate(-110%) skew(-18deg);transition:transform .45s ease}.button:hover:after{transform:translate(110%) skew(-18deg)}.project-card:hover .project-art>div{transform:scale(1.035)}.project-art>div{transition:transform .6s cubic-bezier(.22,1,.36,1)}@keyframes photo-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes caption-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.header nav{align-items:center;flex-wrap:wrap;gap:clamp(12px,2.4vw,32px)}.header nav .language-toggle{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:5px 9px;border:1px solid #e3c8d3;background:#fff9;border-radius:999px;color:#806575;box-shadow:0 3px 12px #69536308;white-space:nowrap;font-size:11px;line-height:1.5}.language-toggle span[lang]{padding:4px 7px;border-radius:999px;transition:background .2s,color .2s}.language-toggle .selected{background:#eed7e1;color:#623f50;font-weight:600}.language-divider{height:12px;width:1px;background:#decbd4}.language-toggle:focus-visible{outline:2px solid #9f697f;outline-offset:4px}html:lang(ja) body{font-family:Noto Sans JP,Yu Gothic,Meiryo,sans-serif}html:lang(ja) h1,html:lang(ja) h2,html:lang(ja) h3{font-family:Yu Mincho,Hiragino Mincho ProN,serif;line-height:1.4;letter-spacing:0}html:lang(ja) .eyebrow{letter-spacing:.14em}html:lang(ja) .hero h1{font-size:clamp(28px,3.5vw,46px)}html:lang(ja) .hero-name{font-size:.82em;color:#c18b9e}html:lang(ja) .hero-name>span{color:#c18b9e}@media (max-width:900px){.header{height:auto;min-height:96px;padding-block:12px;row-gap:8px}.header nav{justify-content:flex-end}html:lang(ja) .hero h1{font-size:clamp(28px,5vw,46px)}}@media (max-width:650px){.header nav{width:100%;flex:auto;justify-content:flex-start;gap:6px 14px}.header nav a{font-size:12px}.header nav .language-toggle{margin-left:auto;gap:4px;padding-inline:6px;font-size:10px}.language-toggle span[lang]{padding-inline:4px}html:lang(ja) .hero h1{font-size:clamp(26px,7vw,42px)}}@media (prefers-reduced-motion:reduce){.reveal,.hero-copy.reveal,.hero-photo,.caption{opacity:1;transform:none;animation:none;transition:none}.button:after{display:none}.project-art>div{transition:none}}.social-links a{display:inline-flex;align-items:center;gap:8px;min-height:44px}.social-links svg,.button svg,.project-link svg{flex-shrink:0}.button{gap:8px}.art-external{position:absolute;right:18px;bottom:18px;z-index:2;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#ffffffdf;color:#735467;box-shadow:0 3px 12px #69536312;transition:transform .2s}.project-art:hover .art-external,.project-art:focus-visible .art-external{transform:translate(2px,-2px)}@media (prefers-reduced-motion:reduce){.art-external{transition:none}}:root{font-family:DM Sans,Arial,sans-serif;color:#303132;background:#f8f9ff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.7}*{box-sizing:border-box}body{margin:0;min-width:320px}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid #a36a82;outline-offset:5px}input:focus,textarea:focus{outline:2px solid #bd8fa1}::selection{background:#e8c4d0}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Playfair Display,Georgia,serif;font-weight:600;line-height:1.18}p{color:#777881}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
