:root{color-scheme:light;font-family:var(--font-sans);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--color-ivory: #fff8ed;--color-sakura: #f2a8c5;--color-lilac: #bfa9ff;--color-botanical: #9fc5a4;--color-ink: #35293a;--color-accent-ink: #80556a;--color-muted: #756a78;--color-rule: #ded5d9;--color-paper: #fffdf9;--font-sans: "Avenir Next", Avenir, "Segoe UI", sans-serif;--font-editorial: Iowan Old Style, "Palatino Linotype", "Book Antiqua", Georgia, serif;--text-xs: .72rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: clamp(1.125rem, 1.8vw, 1.35rem);--text-display: clamp(3.7rem, 9.5vw, 8.5rem);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-6: 1.5rem;--space-8: 2rem;--space-12: 3rem;--space-16: 4rem;--space-24: 6rem;--ease-gentle: cubic-bezier(.22, 1, .36, 1);--duration-quick: .16s;--duration-standard: .32s;--duration-gentle: .62s;--content-max: 76rem;--gutter: clamp(1.25rem, 5vw, 5rem)}*,*:before,*:after{box-sizing:border-box}html{min-width:320px;scroll-behavior:smooth;scroll-padding-top:var(--space-16);background:var(--color-ivory)}body{min-width:320px;min-height:100vh;margin:0;background:var(--color-ivory);color:var(--color-ink);font-family:var(--font-sans);font-size:var(--text-base);line-height:1.6}button,a{color:inherit;font:inherit}a{text-decoration-thickness:1px;text-underline-offset:.2em}button:focus-visible,a:focus-visible{outline:2px solid var(--color-ink);outline-offset:4px}::selection{background:var(--color-lilac);color:var(--color-ink)}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;clip-path:inset(50%);border:0}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.portfolio-site{width:min(100%,var(--content-max));margin-inline:auto}.skip-link{position:absolute;top:.5rem;left:.5rem;z-index:20;padding:.65rem 1rem;transform:translateY(-150%);background:var(--color-ink);color:var(--color-ivory)}.skip-link:focus{transform:translateY(0)}.site-header{min-height:5.5rem;display:flex;align-items:center;justify-content:space-between;gap:2rem;border-bottom:1px solid var(--color-rule)}.site-identity,.footer-identity{display:inline-flex;align-items:center;gap:.7rem;color:var(--color-ink);text-decoration:none}.identity-mark{font-family:var(--font-editorial);font-size:1.8rem;font-weight:700;line-height:1}.identity-mark span{margin-left:.12rem;color:var(--color-sakura);font-family:var(--font-sans);font-size:.75rem}.identity-name{font-size:.78rem;letter-spacing:.04em}.identity-name i{padding-inline:.25rem;color:var(--color-sakura);font-style:normal}.primary-nav,.footer-nav{display:flex;align-items:center;gap:clamp(1.25rem,3vw,2.75rem)}.primary-nav a,.footer-nav a{min-height:2.75rem;display:inline-flex;align-items:center;color:var(--color-ink);font-size:var(--text-sm);text-decoration:none;transition:color var(--duration-quick) ease}.primary-nav a:hover,.footer-nav a:hover{color:var(--color-accent-ink)}.home-hero{min-height:min(48rem,88vh);display:grid;grid-template-columns:1.03fr .97fr;align-items:center;position:relative;padding-top:3rem;padding-bottom:4rem}.hero-text{position:relative;z-index:3;padding-block:3rem}.eyebrow{display:flex;align-items:center;gap:.7rem;margin:0 0 1.35rem;color:var(--color-muted);font-size:var(--text-xs);font-weight:600;letter-spacing:.12em;text-transform:uppercase}.eyebrow>span{color:var(--color-botanical);font-size:1rem}.eyebrow i{color:var(--color-sakura);font-style:normal}.home-hero h1{max-width:9ch;margin:0;font-family:var(--font-editorial);font-size:clamp(3.75rem,7.7vw,7.5rem);font-weight:400;letter-spacing:-.075em;line-height:.9}.home-hero h1 span{color:#80628b;font-style:italic;font-weight:400}.hero-intro{max-width:29rem;margin:1.75rem 0 0;color:var(--color-muted);font-size:var(--text-lg);line-height:1.6}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1.5rem;margin-top:2rem}.button{min-height:3.1rem;display:inline-flex;align-items:center;justify-content:center;gap:1.6rem;padding:.75rem 1.1rem;border:1px solid var(--color-ink);font-size:var(--text-sm);font-weight:600;text-decoration:none;transition:transform var(--duration-quick) ease,background var(--duration-quick) ease,color var(--duration-quick) ease}.button:hover{transform:translateY(-2px)}.button--primary{background:var(--color-ink);color:var(--color-ivory)}.button--primary:hover{background:transparent;color:var(--color-ink)}.button span{font-size:1.1rem}@property --hero-cta-angle{syntax: "<angle>"; inherits: false; initial-value: 0deg;}.hero-actions>.button--primary{position:relative;isolation:isolate;overflow:visible;border:1px solid #383a40;border-radius:999px;background:linear-gradient(115deg,#17171a,#090a0c 74%);color:var(--color-ivory);transition:background .36s ease}.hero-actions>.button--primary:before,.hero-actions>.button--primary:after{position:absolute;inset:-1px;z-index:0;border-radius:inherit;background:conic-gradient(from var(--hero-cta-angle),transparent 0turn .62turn,rgba(42,176,255,.02) .65turn,rgba(42,176,255,.16) .69turn,rgba(50,198,255,.55) .73turn,#a0f3ff .76turn,#21aaff .79turn,rgba(37,169,255,.38) .82turn,rgba(37,169,255,.12) .86turn,transparent .92turn 1turn);content:"";opacity:0;pointer-events:none;transition:opacity .36s ease}.hero-actions>.button--primary:before{z-index:1;padding:1px;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude}.hero-actions>.button--primary:after{inset:-1px;padding:1px;filter:blur(13px);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude}.hero-actions>.button--primary span{position:relative;z-index:1}@keyframes hero-cta-light-travel{to{--hero-cta-angle: 1turn}}@media(hover:hover)and (pointer:fine){.hero-actions>.button--primary:hover{transform:none;background:linear-gradient(115deg,#17171a,#090a0c 74%)}.hero-actions>.button--primary:hover:before,.hero-actions>.button--primary:hover:after{opacity:1;animation:hero-cta-light-travel 2.6s linear infinite}.hero-actions>.button--primary:hover:after{opacity:.56}}.hero-actions>.button--primary:focus-visible{transform:none;outline:2px solid rgba(80,210,255,.68);outline-offset:4px;background:linear-gradient(115deg,#17171a,#090a0c 74%)}.hero-actions>.button--primary:focus-visible:before,.hero-actions>.button--primary:focus-visible:after{opacity:1;animation:hero-cta-light-travel 2.6s linear infinite}.hero-actions>.button--primary:focus-visible:after{opacity:.56}.hero-actions>.button--primary:active{transform:none}.hero-actions>.button--primary:active:before,.hero-actions>.button--primary:active:after{opacity:1;animation:none}@media(hover:none),(pointer:coarse){.hero-actions>.button--primary:focus-visible:before,.hero-actions>.button--primary:focus-visible:after{animation:none}}@media(prefers-reduced-motion:reduce){.hero-actions>.button--primary,.hero-actions>.button--primary:before,.hero-actions>.button--primary:after{transition:none;animation:none!important}.hero-actions>.button--primary:hover:before,.hero-actions>.button--primary:hover:after,.hero-actions>.button--primary:focus-visible:before,.hero-actions>.button--primary:focus-visible:after{opacity:1}}.text-link{min-height:2.75rem;display:inline-flex;align-items:center;gap:.55rem;color:var(--color-ink);font-size:var(--text-sm);text-decoration-color:var(--color-sakura);text-decoration-thickness:2px;text-underline-offset:.35rem}.text-link span{color:var(--color-accent-ink);transition:transform var(--duration-quick) ease}.text-link:hover span{transform:translate(2px,-2px)}.hero-art{min-height:37rem;display:grid;place-items:center;position:relative;isolation:isolate}.hero-art:before{width:86%;aspect-ratio:1;position:absolute;z-index:-1;border:1px solid rgba(117,106,120,.16);border-radius:50%;content:""}.hero-disc{position:absolute;display:block;border-radius:50%}.hero-disc--pink{width:54%;aspect-ratio:1;top:13%;right:8%;background:var(--color-sakura)}.hero-disc--lilac{width:60%;aspect-ratio:1;bottom:8%;left:5%;background:var(--color-lilac);mix-blend-mode:multiply}.hero-paper{width:45%;aspect-ratio:.78;position:absolute;z-index:1;background:var(--color-botanical);clip-path:polygon(13% 0,100% 10%,88% 100%,0 88%);transform:rotate(9deg)}.hero-image-placeholder{width:58%;aspect-ratio:.82;display:flex;flex-direction:column;position:absolute;z-index:3;gap:.55rem;padding:.75rem;border:1px solid rgba(53,41,58,.16);background:var(--color-paper);box-shadow:0 .8rem 2rem #35293a1f;transform:rotate(-4deg)}.hero-image-label{color:var(--color-muted);font-size:.62rem;letter-spacing:.11em;text-align:center;text-transform:uppercase}.hero-image-window{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;position:relative;overflow:hidden;background:var(--color-lilac);color:var(--color-ink)}.hero-image-window:before,.hero-image-window:after{width:68%;aspect-ratio:1;position:absolute;border:1px solid rgba(53,41,58,.45);border-radius:50%;content:""}.hero-image-window:after{width:43%;border-color:#fff8edd9}.hero-image-symbol{position:relative;z-index:1;color:var(--color-ink);font-size:1.65rem}.hero-image-path{position:relative;z-index:1;padding:.3rem .45rem;background:var(--color-ivory);font-size:.48rem;letter-spacing:.02em}.hero-loop{width:112%;position:absolute;z-index:2;overflow:visible;color:var(--color-ink);transform:rotate(-7deg)}.hero-butterfly{width:6rem;position:absolute;z-index:4;top:16%;left:18%;color:var(--color-ink);transform:rotate(-14deg)}.hero-sticker{width:6.3rem;aspect-ratio:1;display:grid;place-content:center;position:absolute;z-index:4;right:5%;bottom:18%;border-radius:50%;background:var(--color-ivory);color:var(--color-ink);font-size:.57rem;letter-spacing:.1em;line-height:1.4;text-align:center;transform:rotate(11deg)}.hero-sticker b{color:var(--color-accent-ink);font-size:.62rem}.hero-art-note{position:absolute;z-index:5;color:var(--color-muted);font-size:.63rem;letter-spacing:.12em;text-transform:uppercase}.hero-art-note--top{top:6%;right:4%;transform:rotate(8deg)}.hero-art-note--bottom{bottom:5%;left:7%;transform:rotate(-5deg)}.hero-art-note--bottom i{padding-left:.4rem;color:var(--color-accent-ink);font-style:normal}.hero-index{display:flex;align-items:center;gap:.6rem;position:absolute;right:var(--gutter);bottom:2rem;color:var(--color-muted);font-size:var(--text-xs);letter-spacing:.08em;text-decoration:none;text-transform:uppercase}.hero-index b{color:var(--color-accent-ink);font-size:1.2rem}.work-section{padding-top:clamp(4.5rem,9vw,8rem);padding-bottom:clamp(5rem,10vw,9rem);border-top:1px solid var(--color-rule)}.section-topline{display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.section-topline .eyebrow{margin:0}.section-topline .eyebrow>span{color:var(--color-accent-ink)}.section-note{margin:0;color:var(--color-muted);font-size:var(--text-sm)}.work-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin:1.25rem 0 3.5rem}.work-heading h2,.about-copy h2,.contact-copy h2{margin:0;font-family:var(--font-editorial);font-size:clamp(3rem,6.5vw,6rem);font-weight:400;letter-spacing:-.065em;line-height:.95}.work-heading h2 em,.about-copy h2 em{color:#80628b;font-weight:400}.placeholder-legend{display:inline-flex;align-items:center;gap:.55rem;padding-bottom:.45rem;color:var(--color-muted);font-size:var(--text-xs)}.placeholder-legend i{width:.5rem;height:.5rem;display:inline-block;background:var(--color-sakura);transform:rotate(45deg)}.project-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;gap:5rem 1.5rem}.project{min-width:0;position:relative;z-index:0;transform-origin:center;transition:transform .3s var(--ease-gentle),box-shadow .3s var(--ease-gentle)}.project--identity{grid-column:1 / span 7}.project--packaging{grid-column:9 / span 4;margin-top:7rem}.project--campaign{grid-column:1 / span 5;margin-top:-1rem}.project--illustration{grid-column:7 / span 6;margin-top:5rem}.project-art{position:relative;overflow:hidden;background:var(--color-paper)}.project--identity .project-art{aspect-ratio:1.42}.project--packaging .project-art{aspect-ratio:.88}.project--campaign .project-art{aspect-ratio:.94}.project--illustration .project-art{aspect-ratio:1.32}.project-art>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.art-placeholder{width:100%;height:100%;display:grid;place-items:center;position:absolute;inset:0;overflow:hidden;isolation:isolate;transition:transform var(--duration-standard) var(--ease-gentle)}.placeholder-note{position:absolute;z-index:5;top:1rem;left:1.1rem;color:#35293aad;font-size:.58rem;letter-spacing:.12em;text-transform:uppercase}.art-index{position:absolute;z-index:5;right:1rem;bottom:.75rem;color:#35293a9e;font-size:.65rem;letter-spacing:.1em}.art-placeholder--identity{background:var(--color-ink);color:var(--color-ivory)}.art-placeholder--identity .placeholder-note,.art-placeholder--identity .art-index{color:#fff8edb3}.identity-ring{aspect-ratio:1;display:block;position:absolute;border:1px solid rgba(242,168,197,.8);border-radius:50%}.identity-ring--outer{width:62%;transform:translate(24%,10%)}.identity-ring--inner{width:42%;border-color:#bfa9ffcc;transform:translate(-52%,-7%)}.identity-type{position:relative;z-index:2;color:var(--color-ivory);font-family:var(--font-editorial);font-size:clamp(5rem,12vw,12rem);letter-spacing:-.1em;line-height:1}.identity-stamp{position:absolute;right:13%;bottom:20%;color:var(--color-sakura);font-size:.58rem;letter-spacing:.15em;line-height:1.55;text-align:center;transform:rotate(8deg)}.art-placeholder--packaging{background:#e4eddf}.package-shadow{width:67%;height:10%;position:absolute;bottom:19%;border-radius:50%;background:#35293a24;filter:blur(9px)}.package-box{display:block;position:absolute;border:1px solid rgba(53,41,58,.12);box-shadow:0 .8rem 1.2rem #35293a14}.package-box--back{width:31%;height:46%;top:22%;left:18%;background:var(--color-sakura);transform:rotate(-8deg) skewY(-2deg)}.package-box--front{width:37%;height:56%;right:17%;bottom:21%;background:var(--color-ivory);transform:rotate(7deg) skewY(2deg)}.package-box--back i,.package-box--front i{position:absolute;top:42%;left:50%;color:var(--color-ink);font-size:2rem;font-style:normal;transform:translate(-50%,-50%)}.package-box--front i{color:#8c6477;font-size:2.3rem}.package-box--side{width:16%;height:48%;right:11%;bottom:24%;border-left:0;background:#d7c8b3;transform:rotate(7deg) skewY(2deg)}.art-placeholder--campaign{background:var(--color-sakura)}.campaign-sheet{display:block;position:absolute;aspect-ratio:.72}.campaign-sheet--back{width:53%;background:var(--color-botanical);transform:rotate(-13deg) translate(-9%,1%)}.campaign-sheet--front{width:51%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.1rem;background:var(--color-ivory);color:var(--color-ink);transform:rotate(5deg) translate(6%,1%)}.campaign-sheet--front i{font-family:var(--font-editorial);font-size:clamp(1.5rem,4vw,3.8rem);font-style:normal;font-weight:700;letter-spacing:-.08em;line-height:.9}.campaign-sheet--front b{color:var(--color-accent-ink);font-family:var(--font-editorial);font-size:1.2rem;font-style:italic;font-weight:400}.campaign-spark{margin-top:.45rem;color:#8c6477;font-size:1.2rem}.campaign-tape{width:22%;height:1.1rem;position:absolute;top:16%;left:44%;background:#bfa9ffe0;transform:rotate(-8deg)}.art-placeholder--illustration{background:#d9cef6}.illustration-sun{width:42%;aspect-ratio:1;position:absolute;top:11%;right:12%;border-radius:50%;background:var(--color-sakura)}.illustration-stem{width:1.3%;height:62%;position:absolute;bottom:-5%;left:48%;background:#637d68;transform:rotate(11deg);transform-origin:bottom}.illustration-leaf{width:20%;height:11%;position:absolute;left:40%;border:1px solid #637d68;border-radius:100% 0;background:var(--color-botanical)}.illustration-leaf--one{bottom:27%;transform:rotate(22deg)}.illustration-leaf--two{bottom:43%;left:49%;transform:rotate(205deg)}.illustration-flower{width:24%;aspect-ratio:1;position:absolute;top:19%;left:19%}.illustration-flower i{width:36%;height:52%;position:absolute;top:0;left:32%;border:1px solid rgba(53,41,58,.2);border-radius:50%;background:var(--color-ivory);transform-origin:50% 96%}.illustration-flower i:nth-child(2){transform:rotate(45deg)}.illustration-flower i:nth-child(3){transform:rotate(90deg)}.illustration-flower i:nth-child(4){transform:rotate(135deg)}.illustration-flower i:nth-child(5){transform:rotate(180deg)}.illustration-flower i:nth-child(6){transform:rotate(225deg)}.illustration-flower i:nth-child(7){transform:rotate(270deg)}.illustration-flower i:nth-child(8){transform:rotate(315deg)}.illustration-flower b{width:28%;aspect-ratio:1;position:absolute;top:36%;left:36%;border-radius:50%;background:var(--color-sakura)}.illustration-spark{position:absolute;right:16%;bottom:15%;color:var(--color-ink);font-size:2.4rem}.project-caption{display:grid;grid-template-columns:2.5rem 1fr;align-items:baseline;gap:.5rem;padding-top:.9rem}.project-index{color:var(--color-accent-ink);font-size:.62rem;letter-spacing:.08em}.project-index i{color:var(--color-sakura);font-style:normal}.project-caption h3{margin:0;font-family:var(--font-editorial);font-size:clamp(1.3rem,2.2vw,1.8rem);font-weight:400;letter-spacing:-.03em;line-height:1.2}.about-section{display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:clamp(3rem,9vw,8rem);padding-top:clamp(5rem,10vw,9rem);padding-bottom:clamp(5rem,10vw,9rem);border-top:1px solid var(--color-rule)}.about-visual{min-height:29rem;position:relative;display:grid;place-items:center;overflow:hidden;background:var(--color-botanical);clip-path:polygon(4% 3%,96% 0,100% 94%,8% 100%)}.about-sun{width:48%;aspect-ratio:1;position:absolute;top:13%;right:8%;border-radius:50%;background:var(--color-sakura)}.about-ring{width:82%;aspect-ratio:1;position:absolute;border:1px solid rgba(53,41,58,.55);border-radius:50%}.about-ring--one{transform:scaleY(.65) rotate(24deg)}.about-ring--two{width:62%;border-color:#fff8ede6;transform:scaleY(.75) rotate(-27deg)}.about-flower{width:27%;aspect-ratio:1;position:relative;z-index:1}.about-flower i{width:45%;height:62%;position:absolute;top:-8%;left:27%;border:1px solid rgba(53,41,58,.16);border-radius:50%;background:var(--color-ivory);transform-origin:50% 92%}.about-flower i:nth-child(2){transform:rotate(72deg)}.about-flower i:nth-child(3){transform:rotate(144deg)}.about-flower i:nth-child(4){transform:rotate(216deg)}.about-flower i:nth-child(5){transform:rotate(288deg)}.about-flower b{width:30%;aspect-ratio:1;position:absolute;top:27%;left:35%;border-radius:50%;background:var(--color-lilac)}.about-note{position:absolute;right:9%;bottom:12%;color:var(--color-ink);font-family:var(--font-editorial);font-size:1.2rem;font-style:italic;line-height:1.1;transform:rotate(-8deg)}.about-copy{padding-block:2rem}.about-copy h2{font-size:clamp(2.7rem,5vw,5rem)}.about-lede{max-width:31rem;margin:1.6rem 0 0;font-size:var(--text-lg);line-height:1.55}.about-placeholder{max-width:31rem;margin:1rem 0 1.3rem;color:var(--color-muted);font-size:var(--text-sm);line-height:1.75}.contact-section{min-height:36rem;display:grid;grid-template-columns:.7fr 1.3fr;align-items:center;position:relative;overflow:hidden;background:var(--color-ink);color:var(--color-ivory)}.contact-copy{position:relative;z-index:2;padding-block:5rem}.contact-copy .eyebrow,.contact-copy>p:not(.eyebrow){color:#fff8edb8}.contact-copy .eyebrow>span{color:var(--color-sakura)}.contact-copy h2{font-size:clamp(3.3rem,7vw,6.5rem)}.contact-copy h2 em{color:var(--color-sakura);font-weight:400}.contact-copy>p:not(.eyebrow){max-width:27rem;margin:1.5rem 0 1.6rem}.button--light{border-color:var(--color-ivory);background:var(--color-ivory);color:var(--color-ink)}.button--light:hover{background:transparent;color:var(--color-ivory)}.contact-placeholder{display:flex;flex-direction:column;gap:.25rem;margin-top:2rem;font-size:var(--text-sm)}.contact-placeholder span{color:#fff8ed8f;font-size:.65rem;letter-spacing:.12em;text-transform:uppercase}.contact-placeholder a{width:fit-content;color:var(--color-ivory);text-decoration-color:var(--color-lilac)}.contact-decoration{height:100%;position:relative;display:grid;place-items:center}.contact-orbit{width:min(28rem,94%);aspect-ratio:1;position:absolute;border:1px solid rgba(242,168,197,.72);border-radius:50%;transform:scaleY(.68) rotate(22deg)}.contact-orbit--inner{width:22rem;max-width:72%;border-color:#bfa9ffb3;transform:scaleY(.85) rotate(-32deg)}.contact-star{position:absolute;z-index:1;color:var(--color-lilac);font-size:2rem}.contact-star--one{top:22%;left:22%;color:var(--color-sakura)}.contact-star--two{right:17%;bottom:21%;font-size:3rem}.site-footer{min-height:6rem;display:grid;grid-template-columns:1fr auto 1fr auto;align-items:center;gap:2rem;border-top:1px solid var(--color-rule)}.footer-identity{width:fit-content;font-family:var(--font-editorial);font-size:1.15rem}.footer-identity span{color:var(--color-accent-ink);font-family:var(--font-sans);font-size:.75rem}.footer-nav{gap:1.4rem}.footer-nav a{min-height:2.75rem;font-size:var(--text-xs)}.social-placeholders{display:flex;justify-content:flex-end;gap:1rem}.social-placeholders a{color:var(--color-muted);font-size:var(--text-xs);text-decoration-color:var(--color-sakura);text-underline-offset:.2em}.social-placeholders a span{color:var(--color-accent-ink)}.footer-note{color:var(--color-muted);font-size:.65rem;white-space:nowrap}.footer-note i{padding-left:.2rem;color:var(--color-sakura);font-style:normal}.reveal-ready [data-reveal]:not(.is-revealed){opacity:0;transform:translateY(.8rem)}[data-reveal]{transition:opacity var(--duration-gentle) var(--ease-gentle),transform var(--duration-gentle) var(--ease-gentle)}[data-reveal].is-revealed{opacity:1;transform:translateY(0)}.cursor-accent{width:.7rem;height:.7rem;position:fixed;top:0;left:0;z-index:100;border:1px solid var(--color-ink);border-radius:50%;background:var(--color-sakura);box-shadow:0 0 0 .22rem #bfa9ff73;pointer-events:none;will-change:transform}.hero-butterfly,.hero-petal{pointer-events:none}.hero-butterfly{animation:butterfly-drift 7s ease-in-out infinite}.hero-petal{width:1rem;height:1.55rem;position:absolute;z-index:4;border:1px solid var(--color-accent-ink);border-radius:90% 12%;background:var(--color-sakura);animation:petal-drift 8s ease-in-out infinite alternate}.hero-petal--one{top:27%;right:13%;transform:rotate(25deg)}.hero-petal--two{bottom:24%;left:11%;width:.72rem;height:1.15rem;border-color:var(--color-accent-ink);background:var(--color-lilac);animation-delay:-3s}@keyframes butterfly-drift{0%,to{translate:0 0;rotate:-2deg}50%{translate:0 -.35rem;rotate:3deg}}@keyframes petal-drift{0%{translate:0 0;rotate:-8deg}to{translate:.35rem -.5rem;rotate:12deg}}.primary-nav a,.footer-nav a{position:relative}.primary-nav a:after,.footer-nav a:after{height:1px;position:absolute;right:0;bottom:.35rem;left:0;background:var(--color-sakura);content:"";transform:scaleX(0);transform-origin:left;transition:transform var(--duration-quick) var(--ease-gentle)}.primary-nav a:hover:after,.primary-nav a:focus-visible:after,.footer-nav a:hover:after,.footer-nav a:focus-visible:after{transform:scaleX(1)}.button:active{transform:translateY(1px) scale(.99)}.text-link:active{color:var(--color-accent-ink)}.project-detail{grid-column:2;margin:.1rem 0 0;color:var(--color-muted);font-size:var(--text-xs);line-height:1.5;transition:color var(--duration-quick) ease,transform var(--duration-quick) ease}@media(hover:hover)and (pointer:fine){.project:hover .project-detail{color:var(--color-accent-ink);transform:translate(.15rem)}.project:hover{z-index:5;transform:scale(1.3);box-shadow:0 1rem 2rem #35293a24}}@media(prefers-reduced-motion:reduce){.project{transition:none}.project:hover{transform:none;box-shadow:none}}@media(max-width:900px){.home-hero{min-height:42rem;grid-template-columns:1.05fr .95fr}.home-hero h1{font-size:clamp(3.8rem,8vw,6rem)}.hero-art{min-height:31rem}.hero-sticker{width:5.5rem}.project-grid{gap:4rem 1.1rem}.project--packaging{grid-column:9 / span 4;margin-top:4rem}.project--illustration{grid-column:7 / span 6;margin-top:3rem}.about-section{gap:3rem}.about-visual{min-height:24rem}.site-footer{grid-template-columns:1fr auto 1fr;gap:1rem}.footer-note{grid-column:1 / -1;padding-bottom:1rem}}@media(max-width:650px){.site-header{min-height:5rem;flex-wrap:wrap;gap:.4rem 1rem;padding-block:.75rem}.site-identity{margin-right:auto}.identity-name{font-size:.72rem}.primary-nav{width:100%;justify-content:space-between;gap:.75rem}.primary-nav a{min-height:2.5rem;font-size:.82rem}.home-hero{min-height:auto;grid-template-columns:1fr;padding-top:3.5rem;padding-bottom:5rem}.hero-text{padding-block:0}.home-hero h1{font-size:clamp(3.6rem,14vw,5.8rem)}.hero-intro{max-width:28rem;margin-top:1.4rem;font-size:1rem}.hero-actions{gap:.7rem 1.25rem;margin-top:1.5rem}.button{min-height:3rem}.hero-art{min-height:min(94vw,27rem);margin-top:.7rem}.hero-disc--pink{right:9%}.hero-disc--lilac{left:7%}.hero-paper{width:43%}.hero-image-placeholder{width:62%;padding:.6rem}.hero-butterfly{width:4.8rem}.hero-sticker{width:4.7rem;right:3%;font-size:.48rem}.hero-art-note{font-size:.52rem}.hero-index{right:var(--gutter);bottom:1rem}.work-section{padding-top:4rem;padding-bottom:4.5rem}.section-topline{align-items:flex-start;flex-direction:column;gap:.4rem}.work-heading{align-items:flex-start;flex-direction:column;gap:1rem;margin:1rem 0 2rem}.work-heading h2{font-size:clamp(3rem,12vw,4.5rem)}.placeholder-legend{padding:0}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.7rem .85rem}.project--identity,.project--packaging,.project--campaign,.project--illustration{grid-column:auto;margin-top:0}.project--identity{grid-column:1 / -1}.project--identity .project-art{aspect-ratio:1.2}.project--packaging .project-art,.project--campaign .project-art{aspect-ratio:.82}.project--illustration{grid-column:1 / -1}.project--illustration .project-art{aspect-ratio:1.25}.project-caption{grid-template-columns:auto 1fr;gap:.25rem .4rem;padding-top:.65rem}.project-caption h3{grid-column:1 / -1;font-size:1.2rem}.project-detail{grid-column:1 / -1}.placeholder-note{top:.65rem;left:.7rem;font-size:.48rem}.identity-type{font-size:clamp(5rem,23vw,8rem)}.package-box--back{left:12%}.package-box--front{right:12%}.about-section{grid-template-columns:1fr;gap:2rem;padding-top:4.5rem;padding-bottom:4.5rem}.about-visual{min-height:min(87vw,25rem);order:2}.about-copy{padding-block:0}.about-copy h2{font-size:clamp(2.75rem,11vw,4.1rem)}.contact-section{min-height:auto;grid-template-columns:1fr;padding-block:4rem}.contact-decoration{min-height:11rem;grid-row:2}.contact-copy{padding-block:0}.contact-copy h2{font-size:clamp(3.3rem,13vw,5rem)}.contact-orbit{width:13rem}.contact-orbit--inner{width:10rem}.contact-star--one{top:17%;left:27%}.contact-star--two{right:24%;bottom:15%}.site-footer{grid-template-columns:1fr auto;gap:.4rem 1rem;padding-block:1rem}.footer-identity{grid-column:1;grid-row:1}.footer-nav{grid-column:2;grid-row:1;gap:.9rem}.footer-nav a{font-size:.68rem}.social-placeholders{grid-column:1 / -1;grid-row:2;justify-content:flex-start}.footer-note{grid-column:1 / -1;grid-row:3;padding:0}}.skills-section{padding-top:clamp(4.5rem,9vw,8rem);padding-bottom:clamp(4rem,8vw,7rem);border-top:1px solid var(--color-rule)}.skills-heading{text-align:center}.skills-heading .eyebrow{justify-content:center}.skills-heading h2{margin:0;font-family:var(--font-editorial);font-size:clamp(2.8rem,6vw,5.3rem);font-weight:400;letter-spacing:-.065em;line-height:.98}.skills-heading h2 em{color:#80628b;font-weight:400}.skills-showcase{--skills-card-width: clamp(14rem, 25vw, 18rem);--skills-side-offset: 18rem;min-height:35rem;display:grid;place-items:center;position:relative;perspective:1400px;isolation:isolate}.skill-card{width:var(--skills-card-width);aspect-ratio:.7;position:absolute;top:50%;left:50%;padding:0;border:1px solid var(--color-ink);border-radius:3px;background:var(--color-ivory);box-shadow:0 .7rem 1.8rem #35293a29,inset 0 0 0 .28rem var(--color-paper);color:var(--color-ink);text-align:left}.skill-card-center{z-index:4;overflow:visible;border:0;border-radius:3px;background:transparent;box-shadow:none;cursor:pointer;transform:translate(-50%,-50%);transform-style:preserve-3d;transition:transform .74s cubic-bezier(.22,1,.36,1)}.skills-showcase[data-expanded=true] .skill-card-center{transform:translate(-50%,-50%) rotateY(180deg)}.skill-card-face{display:flex;flex-direction:column;position:absolute;inset:.6rem;overflow:hidden;border:1px solid rgba(53,41,58,.2);backface-visibility:hidden;-webkit-backface-visibility:hidden}.skill-card-center .skill-card-face{inset:0;border:1px solid var(--color-ink);border-radius:3px;box-shadow:0 .7rem 1.8rem #35293a29,inset 0 0 0 .28rem var(--color-paper)}.skill-card-back{align-items:center;justify-content:space-between;padding:1.2rem .9rem 1rem;background:var(--color-ivory);text-align:center;transform:rotateY(0)}.skill-card-back:before,.skill-card-back:after{position:absolute;content:"";pointer-events:none}.skill-card-back:before{inset:.45rem;border:1px solid var(--color-sakura)}.skill-card-back:after{width:1rem;height:1rem;top:.55rem;right:.55rem;background:var(--color-lilac);clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%)}.skill-back-kicker,.skill-back-instruction{position:relative;z-index:1;color:var(--color-muted);font-size:.64rem;letter-spacing:.1em;text-transform:uppercase}.skill-back-emblem{width:7rem;aspect-ratio:1;display:grid;place-items:center;position:relative;color:var(--color-accent-ink)}.skill-back-emblem b{position:relative;z-index:1;color:var(--color-sakura);font-size:2.4rem}.skill-back-orbit{position:absolute;inset:.35rem 1rem;border:1px solid var(--color-lilac);border-radius:50%;transform:rotate(34deg)}.skill-back-orbit--two{inset:.35rem 1rem;border-color:var(--color-botanical);transform:rotate(-34deg)}.skill-back-wordmark{position:relative;z-index:1;font-family:var(--font-editorial);font-size:clamp(1.7rem,3vw,2.35rem);letter-spacing:-.04em;line-height:.95}.skill-back-wordmark em{color:var(--color-accent-ink);font-weight:400}.skill-back-instruction{padding:.5rem .6rem;border-top:1px solid var(--color-rule);text-transform:none;letter-spacing:.02em}.skill-back-instruction b{padding-left:.2rem;color:var(--color-accent-ink)}.skill-card-front{padding:.9rem;background:var(--color-paper);transform:rotateY(180deg)}.skill-card-title{margin:0 0 .7rem;font-family:var(--font-editorial);font-size:clamp(1.25rem,2vw,1.65rem);font-weight:400;letter-spacing:-.035em;line-height:1.05}.skill-artwork-frame{width:100%;min-height:0;flex:1;aspect-ratio:4 / 5;position:relative;overflow:hidden;border:1px solid rgba(53,41,58,.14);background:var(--color-lilac)}.skill-artwork-fallback{display:grid;place-content:center;justify-items:center;gap:.7rem;position:absolute;inset:0;background:var(--color-lilac);color:var(--color-ink)}.skill-artwork-fallback:before,.skill-artwork-fallback:after{width:68%;aspect-ratio:1;position:absolute;border:1px solid rgba(53,41,58,.35);border-radius:50%;content:""}.skill-artwork-fallback:after{width:44%;border-color:var(--color-sakura)}.skill-artwork-fallback b,.skill-artwork-fallback small{position:relative;z-index:1}.skill-artwork-fallback b{color:var(--color-sakura);font-size:2rem}.skill-artwork-fallback small{padding:.3rem .45rem;background:var(--color-ivory);font-size:.58rem}.skill-card-artwork{width:100%;height:100%;position:absolute;inset:0;display:block;object-fit:cover}.skill-card-description{margin:.7rem 0 0;color:var(--color-muted);font-size:.73rem;line-height:1.45}.skill-card-footer{display:flex;justify-content:space-between;margin-top:.8rem;padding-top:.45rem;border-top:1px solid var(--color-rule);color:var(--color-muted);font-size:.58rem;letter-spacing:.1em;text-transform:uppercase}.skill-card-footer i{color:var(--color-sakura);font-style:normal}.skill-card-side{z-index:2;opacity:1;pointer-events:none;transform:translate(-50%,-50%) scale(.92);transition:transform .83s cubic-bezier(.22,1,.36,1),box-shadow .32s ease}.skill-side-flipper{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .79s cubic-bezier(.22,1,.36,1)}.skill-side-live-face{position:absolute;inset:0;transform-style:preserve-3d}.skills-showcase[data-expanded=true] .skill-side-flipper{transform:rotateY(180deg)}.skill-side-back{align-items:center;justify-content:space-between;padding:1.5rem 1rem;background:var(--color-botanical);text-align:center}.skill-side-back--illustration{background:var(--color-sakura)}.skill-side-back:before{position:absolute;inset:.5rem;border:1px solid rgba(53,41,58,.44);content:""}.skill-side-back-mark{position:relative;z-index:1;color:var(--color-ink);font-size:2.4rem}.skill-side-back-name{position:relative;z-index:1;font-family:var(--font-editorial);font-size:1.8rem;line-height:1}.skill-side-back-name em{color:var(--color-accent-ink);font-weight:400}.skill-side-back-index{position:relative;z-index:1;padding-top:.6rem;border-top:1px solid rgba(53,41,58,.3);font-size:.58rem;letter-spacing:.1em;text-transform:uppercase}.skill-card--left{--side-tilt: -7deg}.skill-card--right{--side-tilt: 7deg}.skills-showcase[data-expanded=true] .skill-card-side{pointer-events:auto}.skills-showcase[data-expanded=true] .skill-card--left{transform:translate(calc(-50% - var(--skills-side-offset)),-50%) rotate(var(--side-tilt))}.skills-showcase[data-expanded=true] .skill-card--right{transform:translate(calc(-50% + var(--skills-side-offset)),-50%) rotate(var(--side-tilt))}.skill-showcase-close{width:2.75rem;height:2.75rem;display:grid;place-items:center;position:absolute;z-index:6;top:1.2rem;right:1.2rem;border:1px solid var(--color-rule);background:var(--color-paper);color:var(--color-ink);cursor:pointer;transition:background var(--duration-quick) ease,transform var(--duration-quick) ease}.skill-showcase-close:hover{background:var(--color-sakura);transform:rotate(8deg)}.skill-showcase-close span{font-size:1.65rem;line-height:1}@media(max-width:900px){.skills-showcase{--skills-card-width: clamp(13rem, 29vw, 16rem);--skills-side-offset: clamp(12.5rem, 30vw, 15rem)}}@media(max-width:650px){.skills-section{padding-top:4rem;padding-bottom:3.5rem}.skills-heading h2{font-size:clamp(2.7rem,10vw,4rem)}.skills-showcase{--skills-card-width: min(42vw, 10.5rem);--skills-mobile-side-offset: clamp(5.25rem, 22vw, 6rem);min-height:38rem}.skills-showcase[data-expanded=true] .skill-card-center{transform:translate(-50%,calc(-50% - 8rem)) rotateY(180deg)}.skills-showcase[data-expanded=true] .skill-card--left{transform:translate(calc(-50% - var(--skills-mobile-side-offset)),calc(-50% + 8.4rem)) rotate(-5deg)}.skills-showcase[data-expanded=true] .skill-card--right{transform:translate(calc(-50% + var(--skills-mobile-side-offset)),calc(-50% + 8.4rem)) rotate(5deg)}.skill-card-face{inset:.45rem}.skill-card-front{padding:.7rem}.skill-card-title{font-size:1.28rem}.skill-card-description{font-size:.66rem}.skill-card-back{padding:1rem .55rem .7rem}.skill-back-kicker,.skill-back-instruction{font-size:.55rem}.skill-back-emblem{width:5.5rem}.skill-back-wordmark{font-size:1.7rem}.skill-showcase-close{top:.5rem;right:.5rem}}@media(prefers-reduced-motion:reduce){.skill-card-center,.skill-side-flipper,.skill-card-side,.skill-showcase-close{transition:none}.skills-showcase[data-expanded=true] .skill-card-center{transform:translate(-50%,-50%)}.skills-showcase[data-expanded=true] .skill-card-center .skill-card-back,.skills-showcase[data-expanded=true] .skill-card--left .skill-side-back,.skills-showcase[data-expanded=true] .skill-card--right .skill-side-back{visibility:hidden}.skills-showcase[data-expanded=true] .skill-card-center .skill-card-front,.skills-showcase[data-expanded=true] .skill-side-flipper,.skills-showcase[data-expanded=true] .skill-card-side .skill-card-front{transform:none}}.sakura-rain{position:fixed;z-index:0;inset:0;overflow:hidden;pointer-events:none;user-select:none}.portfolio-site{position:relative;z-index:1;overflow-x:clip;overflow-y:visible}.sakura-petal{width:var(--petal-size, .8rem);height:calc(var(--petal-size, .8rem) * 1.42);position:absolute;top:-12vh;left:var(--petal-left);border-radius:92% 8% 88% 12%;background:var(--color-sakura);opacity:var(--petal-opacity, .42);transform:rotate(-35deg);animation:sakura-fall var(--fall-duration, 20s) var(--fall-delay, 0s) linear infinite}.sakura-petal--one{--petal-left: 8%;--petal-size: .55rem;--petal-opacity: .34;--fall-duration: 23s;--fall-delay: -5s;--drift-x: 7vw}.sakura-petal--two{--petal-left: 21%;--petal-size: .8rem;--petal-opacity: .28;--fall-duration: 29s;--fall-delay: -19s;--drift-x: -5vw}.sakura-petal--three{--petal-left: 36%;--petal-size: .65rem;--petal-opacity: .38;--fall-duration: 25s;--fall-delay: -11s;--drift-x: 8vw}.sakura-petal--four{--petal-left: 52%;--petal-size: .9rem;--petal-opacity: .25;--fall-duration: 31s;--fall-delay: -24s;--drift-x: -6vw}.sakura-petal--five{--petal-left: 68%;--petal-size: .58rem;--petal-opacity: .4;--fall-duration: 22s;--fall-delay: -9s;--drift-x: 5vw}.sakura-petal--six{--petal-left: 82%;--petal-size: .76rem;--petal-opacity: .31;--fall-duration: 28s;--fall-delay: -16s;--drift-x: -7vw}.sakura-petal--seven{--petal-left: 94%;--petal-size: .5rem;--petal-opacity: .36;--fall-duration: 26s;--fall-delay: -21s;--drift-x: -5vw}.sakura-petal--eight{--petal-left: 3%;--petal-size: .72rem;--petal-opacity: .29;--fall-duration: 27s;--fall-delay: -13s;--drift-x: 6vw}.sakura-petal--nine{--petal-left: 14%;--petal-size: .48rem;--petal-opacity: .39;--fall-duration: 21s;--fall-delay: -18s;--drift-x: -4vw}.sakura-petal--ten{--petal-left: 25%;--petal-size: .92rem;--petal-opacity: .26;--fall-duration: 32s;--fall-delay: -7s;--drift-x: 7vw}.sakura-petal--eleven{--petal-left: 30%;--petal-size: .58rem;--petal-opacity: .35;--fall-duration: 24s;--fall-delay: -22s;--drift-x: -6vw}.sakura-petal--twelve{--petal-left: 42%;--petal-size: .68rem;--petal-opacity: .31;--fall-duration: 28s;--fall-delay: -15s;--drift-x: 5vw}.sakura-petal--thirteen{--petal-left: 47%;--petal-size: .52rem;--petal-opacity: .4;--fall-duration: 22s;--fall-delay: -3s;--drift-x: -7vw}.sakura-petal--fourteen{--petal-left: 58%;--petal-size: .84rem;--petal-opacity: .27;--fall-duration: 30s;--fall-delay: -20s;--drift-x: 6vw}.sakura-petal--fifteen{--petal-left: 63%;--petal-size: .56rem;--petal-opacity: .37;--fall-duration: 25s;--fall-delay: -12s;--drift-x: -5vw}.sakura-petal--sixteen{--petal-left: 74%;--petal-size: .74rem;--petal-opacity: .3;--fall-duration: 29s;--fall-delay: -26s;--drift-x: 8vw}.sakura-petal--seventeen{--petal-left: 77%;--petal-size: .5rem;--petal-opacity: .4;--fall-duration: 23s;--fall-delay: -8s;--drift-x: -4vw}.sakura-petal--eighteen{--petal-left: 88%;--petal-size: .64rem;--petal-opacity: .33;--fall-duration: 27s;--fall-delay: -17s;--drift-x: 5vw}@keyframes sakura-fall{0%{transform:translate3d(0,-4vh,0) rotate(-35deg)}28%{transform:translate3d(calc(var(--drift-x) * .4),29vh,0) rotate(100deg)}67%{transform:translate3d(calc(var(--drift-x) * -.2),75vh,0) rotate(250deg)}to{transform:translate3d(var(--drift-x),116vh,0) rotate(490deg)}}@media(prefers-reduced-motion:reduce){.sakura-petal{display:none;animation:none}}
