body.home-page{--paper:#edf1eb;--paper-raised:#fbf8ef;--paper-deep:#dce4db;--ink:#102b21;--ink-soft:#52645c;--pine:#123f31;--pine-mid:#2f6551;--pine-pale:#d4dfd5;--orange:#ef6b3f;--orange-soft:#ffb181;--line:#102b212b;--shadow:#0d2b2033;background-color:var(--paper);background-image:linear-gradient(#102b210d 1px,#0000 1px),linear-gradient(90deg,#102b210d 1px,#0000 1px);background-position:top;background-size:72px 72px}body.home-page:before{opacity:.18;background-image:repeating-linear-gradient(11deg,#0000 0 5px,#ffffff14 5px 6px),repeating-linear-gradient(101deg,#0000 0 8px,#102b2105 8px 9px)}.home-page .page-light{opacity:.5;background:radial-gradient(circle, color-mix(in srgb, var(--orange) 28%, transparent) 0, color-mix(in srgb, var(--orange) 12%, transparent) 35%, transparent 72%);mix-blend-mode:multiply;width:min(36rem,50vw)}.home-page .site-header{z-index:12;border-color:color-mix(in srgb, var(--ink) 13%, transparent);position:relative}.home-page .site-identity strong{letter-spacing:-.055em;font-size:17px;font-weight:820}.home-page .site-header nav a{color:color-mix(in srgb, var(--ink) 70%, transparent)}.home-page .home-hero{isolation:isolate;width:var(--content);min-height:calc(100dvh - var(--header-height));grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr);align-items:center;gap:clamp(48px,6vw,96px);margin:0 auto;padding:clamp(30px,5vh,52px) 0 clamp(52px,8vh,82px);display:grid;position:relative}.home-page .home-hero:before{z-index:-2;pointer-events:none;content:"";background-image:linear-gradient(color-mix(in srgb, var(--pine) 13%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--pine) 13%, transparent) 1px, transparent 1px);clip-path:polygon(24% 0,76% 0,100% 100%,0 100%);background-position:top;background-size:56px 56px;height:48%;position:absolute;bottom:-8%;left:-3vw;right:-3vw;mask-image:linear-gradient(#0000,#000 24% 68%,#0000)}.home-page .home-hero:after{z-index:-1;pointer-events:none;content:"";background:radial-gradient(ellipse, color-mix(in srgb, var(--pine) 22%, transparent), transparent 69%);filter:blur(28px);width:44%;height:32%;position:absolute;bottom:4%;right:5%}.home-page .hero-copy{z-index:4;align-self:center;padding-left:clamp(0px,1.5vw,22px)}.home-page .role-line{color:var(--pine-mid);letter-spacing:.105em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:10px}.home-page .signature{letter-spacing:-.083em;max-width:760px;margin:clamp(18px,3vh,30px) 0 24px;font-family:Arial Rounded MT Bold,Helvetica Neue,Arial,sans-serif;font-size:clamp(70px,7.55vw,118px);font-weight:880;line-height:.8}.home-page .signature-lead{z-index:2;color:var(--ink);white-space:nowrap;text-shadow:0 1px 0 color-mix(in srgb, var(--paper-raised) 70%, transparent);position:relative}.home-page .signature-finish{height:1.03em;color:var(--orange);align-items:center;gap:.17em;margin-top:.07em;display:flex}.home-page .signature-finish:before{content:"";background:currentColor;flex:none;width:.56em;height:.065em}.home-page .signature-finish span{padding:.015em .08em .12em 0;line-height:.92;top:0;left:.73em}.home-page .hero-intro{max-width:none;color:color-mix(in srgb, var(--ink) 72%, transparent);white-space:nowrap;font-size:clamp(16px,1.25vw,18px);line-height:1.78}.home-page .hero-actions{gap:32px;margin-top:30px;padding-left:10px}.home-page .text-action-strong{color:var(--paper-raised);border-color:var(--pine);background:var(--pine);box-shadow:0 0 0 10px var(--pine), 0 18px 40px color-mix(in srgb, var(--pine) 24%, transparent)}.home-page .portrait-stage{--stage-x:0;--stage-y:0;--field-x:0;--field-y:0;--image-x:0;--image-y:0;--grid-x:0;--grid-y:0;--mark-x:0;--mark-y:0;isolation:isolate;width:min(34.2vw,486px);transform:perspective(1200px) rotateY(calc(var(--stage-x) * 2.9deg)) rotateX(calc(var(--stage-y) * -2.15deg)) translate3d(calc(var(--stage-x) * 5px), calc(var(--stage-y) * 4px), 0);transform-style:preserve-3d;justify-self:end;margin:0;transition:none;position:relative}.home-page .portrait-grid{z-index:-4;background-image:linear-gradient(color-mix(in srgb, var(--pine) 19%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--pine) 19%, transparent) 1px, transparent 1px);clip-path:polygon(8% 0,100% 0,90% 100%,0 89%);opacity:.72;transform:translate3d(calc(var(--grid-x) * -22px), calc(var(--grid-y) * -15px), -46px) rotate(-3.5deg);background-size:42px 42px;position:absolute;inset:-13% 0 -10% -18%}.home-page .portrait-grid:after{content:"";background:color-mix(in srgb, var(--pine-pale) 58%, transparent);clip-path:polygon(0 7%,93% 0,100% 91%,9% 100%);opacity:.62;position:absolute;inset:12% 4% -2% 18%}.home-page .portrait-shadow{z-index:-3;background:var(--pine);box-shadow:0 42px 100px color-mix(in srgb, var(--pine) 24%, transparent);transform:translate3d(calc(var(--field-x) * -16px), calc(var(--field-y) * -12px), -24px) scale(1.015);border-radius:50%;inset:8% -5% -6% 9%}.home-page .portrait-field{z-index:-2;pointer-events:none;background:radial-gradient(circle at 62% 32%, color-mix(in srgb, var(--orange) 38%, var(--paper-raised)), transparent 42%), radial-gradient(circle at 45% 60%, color-mix(in srgb, var(--pine-mid) 24%, transparent), transparent 67%);filter:blur(18px);opacity:.72;transform:translate3d(calc(var(--field-x) * -12px), calc(var(--field-y) * -9px), -10px);border-radius:50%;position:absolute;inset:-7%}.home-page .portrait-frame{aspect-ratio:1;border:1px solid color-mix(in srgb, var(--ink) 16%, transparent);background:var(--paper-raised);box-shadow:inset 0 0 0 10px color-mix(in srgb, var(--paper-raised) 64%, transparent), 0 36px 86px color-mix(in srgb, var(--pine) 18%, transparent);transform:translate3d(calc(var(--image-x) * 4px), calc(var(--image-y) * 3px), 14px);border-radius:50%;overflow:hidden}.home-page .portrait-frame img{object-fit:cover;object-position:50% 48%;width:100%;height:100%;transform:translate3d(calc(var(--image-x) * 6px), calc(var(--image-y) * 4px), 0) scale(1.025)}.home-page .portrait-mark{width:clamp(54px,5vw,72px);color:var(--ink);border:2px solid var(--ink);background:var(--orange);box-shadow:0 16px 38px color-mix(in srgb, var(--orange) 30%, transparent);transform:translate3d(calc(var(--mark-x) * -22px), calc(var(--mark-y) * -17px), 38px) rotate(calc(var(--mark-x) * 7deg));border-radius:50%;bottom:12%;right:0}.home-page .portrait-mark i,.home-page .portrait-mark i:after{content:"";background:currentColor;width:22px;height:2px;display:block}.home-page .portrait-mark i:after{transform:rotate(90deg)}.home-page .home-project{isolation:isolate;color:#f2f0e8;width:min(100% - 40px,1440px);box-shadow:0 48px 110px color-mix(in srgb, var(--pine) 26%, transparent);background-color:#11362a;background-image:linear-gradient(#eff4ed12 1px,#0000 1px),linear-gradient(90deg,#eff4ed12 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:56px 56px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border-radius:18px;margin-top:clamp(-12px,-1vw,0px);padding:clamp(108px,12vw,170px) clamp(22px,4vw,64px) clamp(100px,10vw,150px);position:relative;overflow:hidden}.home-page .home-project:before{z-index:-1;aspect-ratio:1;pointer-events:none;content:"";background:radial-gradient(circle,#ef6b3f40,#ef6b3f12 38%,#0000 70%);border-radius:50%;width:64%;position:absolute;top:-26%;left:16%}.home-page .section-intro-project{max-width:820px;margin:0 0 clamp(52px,7vw,84px) clamp(0px,5vw,72px)}.home-page .section-intro-project .section-label{color:var(--orange-soft)}.home-page .section-intro-project h2{color:#f4f0e5;letter-spacing:-.075em;max-width:9ch;font-size:clamp(52px,7vw,96px);line-height:.98}.home-page .section-intro-project>p:last-child{color:#eff2ebb3}.home-page .project-window{color:#f4f0e5;background:#092219e0;border:1px solid #f5f4ec29;border-radius:14px;grid-template-columns:minmax(250px,.31fr) minmax(0,1fr);min-height:630px;overflow:visible;box-shadow:0 38px 90px #03120c6b}.home-page .project-window:before{content:"";background-color:#0000;background-image:linear-gradient(#f5f4ec13 1px,#0000 1px),linear-gradient(90deg,#f5f4ec13 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:28px 28px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;border-radius:14px 0 0 14px;grid-area:1/1}.home-page .animal-stage{isolation:isolate;background:radial-gradient(circle at 60% 42%,#ef6b3f30,#0000 32%),linear-gradient(#f5f4ec11 1px,#0000 1px) 0 0/42px 42px,linear-gradient(90deg,#f5f4ec11 1px,#0000 1px) 0 0/42px 42px,#1a4939;border-radius:0 14px 14px 0;grid-area:1/2;min-height:630px;position:relative;overflow:hidden}.home-page .animal-stage:before{content:"";filter:blur(30px);background:#0518115c;border-radius:50%;height:14%;position:absolute;bottom:12%;left:8%;right:8%}.home-page .animal-slide{opacity:0;margin:0;animation:16s cubic-bezier(.4,0,.2,1) infinite both animal-fade;display:grid;position:absolute;inset:0}.home-page .animal-slide-two{animation-delay:4s}.home-page .animal-slide-three{animation-delay:8s}.home-page .animal-slide-four{animation-delay:12s}.home-page .animal-slide picture{grid-area:1/1;width:100%;height:100%}.home-page .animal-slide img{object-fit:contain;filter:drop-shadow(0 35px 38px #02120c57);border-radius:0;width:100%;height:100%;min-height:0;padding:4% 2% 2%}.home-page .animal-slide figcaption{z-index:2;grid-area:1/1;place-self:end start;margin:0 0 24px 26px;font-size:14px;font-weight:720;position:relative}.home-page .animal-slide figcaption span{color:var(--orange-soft);margin-right:9px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:10px}.home-page .animal-slide figcaption small{color:#f4f0e58c;letter-spacing:.12em;margin-left:10px;font-size:9px}@keyframes animal-fade{0%,2%{opacity:0;transform:scale(.97)translateY(10px)}7%,22%{opacity:1;transform:scale(1)translateY(0)}27%,to{opacity:0;transform:scale(1.018)translateY(-4px)}}.home-page .project-window:hover{transform:translateY(-4px);box-shadow:0 48px 110px #03120c80}.home-page .project-window:hover .animal-stage{filter:saturate(1.04)contrast(1.02)}.home-page .project-window-title{padding:42px 34px 126px;font-size:clamp(40px,4.1vw,60px)}.home-page .project-window-action{color:#f4f0e5;margin:0 34px 44px}.home-page .project-notes{color:#f4f0e5;background:#081e16e0;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;width:min(100% - 46px,860px);margin:0 28px 0 auto;transform:translateY(-1px)}.home-page .project-notes p{border-top:0;border-left:1px solid #f5f4ec21;align-content:center;gap:7px;min-height:104px;padding:20px 24px;display:grid}.home-page .project-notes p:first-child{border-left:0}.home-page .project-notes strong{color:var(--orange-soft);font-size:17px;line-height:1.2}.home-page .project-notes span{color:#eff2ebab;font-size:12px}.home-page .home-writing,.home-page .home-about{width:var(--content)}.home-page .section-link{color:var(--ink);gap:14px;margin-top:30px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.home-page .section-link:hover{color:var(--orange)}.home-page .writing-stack{border-top:1px solid var(--line)}.home-page .writing-stack .writing-feature{border-top:0;border-bottom:1px solid var(--line)}.home-page .writing-stack .writing-feature a{grid-template-columns:minmax(0,1fr) auto;gap:10px 28px;padding:28px 0 34px;display:grid}.home-page .writing-stack h3,.home-page .writing-stack a>span,.home-page .writing-stack a>span b{transition:color .18s,transform .22s cubic-bezier(.16,1,.3,1)}.home-page .writing-stack a>span b{display:inline-block}.home-page .writing-stack .writing-feature a:focus-visible{transform:translate(8px)}.home-page .writing-stack .writing-feature a:focus-visible h3,.home-page .writing-stack .writing-feature a:focus-visible>span{color:var(--orange)}.home-page .writing-stack .writing-feature a:focus-visible>span b{transform:translate(4px,-4px)}@media (hover:hover) and (pointer:fine){.home-page .writing-stack .writing-feature a:hover{transform:translate(8px)}.home-page .writing-stack .writing-feature a:hover h3,.home-page .writing-stack .writing-feature a:hover>span{color:var(--orange)}.home-page .writing-stack .writing-feature a:hover>span b{transform:translate(4px,-4px)}}.home-page .writing-stack .writing-feature a:active{transform:translate(4px,1px)}.home-page .writing-stack .writing-date,.home-page .writing-stack h3,.home-page .writing-stack a>p:nth-of-type(2){grid-column:1}.home-page .writing-stack .writing-date{margin-bottom:20px}.home-page .writing-stack h3{max-width:18ch;font-size:clamp(28px,3vw,44px)}.home-page .writing-stack a>p:nth-of-type(2){margin:14px 0 0}.home-page .writing-stack a>span{grid-area:1/2/4;align-self:center}.home-page .writing-feature-quiet h3{font-size:clamp(26px,2.55vw,38px)}.home-page .signature-copy{border-top:1px solid var(--line);padding-top:22px}@media (prefers-color-scheme:dark){body.home-page{--paper:#0f1c16;--paper-raised:#192920;--paper-deep:#24362c;--ink:#f0eee5;--ink-soft:#abb9b0;--pine:#e1e8df;--pine-mid:#a5c8b5;--pine-pale:#24382d;--line:#f0eee526;--shadow:#020a076b;background-image:linear-gradient(#f0eee50b 1px,#0000 1px),linear-gradient(90deg,#f0eee50b 1px,#0000 1px)}.home-page .page-light{opacity:.38;mix-blend-mode:screen}.home-page .portrait-shadow{background:#2f654f}.home-page .text-action-strong{color:#102b21;background:#dfe8df;border-color:#dfe8df;box-shadow:0 0 0 10px #dfe8df,0 18px 40px #020a0757}}@media (width<=980px){.home-page .home-hero{grid-template-columns:minmax(0,1fr) minmax(320px,.77fr);gap:38px}.home-page .signature{font-size:clamp(62px,8.7vw,84px)}.home-page .portrait-stage{width:min(35vw,387px)}.home-page .project-window{grid-template-columns:minmax(220px,.36fr) minmax(0,1fr);min-height:520px}.home-page .animal-stage{min-height:520px}.home-page .animal-slide picture,.home-page .animal-slide img{min-height:0}}@media (width<=767px){body.home-page{background-size:36px 36px}.home-page .home-hero{min-height:calc(100dvh - var(--header-height));grid-template-rows:auto auto;grid-template-columns:1fr;gap:30px;padding:26px 0 38px}.home-page .home-hero:before{background-size:38px 38px;height:46%;bottom:-12%;left:-14vw;right:-14vw}.home-page .hero-copy{padding-left:0}.home-page .role-line{letter-spacing:.08em;font-size:8px}.home-page .signature{margin:14px 0 16px;font-size:clamp(43px,14vw,56px);line-height:.82}.home-page .signature-finish span{left:.73em}.home-page .hero-intro{letter-spacing:-.015em;white-space:nowrap;max-width:none;font-size:clamp(13px,3.85vw,14px);line-height:1.68}.home-page .hero-actions{gap:28px;margin-top:22px}.home-page .portrait-stage{justify-self:center;width:min(74vw,324px)}.home-page .portrait-grid{background-size:30px 30px;inset:-11% 0 -8% -11%}.home-page .portrait-mark{width:50px;bottom:10%;right:0}.home-page .home-project{background-size:36px 36px;border-radius:14px;width:calc(100% - 16px);padding:86px 8px 80px}.home-page .section-intro-project{margin:0 16px 42px}.home-page .section-intro-project h2{font-size:clamp(44px,13vw,58px)}.home-page .project-window{grid-template-rows:auto auto;grid-template-columns:1fr;min-height:0;margin:0}.home-page .project-window:before{border-radius:0 0 14px 14px;grid-area:2/1;min-height:178px}.home-page .animal-stage{aspect-ratio:1.06;border-radius:14px 14px 0 0;grid-area:1/1;min-height:0}.home-page .animal-slide picture,.home-page .animal-slide img{grid-area:1/1;min-height:0}.home-page .animal-slide img{padding:3% 0 1%}.home-page .animal-slide figcaption{margin:0 0 18px 18px}.home-page .project-window-title,.home-page .project-window-action{grid-area:2/1}.home-page .project-window-title{padding:26px 22px 76px;font-size:40px}.home-page .project-window-action{margin:0 22px 24px}.home-page .project-notes{grid-template-columns:1fr;width:calc(100% - 24px);margin:0 auto}.home-page .project-notes p{border-top:1px solid #f5f4ec21;border-left:0;min-height:76px;padding:14px 18px}.home-page .project-notes p:first-child{border-top:0}.home-page .writing-stack .writing-feature a{grid-template-columns:1fr}.home-page .writing-stack a>span{grid-area:auto/1;margin-top:10px}.home-page .writing-stack h3,.home-page .writing-feature-quiet h3{font-size:clamp(29px,9.3vw,38px)}}@media (prefers-reduced-motion:reduce){.home-page .portrait-stage,.home-page .portrait-grid,.home-page .portrait-shadow,.home-page .portrait-field,.home-page .portrait-frame,.home-page .portrait-frame img,.home-page .portrait-mark,.home-page .home-hero:after{transform:none}.home-page .animal-slide{animation:none;display:none}.home-page .animal-slide-one{opacity:1;display:grid;transform:none}}
