body:before{display:none}.hero{background:#fff8e8}.painted-name{width:min(760px,68vw);height:260px;margin:5px 0 12px;display:flex;align-items:center;justify-content:center;letter-spacing:0;text-shadow:none}.painted-name img{width:100%;height:100%;object-fit:contain}.js-ready h1>span{animation:none}.raster-object{display:block;width:100%;aspect-ratio:1;background-image:url("assets/objects.webp");background-repeat:no-repeat;background-size:200% 200%}.raster-object.laptop{background-position:0 0}.raster-object.plant{background-position:100% 0}.raster-object.book{background-position:0 100%}.raster-object.ticket{background-position:100% 100%}.hero-plant{width:280px;bottom:45px;left:2%;transform:rotate(-9deg)}.hero-book{width:190px;bottom:35px;left:20%;transform:rotate(9deg)}.hero-laptop{width:320px;bottom:38px;right:3%;transform:rotate(10deg)}.handnote{bottom:285px;right:9%}.s2{bottom:180px;left:42%}.greeting,.signature{font-family:-apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif}.greeting{font-size:23px;letter-spacing:4px}.signature{font-size:20px}.hero-sub{margin-top:10px}.about,.experience-scene,.practice{background-image:url("assets/scenes.webp");background-size:100% 300%;background-repeat:no-repeat;border-radius:0}.about{background-position:center top;padding:65px 4% 100px;min-height:950px}.art-heading{background-image:url("assets/headings.webp");background-repeat:no-repeat;background-size:100% 300%;width:min(620px,70vw);height:205px;margin:0 auto 18px;position:relative}.heading-about{background-position:50% 0}.heading-experience{background-position:50% 50%;width:min(800px,85vw);height:230px}.heading-projects{background-position:50% 100%}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.about-intro{font-size:16px;line-height:1.9}.interaction-note{margin-top:22px}.objects{max-width:1140px;height:330px;margin-top:35px;gap:12px}.object{max-width:270px!important;width:auto}.object-book{flex:1}.object-plant{flex:1.1}.object-laptop{flex:1.2}.object-ticket{flex:1.05;margin-bottom:0}.object-art{filter:drop-shadow(2px 9px 4px #233e2625)}.object-label{background:#fff9e8c9;border:0;padding:8px 14px;border-radius:2px;font-size:12px}.object-art .raster-object{aspect-ratio:1}.js-ready .objects .object,.js-ready .objects.in-view .object{opacity:var(--reveal,1);translate:0 var(--lift,0px);transition:none}.object .object-art{transition:transform .3s,filter .3s}.object:hover .object-art{transform:translateY(-25px) rotate(calc(var(--angle)*-1)) scale(1.12)}.story-panel{background:#fff9e8ed;backdrop-filter:blur(5px)}.story-panel h3{font-family:inherit;font-size:24px}.dotted-path{display:none}.experience-scene{background-position:center 50%;position:relative;padding:70px 0 100px;min-height:850px;overflow:hidden;text-align:center}.experience-intro{font-size:15px;color:#3a5662;margin:0 0 70px}.experience-window{overflow:hidden;padding:20px 0 40px}.experience-track{display:flex;width:max-content;animation:travel 35s linear infinite}.card-group{display:flex;gap:35px;padding-right:35px;align-items:center}.experience-card{width:310px;height:255px;padding:32px;text-align:left;position:relative;background:#fdf6e5;box-shadow:4px 9px 0 #344e5520;transform:rotate(-4deg);border:1px solid #dbcfb4;background-image:repeating-linear-gradient(0deg,transparent,transparent 29px,#b2ad9840 29px,#b2ad9840 30px)}.experience-card:nth-child(even){transform:rotate(4deg);background-color:#f3e5c8}.experience-card:before{content:"";position:absolute;top:-12px;left:90px;width:110px;height:25px;background:#aabbaf96;transform:rotate(-4deg)}.card-date{font:12px Georgia,serif;letter-spacing:2px;color:#677b78}.experience-card h3{font-size:29px;font-weight:550;color:#3e5963;margin:25px 0 12px}.experience-card p{font-size:13px;line-height:1.7}.card-rule{border-top:1px dashed #a4b1a1;margin:24px 0 15px}.card-sign{font-size:10px;color:#7c897e}.motion-toggle{background:#fff8e5bb;border:1px solid #879d9c;border-radius:30px;padding:10px 18px;font-size:12px;margin-top:25px}.experience-scene.paused .experience-track,.experience-window:hover .experience-track{animation-play-state:paused}@keyframes travel{to{transform:translateX(-50%)}}.practice{background-position:center bottom;display:block;padding:65px 8% 100px;min-height:1050px}.practice .heading-projects{margin-bottom:10px;width:min(650px,75vw);height:215px}.practice-title{text-align:center}.practice-title>.handwriting{display:none}.practice-title h2{font-family:inherit;font-size:30px;line-height:1.5;letter-spacing:0;display:flex;justify-content:center;gap:5px;margin:10px 0 25px;color:#433d2f}.practice-title h2 br{display:none}.practice-title h2 em{color:#784d3d}.process-stage{padding:20px 0 0;max-width:700px;margin:auto}.process-paper{background-color:#fff8e4;padding:45px 50px 60px;transform:rotate(-4deg);box-shadow:8px 11px 10px #39261040}.paper-heading{font-family:inherit;font-size:25px;font-weight:550}.process-paper p{font-size:14px}.process-line span{font-size:16px;padding:20px 15px}.practice-note{margin-top:50px;padding:22px 30px;background:#f6efd9;transform:rotate(3deg);box-shadow:5px 8px 8px #39261030}.practice-note p{font-size:15px;line-height:1.8}.farewell{background:#fff8e8;border-radius:0}.farewell h2{font-family:inherit;font-size:37px;font-weight:500}.mail-art{width:170px;animation:wave 4s ease-in-out infinite;transform-origin:bottom center}@keyframes wave{0%,65%,100%{transform:rotate(-9deg)}75%{transform:rotate(5deg)}85%{transform:rotate(-5deg)}}footer{background:#fff8e8}.painted-name{animation:paint-in .8s ease-out both}@keyframes paint-in{from{opacity:0;transform:translateY(20px) rotate(-3deg)}to{opacity:1;transform:translateY(0) rotate(0)}}
@media(max-width:760px){.hero{min-height:780px}.painted-name{width:92vw;height:180px;margin:18px 0 0}.greeting{font-size:20px}.hero-sub{margin-top:10px}.hero-plant{width:175px;left:-22px;bottom:95px}.hero-book{width:130px;left:26%;bottom:85px}.hero-laptop{width:210px;right:-30px;bottom:95px}.handnote{bottom:275px}.about{padding:50px 16px 70px;min-height:0;background-size:auto 300%}.art-heading{width:90vw;height:160px;margin-bottom:15px}.about-intro{font-size:13px}.interaction-note{font-size:10px}.objects{height:auto;margin-top:25px;gap:30px 5px;max-width:450px}.object{width:100%;max-width:190px!important}.object-art svg{display:none}.object-label{font-size:10px;padding:7px 8px;margin-top:4px}.object-plant,.object-book{width:100%}.experience-scene{min-height:680px;padding:50px 0 80px;background-size:auto 300%}.heading-experience{height:150px;width:95vw}.experience-intro{font-size:13px;margin-bottom:40px}.experience-card{width:255px;height:235px;padding:25px}.experience-card h3{font-size:25px}.card-group{gap:25px;padding-right:25px}.practice{padding:50px 25px 70px;min-height:850px;background-size:auto 300%}.practice .heading-projects{width:90vw;height:155px;margin-left:-5vw}.practice-title h2{font-size:22px;display:block;margin-bottom:18px}.process-paper{padding:35px 20px 45px;transform:rotate(-3deg)}.paper-heading{font-size:21px}.process-line span{font-size:13px;padding:14px 9px}.process-paper p{font-size:12px}.practice-note{padding:15px;gap:10px}.practice-note p{font-size:12px}.farewell h2{font-size:30px}.mail-art{width:135px}}
@media(prefers-reduced-motion:reduce){.experience-track{animation:none}.experience-window{overflow-x:auto}.card-group[aria-hidden]{display:none}.js-ready .objects .object{opacity:1;translate:none}.motion-toggle{display:none}}
.about,.practice,.farewell{overflow:hidden}.practice .heading-projects{margin:0 auto 10px}.practice-title h2{color:#2e382b}.practice-title h2 em{color:#3d432d}
@media(max-width:760px){.practice .heading-projects{width:100%;margin:0 auto 15px}.hero-plant{left:-10px;width:160px}.hero-laptop{right:-12px;width:185px}.hero-book{left:29%;width:115px}}

/* About: full-width prose, unboxed labels and independent object entrance. */
.about{min-height:900px;padding-bottom:95px}.about-intro{max-width:1020px;width:86%;margin:0 auto;font-size:18px;line-height:1.95;text-align:left;text-wrap:pretty}.objects{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));max-width:1230px;height:330px;gap:4px;align-items:center;margin:25px auto 0;isolation:isolate}.object-slot{position:relative;align-self:center;padding:20px 0;min-width:0}.object-slot:nth-child(2n){margin-top:65px}.object-slot:nth-child(3n){margin-top:-35px}.object-slot .object{display:block;width:100%;max-width:none!important;margin:0;transform:rotate(var(--angle));opacity:1;translate:none}.object-slot .object-art{width:100%}.object-label{background:none!important;border:0!important;border-radius:0;padding:0!important;font-size:11px;line-height:1.6;white-space:normal;display:block;margin-top:10px}.object-label i{margin-left:4px}.raster-object.mic,.raster-object.headphones,.raster-object.ukulele,.raster-object.switch{background-image:url("assets/hobbies.webp")}.raster-object.mic{background-position:0 0}.raster-object.headphones{background-position:100% 0}.raster-object.ukulele{background-position:0 100%}.raster-object.switch{background-position:100% 100%}.js-ready .objects .object-slot .object{opacity:0;translate:0 370px;pointer-events:none;transition:translate 1.2s cubic-bezier(.16,1,.3,1),opacity .55s ease;transition-delay:calc(var(--n)*90ms)}.js-ready .objects .object-slot.arrived .object{opacity:1;translate:0 0;pointer-events:auto}.object-slot:focus-within .object{opacity:1!important;translate:0 0!important;pointer-events:auto}.story-panel{margin-top:15px}
@media(min-width:761px) and (max-width:1050px){.objects{grid-template-columns:repeat(4,minmax(0,1fr));height:auto;max-width:760px;gap:10px 15px}.object-slot .object{max-width:155px!important;margin:auto}.object-slot:nth-child(n){margin-top:0}.object-slot{--n:0!important}.about{min-height:1000px}}
@media(max-width:760px){.about{padding:45px 18px 65px;min-height:0}.about-intro{width:100%;max-width:none;font-size:15px;line-height:1.9}.heading-about{height:130px}.objects{grid-template-columns:repeat(3,minmax(0,1fr));height:auto;max-width:480px;gap:10px 5px;margin-top:25px}.object-slot{padding:10px 0;--n:0!important}.object-slot:nth-child(n){margin-top:0}.object-slot:nth-child(3n+2){--n:1!important}.object-slot:nth-child(3n){--n:2!important}.object-label{font-size:11px;margin-top:4px}.js-ready .objects .object-slot .object{translate:0 220px;transition-duration:1.15s,.55s}.object-slot:last-child{grid-column:3}.story-panel{margin-top:25px}}
@media(prefers-reduced-motion:reduce){.js-ready .objects .object-slot .object{opacity:1;translate:none;pointer-events:auto;transition:none}}

.raster-object.camera{background-image:url("assets/camera.webp");background-size:contain;background-position:center}
@media(min-width:1051px){.objects{grid-template-columns:repeat(9,minmax(0,1fr))}}

.experience-window:focus-within .experience-track{animation-play-state:paused}.experience-card:focus-visible{outline:2px dashed #3e5963;outline-offset:5px}
@media(hover:none),(max-width:760px){.experience-window{overflow-x:auto;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;padding-left:25px;padding-right:25px}.experience-track{animation:none;transform:none}.experience-track .card-group[aria-hidden]{display:none}.experience-card{scroll-snap-align:center}.experience-track .card-group{padding-right:0}}

/* Separate physical treatments: album players and instant-photo project wall. */
.experience-scene{min-height:980px}.experience-intro{margin-bottom:25px}.experience-window{padding-top:30px;padding-bottom:35px}.experience-card.player{width:315px;height:435px;padding:20px 24px;background:linear-gradient(140deg,#f9f4e7,#d7d9ce);border:1px solid #a6b3ac;border-radius:24px;box-shadow:inset 2px 3px 2px #fffdf9,inset -2px -3px 3px #849b9866,5px 10px 10px #34515b24;transform:rotate(-3deg);color:#314a55}.experience-card.player:nth-child(even){transform:rotate(3deg);background:linear-gradient(140deg,#fff9ed,#dfdfd0)}.experience-card.player:before{display:none}.player-top{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1px;color:#657a7c}.speaker-holes{letter-spacing:3px;color:#a0aaa5}.album{height:230px;position:relative;padding-top:22px}.vinyl{width:190px;height:190px;position:absolute;right:-5px;top:25px;border-radius:50%;background:repeating-radial-gradient(circle,#2d3030 0 2px,#191d1d 3px 5px);box-shadow:2px 3px 4px #3334;animation:record-turn 18s linear infinite}.vinyl:before{content:"";position:absolute;inset:62px;border-radius:50%;background:#b57f67;border:1px solid #e1bba0}.vinyl i{position:absolute;width:7px;height:7px;top:calc(50% - 3.5px);left:calc(50% - 3.5px);background:#f2e8d0;border-radius:50%}.sleeve{width:185px;height:190px;position:relative;z-index:1;background:#a3ae90 url("assets/scenes.webp") top center/100% 300%;border:5px solid #eee7d5;box-shadow:3px 4px 5px #0003;transform:rotate(-5deg)}.sleeve-laptop{background-position:center 50%}.sleeve-ticket{background-position:center bottom}.sleeve .raster-object{width:133px;margin:2px auto 0}.sleeve-name{display:block;text-align:center;font-size:14px;font-weight:600;background:#fff9e9bb;margin:0 8px;padding:4px}.player h3{font-size:24px;margin:6px 0 7px}.player p{font-size:12px;margin:0;line-height:1.7}.career-line{height:3px;background:#a8b9b5;margin-top:25px;position:relative;border-radius:5px}.career-line span{position:absolute;left:0;top:0;width:65%;height:3px;background:#425e67}.career-line span:after{content:"";position:absolute;right:-3px;top:-2px;width:7px;height:7px;border-radius:50%;background:#425e67}.career-dates{display:flex;justify-content:space-between;font-size:10px;margin-top:10px;color:#657a7c}.experience-window:hover .vinyl,.experience-window:focus-within .vinyl{animation-play-state:paused}@keyframes record-turn{to{transform:rotate(360deg)}}.practice{min-height:930px;padding-left:6%;padding-right:6%}.projects-intro{text-align:center;margin:5px 0 65px;color:#3d432d;font-size:17px}.polaroid-wall{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:50px;max-width:1140px;margin:0 auto;padding:25px 10px 50px;align-items:start}.polaroid{appearance:none;border:0;background:#fff9e9;padding:15px 15px 28px;text-align:left;color:#314839;box-shadow:7px 11px 12px #35240d40;position:relative;transform:rotate(-6deg);transition:transform .35s,box-shadow .35s;cursor:pointer}.polaroid:nth-child(2){transform:rotate(4deg);margin-top:45px}.polaroid:nth-child(3){transform:rotate(-3deg);margin-top:10px}.polaroid:hover,.polaroid:focus-visible{transform:translateY(-12px) rotate(0);box-shadow:9px 20px 16px #35240d45}.polaroid-photo{display:block;aspect-ratio:1;background:#b2bea3;overflow:hidden;background-image:url("assets/scenes.webp");background-size:100% 300%;position:relative}.polaroid-photo .raster-object{width:82%;margin:9%;filter:drop-shadow(2px 5px 3px #31483933);transform:rotate(8deg)}.photo-laptop{background-position:center 50%}.photo-book{background-position:center bottom}.photo-plant{background-position:center top}.polaroid-title{display:block;font-size:20px;font-weight:550;margin:22px 4px 8px}.polaroid-title i{float:right;font-size:16px;font-style:normal}.polaroid-caption{display:block;font-size:12px;margin:0 4px;line-height:1.7;color:#74816d}.fixing{position:absolute;z-index:2;pointer-events:none}.fix-pin .fixing{width:20px;height:20px;left:46%;top:-7px;border-radius:50%;background:radial-gradient(circle at 35% 25%,#e0a08c 0 15%,#b55542 45%,#7d3e34 90%);box-shadow:3px 6px 3px #36271760}.fix-pin .fixing:after{content:"";width:2px;height:12px;position:absolute;top:16px;left:14px;background:#70685d;transform:rotate(-35deg)}.fix-clip .fixing{width:45px;height:30px;top:-11px;left:42%;background:linear-gradient(100deg,#344b47,#1e302f);border-radius:3px 3px 6px 6px;box-shadow:2px 3px 2px #0004}.fix-clip .fixing:before,.fix-clip .fixing:after{content:"";position:absolute;width:20px;height:30px;border:2px solid #b3b6aa;border-radius:9px;top:-23px;left:11px;transform:rotate(-5deg)}.fix-clip .fixing:after{top:8px;height:24px;transform:rotate(5deg)}.fix-tape .fixing{width:95px;height:35px;top:-12px;left:35%;background:repeating-linear-gradient(45deg,#d0bb8280 0 6px,#b6a37580 6px 7px);transform:rotate(12deg);clip-path:polygon(0 0,98% 2%,95% 22%,100% 40%,96% 60%,100% 80%,96% 100%,0 98%,3% 78%,0 58%,4% 38%,0 20%)}.project-dialog{border:1px solid #c5b993;border-radius:3px;background:#fff9e9;color:#314839;padding:40px;max-width:620px;width:calc(100% - 40px);box-shadow:5px 12px 35px #0003}.project-dialog::backdrop{background:#263b3259;backdrop-filter:blur(3px)}.dialog-close{position:absolute;right:12px;top:8px;font-size:28px;border:0;background:none}.dialog-kicker{font-size:12px;color:#74816d}.project-dialog h2{font-size:27px;font-weight:550}.dialog-copy{font-size:16px;line-height:1.9}
@media(max-width:760px){.experience-scene{min-height:760px}.experience-card.player{width:285px;height:420px;padding:18px 22px}.album{height:220px}.player h3{font-size:23px}.practice{padding:50px 28px 70px}.projects-intro{font-size:14px;margin-bottom:35px}.polaroid-wall{grid-template-columns:1fr;gap:45px;max-width:340px;padding:20px 8px}.polaroid:nth-child(n){margin-top:0}.polaroid-title{font-size:21px}.polaroid-caption{font-size:13px}.project-dialog{padding:32px 25px}.dialog-copy{font-size:15px}}
@media(prefers-reduced-motion:reduce){.vinyl{animation:none}.polaroid{transition:none}}

/* Real project captures, with full originals in the detail view. */
.polaroid-photo{background-image:none;background-color:#e7e9e5;display:flex;align-items:center;justify-content:center}
.polaroid-photo img{display:block;width:100%;height:100%;object-fit:contain}
.photo-activity{background:#351b24}.photo-activity img{object-fit:cover;object-position:center top}
.photo-review,.photo-management{aspect-ratio:1;background:#f5f5ef;padding:0}
.photo-review img,.photo-management img{object-fit:cover;object-position:left top}
.project-dialog{max-width:1040px;max-height:90dvh;overflow-y:auto}.project-figure{margin:25px 0 0}.project-image{display:block;max-width:100%;width:auto;max-height:none;margin:auto}.project-image[src*="activity"]{max-width:min(100%,429px)}
.project-figure figcaption{font-size:12px;line-height:1.7;color:#667564;margin-top:18px}.dialog-close{position:sticky;float:right;top:0;background:#fff9e9;min-width:40px;min-height:40px;border-radius:50%;z-index:3}.project-dialog h2{clear:none}
@media(max-width:760px){.project-dialog{padding:22px 18px}.project-image{width:100%}.project-figure{overflow-x:auto}.project-image[src*="review"],.project-image[src*="management"]{max-width:none;min-width:720px}.polaroid-photo{aspect-ratio:1.12}}

/* Keep every screenshot intact in both thumbnail and details. */
.polaroid-photo{aspect-ratio:1.15;background:#e9e7e0;padding:10px;display:flex;align-items:center;justify-content:center}
.polaroid-photo img,.photo-review img,.photo-management img,.photo-activity img{width:100%;height:100%;object-fit:contain;object-position:center}
.photo-activity{background:#2c203d}.photo-review{background:#e9edf2}.photo-management{background:#edece4}
.project-gallery .project-image{width:100%;max-width:100%;min-width:0;height:auto}.project-gallery .project-image[src*="halloween"]{max-width:430px}
.project-figure{overflow:visible}.project-figure figcaption{max-width:850px}.project-dialog h2{margin-top:14px}

/* Small, source-verified company and product marks in compact player cards. */
.experience-card.player{width:320px;height:375px;padding:22px 26px;display:flex;flex-direction:column}.brand-row{display:flex;gap:20px;min-height:94px;align-items:center;margin-top:16px}.brand-item{margin:0;text-align:center}.brand-item img{display:block;width:44px;height:44px;object-fit:contain;border-radius:11px;margin:auto}.brand-item figcaption{font-size:10px;line-height:1.4;color:#63756e;margin-top:7px}.venture-word{font-size:20px;color:#58745b;letter-spacing:5px}.player h3{margin:4px 0 8px;font-size:26px}.player .role{font-size:13px;color:#41565b}.player .career-desc{font-size:11px;color:#6c7f7d;margin-top:6px}.player-wave{display:flex;height:39px;align-items:center;gap:5px;margin-top:17px;opacity:.55}.player-wave i{width:3px;height:var(--h);background:#58706c;border-radius:3px;animation:equalizer 2.5s ease-in-out infinite alternate;animation-delay:var(--d)}.career-line{margin-top:auto}.experience-window:hover .player-wave i,.experience-window:focus-within .player-wave i{animation-play-state:paused}@keyframes equalizer{to{transform:scaleY(.45)}}
@media(max-width:760px){.experience-card.player{width:285px;height:365px;padding:20px 22px}.experience-scene{min-height:700px}.player h3{font-size:24px}.brand-row{gap:20px}}
@media(prefers-reduced-motion:reduce){.player-wave i{animation:none}}

.raster-object.cockatiel{background-image:url("assets/cockatiel.webp");background-size:contain;background-position:center}.brand-row{gap:17px}
@media(min-width:1051px){.objects{grid-template-columns:repeat(10,minmax(0,1fr))}}
@media(max-width:760px){.object-slot:last-child{grid-column:2}}

/* Photo-led opening. Original portrait pixels; presentation-only color treatment. */
.hero.portrait-hero{min-height: min(900px,100svh);height:auto;display:flex;align-items:center;justify-content:center;padding:120px 7% 90px;isolation:isolate;overflow:hidden;background:#f7f2e7;text-align:left}
.portrait-hero:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.2;background-image:url("assets/scenes.webp");background-size:100% 300%;filter:grayscale(1);mix-blend-mode:multiply;z-index:-1}
.portrait-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(40px,7vw,110px);align-items:center;width:100%;max-width:1100px}
.portrait-copy{padding-bottom:20px}.portrait-kicker{font:11px/1.8 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;letter-spacing:2.2px;color:#74776b;margin:0 0 26px}
.portrait-hero h1{font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;font-size:clamp(34px,4.3vw,59px);font-weight:550;letter-spacing:-1.8px;line-height:1.5;color:#3d5048;margin:0;text-shadow:none;transform:none}
.portrait-hero h1 span{color:#aa685a;display:inline-block;white-space:nowrap;animation:none}.portrait-intro{font-size:16px;line-height:1.8;color:#636c61;margin:25px 0 0;min-height:30px}.portrait-next{display:inline-flex;align-items:center;gap:24px;margin-top:60px;font-size:12px;color:#526453;text-decoration:none;border-bottom:1px solid #a1a894;padding:0 0 12px}.portrait-next span{display:inline-block;font-size:22px;transition:transform .25s}.portrait-next:hover span{transform:translateY(5px)}.portrait-next:focus-visible{outline:2px solid #aa685a;outline-offset:7px}
.portrait-photo{margin:0;width:100%;max-width:420px;justify-self:center;transform:rotate(3deg);background:#fffdf6;padding:12px 12px 14px;box-shadow:2px 6px 13px #524e3424;animation:portrait-arrive .8s cubic-bezier(.2,.65,.3,1) both}
.portrait-print{width:100%;aspect-ratio:4/5;overflow:hidden;background:#e5e7dc}.portrait-print img{width:100%;height:100%;display:block;object-fit:cover;object-position:65% 58%;filter:saturate(.66) brightness(1.06) contrast(.96);transform:scale(1.12)}.portrait-photo figcaption{font-size:12px;letter-spacing:3px;color:#7c7c6a;text-align:center;padding-top:15px;line-height:1.5}.portrait-hero .edge-index{color:#8c9283}
@keyframes portrait-arrive{from{opacity:0;transform:translateY(65px) rotate(7deg)}to{opacity:1;transform:translateY(0) rotate(3deg)}}
@media(max-width:760px){.hero.portrait-hero{min-height:100svh;padding:102px 26px 50px}.portrait-layout{grid-template-columns:1fr;gap:30px;max-width:440px}.portrait-copy{padding:0}.portrait-kicker{font-size:9px;margin-bottom:12px;letter-spacing:1.7px}.portrait-hero h1{font-size:35px;line-height:1.38;letter-spacing:-1px}.portrait-hero h1 br{display:none}.portrait-hero h1 span{white-space:normal}.portrait-intro{font-size:13px;line-height:1.7;margin-top:13px;min-height:24px}.portrait-next{margin-top:20px;padding-bottom:7px;font-size:11px;gap:18px}.portrait-photo{width:77%;max-width:300px;padding:8px 8px 11px}.portrait-print{aspect-ratio:1}.portrait-print img{object-position:65% 57%;transform:scale(1.08)}.portrait-photo figcaption{padding-top:10px;font-size:11px}.portrait-hero .edge-index{display:none}}
@media(prefers-reduced-motion:reduce){.portrait-photo{animation:none}.portrait-next span{transition:none}}
.portrait-hero h1{display:block;white-space:normal}.portrait-hero h1>span{transform:none;translate:none;scale:1}.portrait-print img{transform:scale(1.25);transform-origin:65% 65%}.portrait-hero:before{opacity:.12}
@media(max-width:760px){.portrait-hero h1{font-size:33px}.portrait-hero h1 br{display:block}.portrait-hero h1>span{white-space:nowrap}.portrait-print img{transform:scale(1.18)}}

.plant-app-icon{display:block;width:44px;height:44px;border-radius:11px;overflow:hidden;background:#b4c6ae;margin:auto}.brand-item .plant-app-icon img{width:44px;height:44px;padding:3px;border-radius:0;mix-blend-mode:multiply}

.management-overview{display:grid;grid-template-rows:1.15fr 1fr;gap:8px;background:#e7e5db;padding:8px}.management-overview img{min-height:0;width:100%;height:100%;object-fit:contain;background:#fff}

.activity-triptych{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;align-items:start;padding:7px;background:#332039}.activity-triptych img{width:100%;height:100%;min-height:0;object-fit:contain;object-position:top}.project-gallery .project-image[src*="autumn"]{max-width:430px}

.polaroid-wall{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;max-width:1440px}.polaroid:nth-child(4){transform:rotate(5deg);margin-top:32px}.photo-building{background:#191919;padding:7px}.building-card .fixing{background:radial-gradient(circle at 35% 25%,#9eb6be 0 15%,#577986 45%,#324f5a 90%)}.polaroid:nth-child(4):hover,.polaroid:nth-child(4):focus-visible{transform:translateY(-12px) rotate(0)}@media(min-width:761px) and (max-width:1050px){.polaroid-wall{grid-template-columns:repeat(2,minmax(0,1fr));gap:45px;max-width:800px}}@media(max-width:760px){.polaroid-wall{grid-template-columns:1fr;gap:45px;max-width:340px}.polaroid:nth-child(4){margin-top:0}}

.activity-triptych{grid-template-columns:repeat(3,17%);justify-content:space-evenly;align-items:start}.activity-triptych img{width:100%;height:auto;max-height:none;object-fit:contain}

.management-triptych{display:grid;grid-template-rows:0.55fr 1fr 1fr;gap:5px;padding:6px;background:#ecece5}.management-triptych img{width:100%;height:100%;min-height:0;object-fit:contain;background:#fff}

.activity-panorama{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;padding:0;align-items:stretch;background:#241d28}.activity-strip{display:block;min-width:0;height:100%;overflow:hidden;background:var(--strip-bg)}.activity-panorama .activity-strip img{display:block;width:100%;height:auto;object-fit:contain;object-position:top}
.activity-panorama{aspect-ratio:2.12}.activity-panorama .activity-strip{height:100%}

.activity-card{cursor:default}.activity-card:hover{transform:rotate(-6deg);box-shadow:7px 11px 12px #35240d40}

.building-feature{border-top:1px solid #d3ccb8;padding-top:24px;margin-top:20px}.building-feature img{width:100%;height:auto;display:block}.building-feature h3{font-size:22px;margin:18px 0 8px}.building-feature p{font-size:15px;line-height:1.8}.building-feature a{color:#314839;text-underline-offset:4px;font-size:15px}

.photo-mobile{background:#0b0c15;padding:0}.project-repo-link{display:inline-block;color:#314839;text-underline-offset:4px;margin-top:16px}.polaroid:nth-child(5){transform:rotate(5deg);margin-top:32px}.polaroid:nth-child(5):hover,.polaroid:nth-child(5):focus-visible{transform:translateY(-12px) rotate(0)}@media(min-width:1051px){.polaroid-wall{grid-template-columns:repeat(3,minmax(0,1fr));gap:42px;max-width:1200px}}@media(max-width:760px){.polaroid:nth-child(5){margin-top:0}}

.photo-radar{background:#f7f7fa;padding:0}.polaroid:nth-child(6){transform:rotate(-3deg);margin-top:16px}.polaroid:nth-child(6):hover,.polaroid:nth-child(6):focus-visible{transform:translateY(-12px) rotate(0)}@media(max-width:760px){.polaroid:nth-child(6){margin-top:0}}

/* The signature's finishing stroke belongs to the envelope face, so it shares
   the paper's clipping and motion without changing the original signature image. */
.farewell-envelope-front::after{
  content:"";position:absolute;left:17%;bottom:6%;width:22%;height:7%;pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 146 36'%3E%3Cpath fill='%236a7348' d='M2 32C34 14 82 4 144 2C145 1.9 145 2.3 143.7 2.5C85 6 41 18 2.7 33.1C1.2 33.7 1.2 32.7 2 32Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;
}
