@layer properties;@font-face{font-family:Archivo;font-style:italic;font-weight:100 900;font-display:swap;src:url("./media/archivo-latin-100900-italic-5XIJHIGQ.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-display:swap;src:url("./media/archivo-latin-100900-FAU44YVK.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:italic;font-weight:400;font-display:swap;src:url("./media/fraunces-latin-400-italic-F5UUEVSC.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:italic;font-weight:500;font-display:swap;src:url("./media/fraunces-latin-500-italic-F5UUEVSC.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url("./media/fraunces-latin-400-5YJQ66G4.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url("./media/fraunces-latin-500-5YJQ66G4.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url("./media/fraunces-latin-600-5YJQ66G4.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-weight:700;font-display:swap;src:url("./media/fraunces-latin-700-5YJQ66G4.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist;font-style:normal;font-weight:300;font-display:swap;src:url("./media/geist-latin-300-T72VVCUW.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist;font-style:normal;font-weight:400;font-display:swap;src:url("./media/geist-latin-400-T72VVCUW.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist;font-style:normal;font-weight:500;font-display:swap;src:url("./media/geist-latin-500-T72VVCUW.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist;font-style:normal;font-weight:600;font-display:swap;src:url("./media/geist-latin-600-T72VVCUW.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist;font-style:normal;font-weight:700;font-display:swap;src:url("./media/geist-latin-700-T72VVCUW.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono;font-style:normal;font-weight:400;font-display:swap;src:url("./media/geist-mono-latin-400-CJNQKXUG.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono;font-style:normal;font-weight:500;font-display:swap;src:url("./media/geist-mono-latin-500-CJNQKXUG.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono;font-style:normal;font-weight:600;font-display:swap;src:url("./media/geist-mono-latin-600-CJNQKXUG.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@layer theme,base,components,utilities;@layer theme{:root,:host{--font-sans: "Geist", "Segoe UI", system-ui, sans-serif;--font-serif: "Fraunces", Georgia, serif;--font-mono: "Geist Mono", ui-monospace, monospace;--color-white: #fff;--spacing: .25rem;--container-7xl: 80rem;--default-transition-duration: .15s;--default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);--default-font-family: var(--font-sans);--default-mono-font-family: var(--font-mono);--font-display: "Archivo", "Geist", sans-serif}}@layer base{*,:after,:before,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;font-family:var(--default-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings, normal);font-variation-settings:var(--default-font-variation-settings, normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings, normal);font-variation-settings:var(--default-mono-font-variation-settings, normal);font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea,::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;border-radius:0;background-color:transparent;opacity:1}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px){::placeholder{color:currentcolor}@supports (color: color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]),::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.sticky{position:sticky}.container{width:100%}@media(width>=40rem){.container{max-width:40rem}}@media(width>=48rem){.container{max-width:48rem}}@media(width>=64rem){.container{max-width:64rem}}@media(width>=80rem){.container{max-width:80rem}}@media(width>=96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.max-w-7xl{max-width:var(--container-7xl)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.overflow-hidden{overflow:hidden}.border{border-style:var(--tw-border-style);border-width:1px}.px-5{padding-inline:calc(var(--spacing) * 5)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function));transition-duration:var(--tw-duration, var(--default-transition-duration))}@media(width>=40rem){.sm\:px-8{padding-inline:calc(var(--spacing) * 8)}}}:root{--cream: #f5f0e7;--paper: #fffdf8;--ink: #151515;--terracotta: #d95f3f;--coral: #f28b68;--butter: #f3d77a;--cobalt: #4057d6;--sage: #a8b89f;--muted: #716c64;--line: #d8d0c3;--tab-butter: #f3d77a;--tab-sage: #b8c9ae;--tab-blue: #afc4e8;--tab-coral: #f2a58b;--tab-lavender: #c9b9d9;--tab-peach: #f4c6a8;--tab-terracotta: #c95a3d;--color-bg: var(--cream);--color-surface: #ebe7de;--color-surface-2: #e3ded2;--color-text: var(--ink);--color-muted: var(--muted);--color-border: var(--line);--color-accent: var(--terracotta);--color-white: var(--paper);--radius: 18px;--shadow-card: 0 1px 2px rgba(21, 21, 21, .04), 0 14px 36px rgba(21, 21, 21, .07);--shadow-sheet: 0 1px 2px rgba(21, 21, 21, .03), 0 20px 48px rgba(21, 21, 21, .07)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--color-bg)}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{font-family:var(--font-display);font-weight:800;line-height:1.05;letter-spacing:-.02em;margin:0}p{margin:0}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}button{font-family:inherit}ul{margin:0;padding:0;list-style:none}::selection{background:var(--color-accent);color:var(--color-white)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:4px}.shell{width:100%;max-width:1280px;margin-inline:auto;padding-inline:clamp(20px,4vw,56px)}.sheet-section{position:relative;padding-block:clamp(28px,3.5vw,48px);scroll-margin-top:84px}.sheet-section+.sheet-section{margin-top:-clamp(14px,2vw,26px)}.sheet-wrap{position:relative;max-width:1280px;margin-inline:auto;padding-inline:clamp(16px,3.5vw,48px)}.sheet{position:relative;background:var(--paper);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow-sheet)}.sheet-inner{position:relative;z-index:1;padding-block:clamp(24px,3vw,40px)}.sheet-tab{position:absolute;top:0;left:clamp(20px,4vw,56px);transform:translateY(-54%);z-index:2;display:inline-flex;align-items:baseline;gap:8px;padding:8px 18px;border-radius:12px;background:var(--tab-butter);border:1px solid rgba(21,21,21,.16);box-shadow:0 8px 20px #1515151f;font-family:var(--font-mono);font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);white-space:nowrap}.sheet-tab__num{font-weight:700;opacity:.65;font-size:.68rem}.sheet-tab__label{font-weight:700}.sheet-section--butter .sheet-tab{background:var(--tab-butter)}.sheet-section--sage .sheet-tab{background:var(--tab-sage)}.sheet-section--blue .sheet-tab{background:var(--tab-blue)}.sheet-section--coral .sheet-tab{background:var(--tab-coral)}.sheet-section--lavender .sheet-tab{background:var(--tab-lavender)}.sheet-section--peach .sheet-tab{background:var(--tab-peach)}.sheet-section--terracotta .sheet-tab{background:var(--tab-terracotta);color:var(--paper);border-color:#fffdf859}.sheet-section:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;background:radial-gradient(52% 64% at 86% 6%,var(--halo, transparent),transparent 68%);opacity:.55}.sheet-section--butter:before{--halo: rgba(243, 215, 122, .5)}.sheet-section--peach:before{--halo: rgba(244, 198, 168, .55)}.sheet-section--sage:before{--halo: rgba(184, 201, 174, .55)}.sheet-section--blue:before{--halo: rgba(175, 196, 232, .5)}.sheet-section--lavender:before{--halo: rgba(201, 185, 217, .5)}.sheet-section--coral:before{--halo: rgba(242, 165, 139, .5)}.site-main{background:var(--color-bg)}@media(prefers-reduced-motion:reduce){html.js-reveal [appReveal]{opacity:1;transform:none}}html.js-reveal [appReveal]{opacity:0;transform:translateY(20px)}.site-header{position:sticky;top:0;z-index:50;background:#f5f2ebf7;border-bottom:1px solid var(--color-border)}.nav-shell{display:flex;align-items:center;gap:24px;min-height:68px}.brand-mark{font-family:var(--font-display);font-weight:900;font-size:1.15rem;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap}.brand-mark:hover{color:var(--color-accent)}.site-nav{display:flex;align-items:center;gap:clamp(10px,1.6vw,22px);margin-left:auto}.site-nav a{display:inline-flex;align-items:baseline;gap:6px;font-size:.84rem;font-weight:600;letter-spacing:.02em;color:var(--color-text);padding-block:4px;border-bottom:1px solid transparent;transition:color .2s ease-out,border-color .2s ease-out}.nav-num{font-family:var(--font-mono);font-size:.62rem;letter-spacing:.08em;color:var(--color-accent);opacity:.9}.site-nav a:hover,.site-nav a.is-active{color:var(--color-accent);border-color:var(--color-accent)}.nav-cv{display:inline-flex;align-items:center;gap:7px;font-size:.84rem;font-weight:600;letter-spacing:.02em;color:var(--color-text);padding:8px 14px;border:1px solid var(--color-border);border-radius:999px;transition:color .2s ease-out,border-color .2s ease-out,background .2s ease-out,transform .2s ease-out}.nav-cv svg{width:14px;height:14px;stroke:currentColor;stroke-width:2;fill:none}.nav-cv:hover{color:var(--color-accent);border-color:var(--color-accent);transform:translateY(-1px)}.nav-cta{display:inline-flex;align-items:center;gap:8px;background:var(--color-text);color:var(--color-white);border:none;border-radius:999px;padding:10px 20px;font-size:.88rem;font-weight:600;cursor:pointer;transition:background .2s ease-out,transform .2s ease-out}.nav-cta:hover{background:var(--color-accent);transform:translateY(-1px)}.nav-cta svg{width:14px;height:14px;stroke:currentColor;stroke-width:2;fill:none}.edit-toggle{display:inline-flex;align-items:center;gap:8px;background:transparent;border:1px solid var(--color-border);border-radius:999px;padding:9px 16px;font-size:.85rem;font-weight:600;cursor:pointer;color:var(--color-text);transition:border-color .2s ease-out,color .2s ease-out}.edit-toggle:hover,.edit-toggle[aria-pressed=true]{border-color:var(--color-accent);color:var(--color-accent)}.edit-toggle svg{width:14px;height:14px;stroke:currentColor;stroke-width:1.8;fill:none}.menu-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;background:transparent;border:1px solid var(--color-border);border-radius:999px;cursor:pointer;padding:0 10px}.menu-toggle span{display:block;height:2px;background:var(--color-text);transition:transform .2s ease-out,opacity .2s ease-out}.skip-link{position:absolute;left:16px;top:-60px;z-index:100;background:var(--color-text);color:var(--color-white);padding:10px 18px;border-radius:8px;font-weight:600;transition:top .2s ease-out}.skip-link:focus-visible{top:12px}.hero-section{position:relative;padding-top:clamp(48px,7vw,96px);padding-bottom:clamp(64px,8vw,110px);overflow:hidden}.sheet-section--butter.sheet-section{margin-top:0}.hero-backdrop{position:absolute;inset:-150px 0;background:radial-gradient(54% 46% at 80% 14%,rgba(217,95,63,.2),transparent 62%),radial-gradient(42% 38% at 8% 74%,rgba(244,162,97,.16),transparent 60%),radial-gradient(36% 34% at 42% 44%,rgba(243,215,122,.18),transparent 62%),linear-gradient(180deg,rgba(255,246,235,.4) 0%,transparent 40%);pointer-events:none}.hero-shapes{position:absolute;inset:0;pointer-events:none;z-index:0}.hero-shape{position:absolute;display:block}.hero-shape--arc{width:clamp(200px,24vw,340px);aspect-ratio:1;right:clamp(-70px,-4vw,-20px);top:6%;border:clamp(16px,2.2vw,26px) solid var(--terracotta);border-right-color:transparent;border-bottom-color:transparent;border-radius:50%;transform:rotate(24deg);opacity:.8}.hero-shape--disc{width:clamp(110px,13vw,180px);aspect-ratio:1;left:clamp(-40px,-3vw,-10px);bottom:8%;border-radius:50%;background:var(--butter);opacity:.65}.hero-shape--dot{width:18px;height:18px;right:16%;top:42%;border-radius:50%;background:var(--cobalt);opacity:.85}.hero-shape--ring{width:clamp(90px,10vw,140px);aspect-ratio:1;right:24%;bottom:20%;border:2px solid var(--cobalt);border-radius:50%;opacity:.35}.hero-shape--star{left:clamp(-6px,2vw,26px);top:32%;font-family:var(--font-serif);font-size:clamp(1.6rem,2.6vw,2.4rem);line-height:1;color:var(--terracotta);animation:star-twirl 9s ease-in-out infinite}@keyframes halo-drift{0%,to{transform:translate(0);opacity:.55}50%{transform:translate(14px,-26px);opacity:.85}}@keyframes float-arc{0%,to{transform:rotate(22deg) translateY(0)}50%{transform:rotate(34deg) translateY(-28px)}}@keyframes float-disc{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(24px) rotate(8deg)}}@keyframes dot-breathe{0%,to{opacity:.9;transform:scale(1)}50%{opacity:.3;transform:scale(.6)}}@keyframes ring-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes star-twirl{0%,to{transform:translateY(0) rotate(-14deg) scale(1);opacity:.75}50%{transform:translateY(-18px) rotate(26deg) scale(1.18);opacity:1}}@keyframes float-star{0%,to{transform:translateY(0) rotate(-8deg);opacity:.07}50%{transform:translateY(-22px) rotate(10deg);opacity:.13}}@keyframes spark-twinkle{0%,to{transform:translateY(0) scale(1);opacity:0}35%{opacity:.9}55%{opacity:.5}70%{transform:translateY(-26px) scale(1.25);opacity:0}}@keyframes spark-rise{0%,to{transform:translateY(0)}50%{transform:translateY(-14px)}}@keyframes backdrop-breathe{0%,to{opacity:1}50%{opacity:.6}}.sheet-section:before{animation:halo-drift 10s ease-in-out infinite}.hero-shape--arc{animation:float-arc 8s ease-in-out infinite}.hero-shape--disc{animation:float-disc 7s ease-in-out infinite}.hero-shape--dot{animation:dot-breathe 4.5s ease-in-out infinite}.hero-shape--ring{animation:ring-spin 22s linear infinite}.hero-shape--star{animation:star-twirl 9s ease-in-out infinite}.hero-sparkles{position:absolute;inset:0;pointer-events:none;z-index:0}.hero-spark{position:absolute;width:8px;height:8px;border-radius:50%;animation:spark-twinkle 5s ease-in-out infinite,spark-rise 3.5s ease-in-out infinite}.hero-spark:nth-child(1){left:8%;top:16%;background:var(--terracotta);animation-delay:0s,.6s}.hero-spark:nth-child(2){left:30%;top:8%;width:6px;height:6px;background:var(--butter);animation-delay:1.2s,2.1s}.hero-spark:nth-child(3){right:12%;top:24%;width:7px;height:7px;background:var(--cobalt);animation-delay:2.4s,1.4s}.hero-spark:nth-child(4){right:6%;bottom:30%;background:var(--coral);animation-delay:3.6s,3.2s}.hero-spark:nth-child(5){left:16%;bottom:14%;width:6px;height:6px;background:var(--sage);animation-delay:4.8s,2.8s}.hero-spark:nth-child(6){right:34%;bottom:10%;width:9px;height:9px;background:var(--butter);animation-delay:5.8s,4.2s}.hero-backdrop{animation:backdrop-breathe 6.5s ease-in-out infinite}.section-sparkles{position:absolute;inset:0;pointer-events:none;z-index:0;overflow:hidden;border-radius:inherit}.section-spark{position:absolute;width:7px;height:7px;border-radius:50%;animation:spark-twinkle 6s ease-in-out infinite,spark-rise 4s ease-in-out infinite}.section-spark:nth-child(1){left:5%;top:12%;width:6px;height:6px;background:var(--tab-lavender);animation-delay:0s,.4s}.section-spark:nth-child(2){left:26%;top:6%;width:9px;height:9px;background:var(--tab-coral);animation-delay:.9s,1.6s}.section-spark:nth-child(3){right:8%;top:10%;width:5px;height:5px;background:var(--tab-blue);animation-delay:1.8s,.9s}.section-spark:nth-child(4){right:22%;top:28%;width:8px;height:8px;background:var(--butter);animation-delay:2.7s,2.4s}.section-spark:nth-child(5){left:8%;bottom:22%;width:6px;height:6px;background:var(--tab-sage);animation-delay:3.6s,3.1s}.section-spark:nth-child(6){left:34%;bottom:12%;width:5px;height:5px;background:var(--terracotta);animation-delay:4.5s,1.2s}.section-spark:nth-child(7){right:14%;bottom:18%;width:8px;height:8px;background:var(--tab-lavender);animation-delay:5.4s,2.8s}.section-spark:nth-child(8){right:40%;bottom:30%;width:6px;height:6px;background:var(--tab-blue);animation-delay:6.3s,3.6s}.hero-section:hover .hero-spark,.sheet-section:hover .section-spark{scale:1.7;filter:drop-shadow(0 0 7px rgba(255,253,248,.9));transition:scale .35s ease-out,filter .35s ease-out}.sheet-section:not(.hero-section):after{content:"\2733";position:absolute;top:clamp(88px,13vw,170px);right:clamp(6px,1.4vw,20px);z-index:0;pointer-events:none;font-family:var(--font-serif);font-size:clamp(1.4rem,2.4vw,2rem);line-height:1;color:var(--ink);border-radius:50%;box-shadow:2.2em .4em #d95f3f4d,-1.6em .9em #f3d77a73,.8em -1.2em #4057d638,-.4em 1.6em #a8b89f80;animation:float-star 6.5s ease-in-out infinite}.hero-inner{position:relative;z-index:1;padding-block:clamp(40px,5.5vw,76px)}.hero-grid-lines{position:absolute;inset:0;background-image:linear-gradient(to bottom,var(--color-border) 1px,transparent 1px);background-size:100% clamp(96px,12vw,160px);opacity:.22;-webkit-mask-image:linear-gradient(to bottom,black 0%,black 26%,transparent 60%);mask-image:linear-gradient(to bottom,black 0%,black 26%,transparent 60%);pointer-events:none}.hero-shell{position:relative}.hero-topline{display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--color-border);padding-bottom:20px;margin-bottom:clamp(40px,6vw,72px)}.hero-status{display:flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted)}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--color-accent);flex-shrink:0}.status-separator{color:var(--color-border)}.hero-portrait{width:80px;height:80px;border-radius:50%;overflow:hidden;border:1px solid var(--color-border);background:var(--color-surface)}.hero-portrait img{width:100%;height:100%;object-fit:cover}.hero-heading,.hero-role-head{position:relative}.hero-role-display{position:relative;font-family:var(--font-display);font-size:clamp(2.1rem,4.6vw,4.5rem);font-weight:900;line-height:.98;letter-spacing:-.03em;text-transform:uppercase;text-wrap:balance;max-width:none}.hero-role-head:before{content:"";position:absolute;left:0;right:0;bottom:.1em;height:.3em;border-radius:3px;background:var(--butter);opacity:.6}.hero-role__sub{display:flex;flex-wrap:wrap;gap:6px 10px;margin-top:16px;font-family:var(--font-mono);font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;color:var(--color-muted)}.hero-role__sep{color:var(--color-accent)}.hero-name-wrap{position:relative;margin-top:clamp(28px,4vw,44px)}.hero-name{font-size:clamp(1.25rem,2.3vw,1.95rem);font-weight:800;line-height:1.15;letter-spacing:-.01em;text-transform:uppercase;max-width:none}.hero-name__line{display:block}.hero-name__line--accent{padding-left:clamp(0px,2vw,30px)}.hero-name__line--accent:after{content:"";display:inline-block;width:.1em;height:.1em;margin-left:.12em;border-radius:50%;background:var(--color-accent);vertical-align:.3em}.hero-lede-wrap{position:absolute;right:0;bottom:-.05em;transform:translateY(50%);text-align:right;max-width:52ch}.hero-lede--band{display:inline-block;font-family:var(--font-serif);font-style:italic;font-weight:400;font-size:clamp(.95rem,1.4vw,1.15rem);line-height:1.35;color:var(--ink);background:var(--butter);border-radius:4px;padding:.12em .6em .18em}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:clamp(32px,5vw,48px)}.button{display:inline-flex;align-items:center;gap:10px;border-radius:999px;padding:14px 26px;font-size:.95rem;font-weight:600;cursor:pointer;border:1px solid transparent;transition:background .2s ease-out,color .2s ease-out,border-color .2s ease-out,transform .2s ease-out}.button svg{width:15px;height:15px;stroke:currentColor;stroke-width:2;fill:none}.button--primary{background:var(--color-text);color:var(--color-white)}.button--primary:hover{background:var(--color-accent);transform:translateY(-2px)}.button--ghost{background:transparent;border-color:var(--color-text);color:var(--color-text)}.button--ghost:hover{background:var(--color-text);color:var(--color-white);transform:translateY(-2px)}.hero-showcase{margin-top:clamp(56px,8vw,88px);border-top:1px solid var(--color-border);padding-top:clamp(28px,4vw,40px)}.showcase-frame{display:grid;grid-template-columns:1fr minmax(0,620px) 1fr;gap:clamp(20px,3vw,40px);align-items:start}.showcase-topline,.showcase-bottomline{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-muted)}.showcase-topline{grid-column:1 / -1;border-bottom:1px solid var(--color-border);padding-bottom:12px}.showcase-media{grid-column:2;grid-row:2}.showcase-demo{position:relative;background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:0 14px 30px #15151512;padding:clamp(20px,3vw,32px)}.showcase-demo:before{content:"";position:absolute;top:-1px;left:clamp(20px,3vw,32px);width:48px;height:3px;border-radius:0 0 6px 6px;background:var(--color-accent)}.demo-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.demo-brand,.demo-status{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted);display:inline-flex;align-items:center;gap:7px}.demo-brand i{width:9px;height:9px;border-radius:50%;background:var(--color-accent);display:inline-block}.demo-status i{width:7px;height:7px;border-radius:50%;background:#34a853;display:inline-block}.demo-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px}.demo-kpis>div{border:1px solid var(--color-border);border-radius:12px;padding:12px;background:var(--color-bg)}.demo-kpis span{display:block;font-family:var(--font-mono);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted)}.demo-kpis strong{display:block;font-family:var(--font-display);font-size:1.35rem;font-weight:800;margin-top:4px}.demo-kpis em{font-family:var(--font-mono);font-style:normal;font-size:.7rem;color:var(--color-accent)}.demo-panel{border:1px solid var(--color-border);border-radius:12px;padding:16px;background:var(--color-bg)}.demo-panel__head{display:flex;justify-content:center;gap:10px;margin-bottom:14px}.skeleton{display:block;background:var(--color-surface-2);border-radius:6px}.skeleton--w40{width:40%;height:12px}.skeleton--w20{width:20%;height:12px}.skeleton--w35{width:35%;height:9px}.skeleton--w45{width:45%;height:9px}.skeleton--w55{width:55%;height:9px}.skeleton--w60{width:60%;height:9px}.skeleton--w70{width:70%;height:9px}.skeleton--w90{width:90%;height:9px}.skeleton--chart{width:100%;height:64px;margin-bottom:14px}.demo-row{display:flex;justify-content:center;gap:10px;margin-top:8px}.demo-row span{height:9px}.showcase-bottomline{grid-column:1 / -1;grid-row:3;border-top:1px solid var(--color-border);padding-top:12px}.showcase-signal{display:inline-flex;align-items:center;gap:7px}.showcase-signal i{width:7px;height:7px;border-radius:50%;background:var(--color-accent);display:inline-block}.hero-catchphrase{grid-column:2;grid-row:2;align-self:end;justify-self:end;z-index:2;position:relative;width:clamp(170px,17vw,220px);translate:calc(100% - 28px) 0;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);box-shadow:0 14px 30px #1515151a;padding:clamp(14px,2vw,20px);text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;transition:translate .3s ease-out,box-shadow .3s ease-out}.hero-catchphrase:before{content:"";position:absolute;top:-1px;left:clamp(20px,3vw,28px);width:36px;height:3px;border-radius:0 0 6px 6px;background:var(--color-accent);transition:width .3s ease-out,height .3s ease-out,background .3s ease-out}.hero-catchphrase:hover{translate:calc(100% - 28px) 0 -5px;box-shadow:0 20px 44px #15151529}.hero-catchphrase:hover:before{width:64px;height:4px;background:#c84b31}.hero-catchphrase__label{display:block;font-family:var(--font-mono);font-size:.62rem;letter-spacing:.14em;color:var(--color-accent);margin-bottom:4px}.hero-catchphrase p{font-family:var(--font-serif);font-style:italic;font-size:clamp(.95rem,1.5vw,1.2rem)}.hero-meta-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-white);margin-top:clamp(40px,6vw,64px);overflow:hidden}.hero-meta{padding:clamp(22px,3vw,32px)}.hero-meta+.hero-meta{border-left:1px solid var(--color-border)}.hero-meta strong{display:block;font-family:var(--font-display);font-weight:900;font-size:clamp(3.2rem,6.5vw,5.4rem);line-height:.95;letter-spacing:-.03em}.hero-meta strong sup{font-size:.45em;color:var(--color-accent);margin-left:2px}.hero-meta--terracotta strong{color:var(--terracotta)}.hero-meta--cobalt strong{color:var(--cobalt)}.hero-meta--sage strong{color:#5f7a55}.hero-meta span{display:block;margin-top:10px;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--color-muted)}.scroll-cue{position:absolute;left:50%;transform:translate(-50%);bottom:28px;display:flex;flex-direction:column;align-items:center;gap:8px;font-family:var(--font-mono);font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--color-muted);transition:color .2s ease-out}.scroll-cue:hover{color:var(--color-accent)}.scroll-cue__line{width:1px;height:34px;background:var(--color-border);overflow:hidden;position:relative}.scroll-cue__line:after{content:"";position:absolute;top:-100%;left:0;width:100%;height:100%;background:var(--color-accent);animation:cue-drop 2.4s ease-in-out infinite}@keyframes cue-drop{0%{top:-100%}55%{top:0}to{top:100%}}@media(prefers-reduced-motion:reduce){.scroll-cue__line:after{animation:none;top:0}.education-doc{transition:none}}.proof-label{font-family:var(--font-serif);font-style:italic;font-size:clamp(1.35rem,2.6vw,2rem);color:var(--ink);margin-bottom:clamp(24px,3.5vw,40px);max-width:24ch}.proof-label:before{content:"\2014  ";color:var(--color-accent)}.client-track{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--color-border);border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden}.client-logo-card{display:flex;align-items:center;justify-content:center;min-height:110px;padding:18px;background:var(--color-white);transition:background .2s ease-out}.client-logo-card:hover{background:var(--color-surface-2)}.client-logo-card img{max-height:40px;width:auto;object-fit:contain;filter:grayscale(1);opacity:.8;transition:filter .2s ease-out,opacity .2s ease-out}.client-logo-card:hover img{filter:grayscale(0);opacity:1}.client-wordmark{font-family:var(--font-display);font-weight:800;font-size:.88rem;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text)}.section-heading{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(20px,3vw,44px);align-items:end;margin-bottom:clamp(28px,3.5vw,44px)}.section-index{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--color-accent);margin-bottom:14px}.section-index--dark{color:var(--color-accent)}.section-heading h2{font-size:clamp(2.4rem,6vw,4.4rem);font-weight:900;text-transform:uppercase;letter-spacing:-.025em}.section-heading h2 span:last-child{color:var(--color-muted)}#experience .section-heading h2 span:last-child,#education .section-heading h2 span:last-child{display:block}.section-intro{font-size:clamp(1.05rem,1.6vw,1.25rem);line-height:1.6;color:var(--color-muted);max-width:46ch;align-self:center}.expertise-list{border-top:1px solid var(--color-border)}.expertise-block{display:grid;grid-template-columns:minmax(0,22%) minmax(0,1fr);gap:clamp(20px,3vw,40px);padding-block:clamp(22px,3vw,38px);border-bottom:1px solid var(--color-border)}.expertise-block__head{display:flex;flex-direction:column;align-items:flex-start;gap:6px;grid-column:1}.expertise-block>:not(.expertise-block__head){grid-column:2}.bento-number{font-family:var(--font-mono);font-size:.78rem;color:var(--color-accent)}.bento-label{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--color-muted)}.expertise-block h3{font-size:clamp(1.6rem,3vw,2.3rem);font-weight:900;text-transform:uppercase;letter-spacing:-.02em;margin-bottom:12px}.expertise-block>p{color:var(--color-muted);max-width:60ch;margin-bottom:14px}.bento-quote{font-family:var(--font-serif);font-style:italic;font-size:clamp(1.2rem,2vw,1.6rem);color:var(--color-text)!important;line-height:1.4;margin-bottom:14px!important}.expertise-list__items{display:flex;flex-direction:column;gap:8px;max-width:62ch}.expertise-list__items li{position:relative;padding-left:24px;font-size:1rem;line-height:1.5;transition:color .2s ease-out}.expertise-list__items li:before{content:"";position:absolute;left:2px;top:.62em;width:8px;height:8px;border-radius:50%;background:var(--color-accent);transition:transform .2s ease-out}.expertise-list__items li:hover{color:var(--color-accent)}.expertise-list__items li:hover:before{transform:scale(1.35)}.tech-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px}.tech-column__label{display:block;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--color-accent);margin-bottom:14px}.method-stat{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin-bottom:18px}.method-stat strong{font-family:var(--font-display);font-weight:900;font-size:clamp(2.6rem,5vw,3.8rem);letter-spacing:-.03em;line-height:1}.method-stat strong sup{font-size:.45em;color:var(--color-accent)}.method-stat span{font-family:var(--font-mono);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--color-muted);line-height:1.7;max-width:36ch}.experience-list{border-top:1px solid var(--color-border)}.work-card{display:grid;grid-template-columns:160px minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(16px,2.5vw,36px);padding-block:clamp(24px,3vw,40px);border-bottom:1px solid var(--color-border);transition:background .2s ease-out}.work-card:hover{background:#11111105}.work-index{font-family:var(--font-mono);font-size:.78rem;color:var(--color-accent);grid-column:1 / -1;margin-bottom:-8px}.work-period-col{font-family:var(--font-mono);font-size:.8rem;letter-spacing:.06em;color:var(--color-muted)}.work-location{display:block;margin-top:6px;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-muted);opacity:.75}.work-main h3{font-size:clamp(1.4rem,2.6vw,2rem);font-weight:900;letter-spacing:-.02em}.work-main h4{font-size:1.05rem;font-weight:600;margin-top:4px;color:var(--color-muted)}.company-link{display:inline-flex;align-items:center;gap:6px;color:var(--color-accent);border-bottom:1px solid transparent;transition:border-color .2s ease-out}.company-link:hover{border-color:var(--color-accent)}.company-link svg{width:13px;height:13px;stroke:currentColor;stroke-width:2;fill:none}.work-description{margin-top:14px;font-size:1.02rem}.work-details{margin-top:18px}.work-details__label{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--color-muted);margin-bottom:10px}.detail-list{display:flex;flex-direction:column;gap:8px}.detail-list li{position:relative;padding-left:18px;color:var(--color-muted);font-size:.96rem}.detail-list li:before{content:"";position:absolute;left:2px;top:.72em;width:6px;height:6px;border-radius:50%;background:var(--color-accent)}.work-side{display:flex;flex-direction:column;gap:18px;align-items:flex-start}.work-logo{max-height:30px;width:auto;object-fit:contain;filter:grayscale(1);opacity:.7}.tags{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.tag{display:inline-flex;align-items:baseline;white-space:nowrap;flex-shrink:0;font-family:var(--font-mono);font-size:.74rem;letter-spacing:.04em;color:var(--color-text);border:1px solid var(--color-border);border-radius:999px;padding:5px 12px;background:var(--color-white)}.education-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:clamp(32px,5vw,72px);align-items:start}.edu-list{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.education-card{position:relative;display:flex;flex-direction:column;gap:8px;width:100%;text-align:left;background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:22px 22px 16px;cursor:pointer;transition:translate .45s cubic-bezier(.22,1,.36,1),transform .25s ease-out,box-shadow .25s ease-out,border-color .25s ease-out}.education-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-card);border-color:var(--tab-accent, var(--color-accent))}.education-card:nth-child(1){grid-column:1;grid-row:1;z-index:2}.education-card:nth-child(2){grid-column:1;grid-row:1;z-index:1;translate:18px 24px}.edu-list:hover .education-card:nth-child(2){translate:calc(100% + 18px) 0}.education-card:before{content:"";position:absolute;top:-1px;left:20px;width:42px;height:9px;border-radius:0 0 10px 10px;background:var(--tab-accent, var(--tab-butter))}.edu-card--butter{--tab-accent: var(--tab-butter)}.edu-card--coral{--tab-accent: var(--tab-coral)}.edu-card--lavender{--tab-accent: var(--tab-lavender)}.edu-card--sage{--tab-accent: var(--tab-sage)}.edu-card--blue{--tab-accent: var(--tab-blue)}.edu-card__top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.edu-card__num{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.edu-card__logo{width:26px;height:26px;object-fit:contain;opacity:.9}.edu-card__school{font-family:var(--font-display);font-weight:900;font-size:1.28rem;letter-spacing:-.01em;text-transform:uppercase;line-height:1.05}.edu-card__period{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent)}.edu-card__degree{color:var(--muted);font-size:.95rem;line-height:1.45}.edu-card__open{margin-top:12px;padding-top:12px;border-top:1px dashed var(--line);display:inline-flex;align-items:baseline;gap:8px;font-family:var(--font-mono);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink)}.edu-card__open span:first-child{color:var(--color-accent);transition:transform .2s ease-out}.education-card:hover .edu-card__open span:first-child{transform:translate(4px)}.manifesto-card{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-white);padding:clamp(28px,4vw,40px);position:sticky;top:96px}.manifesto-mark{display:block;font-family:var(--font-serif);font-style:italic;font-size:2.4rem;color:var(--color-accent);margin-bottom:14px}.manifesto-card p{font-family:var(--font-serif);font-style:italic;font-size:clamp(1.1rem,1.8vw,1.35rem);line-height:1.5}.manifesto-footer{display:flex;justify-content:space-between;gap:12px;margin-top:22px;padding-top:16px;border-top:1px solid var(--color-border);font-family:var(--font-mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--color-muted)}.cases-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,3vw,32px)}.case-card{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-white);padding:clamp(26px,4vw,44px);display:flex;flex-direction:column;gap:14px;transition:transform .25s ease-out,box-shadow .25s ease-out,background .25s ease-out}.case-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-card)}.case-card--large{grid-column:1 / -1;padding:clamp(32px,5vw,64px);background:var(--color-text);color:var(--color-white);border-color:var(--color-text)}.case-card--large .case-category,.case-card--large .case-period,.case-card--large .case-card__meta,.case-card--large .case-card__summary{color:#f5f2ebbf}.case-card--large .case-card__title{font-size:clamp(2rem,4.5vw,3.4rem);max-width:22ch}.case-card--large .tag{border-color:#f5f2eb4d;background:transparent;color:#f5f2ebd9}.case-card--large .case-highlights li{color:#f5f2ebd9}.case-card--large .case-highlights li:before{color:var(--coral)}.case-card--large:hover{transform:translateY(-4px)}.case-card--cover{grid-column:1 / -1;position:relative;overflow:hidden;padding:clamp(36px,6vw,72px);background:var(--color-text);color:var(--color-white);border-color:var(--color-text);min-height:460px;justify-content:flex-end}.case-card--cover .case-card__head,.case-card--cover .case-card__title,.case-card--cover .case-card__meta,.case-card--cover .case-card__summary,.case-card--cover .case-highlights,.case-card--cover .tags{position:relative;z-index:1}.case-card--cover .case-card__title{font-size:clamp(2.2rem,5.5vw,4rem);max-width:18ch}.case-card--cover .case-category,.case-card--cover .case-period,.case-card--cover .case-card__meta,.case-card--cover .case-card__summary{color:#f5f2ebbf}.case-card--cover .case-highlights li{color:#f5f2ebd9}.case-card--cover .case-highlights li:before{color:var(--coral)}.case-card--cover .tag{border-color:#f5f2eb4d;background:transparent;color:#f5f2ebd9}.case-card--cover .case-index{position:absolute;top:-.18em;right:.04em;font-family:var(--font-display);font-size:clamp(8rem,22vw,18rem);font-weight:900;line-height:1;letter-spacing:-.05em;color:transparent;-webkit-text-stroke:1.5px rgba(245,242,235,.28);pointer-events:none}.case-card--cover:before{content:"";position:absolute;width:clamp(150px,16vw,260px);aspect-ratio:1;right:clamp(4%,8%,12%);top:6%;border:clamp(10px,1.5vw,18px) solid rgba(242,165,139,.5);border-right-color:transparent;border-bottom-color:transparent;border-radius:50%;transform:rotate(28deg);pointer-events:none}.case-card--cover:after{content:"";position:absolute;width:clamp(64px,7vw,110px);aspect-ratio:1;right:24%;bottom:22%;border-radius:50%;background:#f3d77a59;pointer-events:none}.case-card--cover:hover{transform:translateY(-4px)}.case-card--text{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(20px,3vw,40px);align-items:start}.case-card--text .case-card__head{grid-column:1 / -1}.case-card--text .case-card__title{grid-column:1 / -1;font-size:clamp(2rem,4.5vw,3.2rem);max-width:26ch;margin-bottom:6px}.case-card--text .case-card__meta,.case-card--text .case-card__summary{grid-column:1}.case-card--text .tags{grid-column:1;align-self:start}.case-card--text .case-highlights{grid-column:2;grid-row:3 / span 3;border-left:1px solid var(--line);padding-left:clamp(18px,2.5vw,28px)}.case-card__head{display:flex;align-items:center;gap:12px;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-muted)}.case-index{color:var(--color-accent);font-weight:600}.case-period{margin-left:auto}.case-card__title{font-size:clamp(1.4rem,2.6vw,2rem);font-weight:900;letter-spacing:-.02em;text-transform:uppercase}.case-card__meta{color:var(--color-muted);font-size:.92rem}.case-card__summary{color:var(--color-muted);line-height:1.6}.case-highlights{display:flex;flex-direction:column;gap:8px}.case-highlights li{position:relative;padding-left:18px;font-size:.95rem;color:var(--color-text)}.case-highlights li:before{content:"\2014";position:absolute;left:0;color:var(--color-accent)}.contact-section{position:relative;overflow:hidden}.contact-section:before{--halo: rgba(217, 95, 63, .35);opacity:.8}.contact-pattern{position:absolute;pointer-events:none;opacity:.5;z-index:0}.contact-pattern--sakura{top:40px;right:-60px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle at 30% 30%,rgba(243,215,122,.35),transparent 65%)}.contact-pattern--momiji{bottom:-80px;left:-60px;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle at 60% 40%,rgba(21,21,21,.12),transparent 65%)}.contact-sheet{background:radial-gradient(90% 130% at 88% 0%,rgba(255,253,248,.14),transparent 60%),radial-gradient(60% 90% at 4% 100%,rgba(21,21,21,.16),transparent 55%),var(--terracotta);border-color:#fffdf84d;color:var(--paper)}.contact-sheet .contact-head{max-width:34ch;margin-bottom:clamp(18px,2.5vw,28px)}.contact-sheet .contact-head h2{font-size:clamp(1.4rem,3.4vw,2.5rem);font-weight:900;text-transform:uppercase;letter-spacing:-.03em;line-height:1.02;color:var(--paper)}.contact-sheet .contact-head h2 span:last-child{color:#fffdf8b8}.contact-sheet .section-index--dark{color:var(--butter)}.contact-sheet .contact-text{margin-top:10px;font-family:var(--font-serif);font-style:italic;font-size:clamp(.95rem,1.5vw,1.15rem);color:#fffdf8e0}.contact-sheet .contact-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(10px,1.5vw,14px)}.contact-sheet .contact-link,.contact-sheet .contact-cta{display:flex;flex-direction:column;align-items:flex-start;gap:8px;background:#fffdf81f;border:1px solid rgba(255,253,248,.32);border-radius:14px;padding:clamp(13px,1.6vw,18px);color:var(--paper);text-align:left;transition:background .2s ease-out,transform .2s ease-out,border-color .2s ease-out}.contact-sheet .contact-link:hover,.contact-sheet .contact-cta:hover{background:#fffdf838;border-color:#fffdf88c;transform:translateY(-2px)}.contact-sheet .contact-link__label{font-family:var(--font-mono);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--butter);font-weight:600}.contact-sheet .contact-link svg,.contact-sheet .contact-cta svg{width:15px;height:15px;stroke:currentColor;stroke-width:2;fill:none;margin-top:auto;transition:transform .2s ease-out}.contact-sheet .contact-link:hover svg,.contact-sheet .contact-cta:hover svg{transform:translate(3px)}.contact-sheet .contact-cta{background:var(--ink);border-color:transparent;font-size:.95rem;font-weight:600;cursor:pointer;justify-content:flex-start}.contact-sheet .contact-cta:hover{background:var(--paper);color:var(--ink)}.contact-sheet .contact-cv{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:clamp(14px,2vw,20px);background:var(--ink);border:1px solid transparent;border-radius:999px;padding:clamp(13px,1.6vw,17px) clamp(18px,2.4vw,28px);color:var(--paper);font-size:.98rem;font-weight:600;text-align:center;transition:background .2s ease-out,transform .2s ease-out,border-color .2s ease-out}.contact-sheet .contact-cv svg{width:17px;height:17px;stroke:currentColor;stroke-width:2;fill:none;transition:transform .2s ease-out}.contact-sheet .contact-cv:hover{background:var(--paper);color:var(--ink);border-color:var(--ink);transform:translateY(-2px)}.contact-sheet .contact-cv:hover svg{transform:translateY(2px)}.site-footer{border-top:1px solid var(--color-border);background:var(--color-bg);padding-block:clamp(40px,6vw,64px)}.footer-main{display:flex;flex-wrap:wrap;justify-content:space-between;gap:24px;align-items:baseline}.footer-identity{font-family:var(--font-display);font-weight:800;font-size:1.02rem;letter-spacing:-.01em}.footer-sep{color:var(--color-accent);margin-inline:6px}.footer-links{display:flex;flex-wrap:wrap;gap:20px}.footer-links a{font-size:.9rem;color:var(--color-muted);border-bottom:1px solid transparent;transition:color .2s ease-out,border-color .2s ease-out}.footer-links a:hover{color:var(--color-accent);border-color:var(--color-accent)}.footer-copy{margin-top:32px;padding-top:20px;border-top:1px solid var(--color-border);display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;font-family:var(--font-mono);font-size:.7rem;letter-spacing:.08em;color:var(--color-muted)}.footer-mark{color:var(--color-accent)}.modal-backdrop{position:fixed;inset:0;z-index:90;background:#1111118c;display:flex;align-items:center;justify-content:center;padding:20px;animation:modal-fade .22s ease-out}@keyframes modal-fade{0%{opacity:0}to{opacity:1}}.modal-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:20px;width:min(560px,100%);max-height:min(88vh,720px);overflow-y:auto;padding:clamp(28px,5vw,44px);position:relative;box-shadow:0 24px 64px #11111140;animation:modal-rise .26s ease-out}@keyframes modal-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.modal-close{position:absolute;top:16px;right:16px;width:40px;height:40px;border-radius:50%;border:1px solid var(--color-border);background:var(--color-white);font-size:1.3rem;line-height:1;cursor:pointer;color:var(--color-text);transition:border-color .2s ease-out,color .2s ease-out}.modal-close:hover{border-color:var(--color-accent);color:var(--color-accent)}.modal-card h2{font-size:clamp(1.6rem,3.4vw,2.3rem);font-weight:900;text-transform:uppercase;letter-spacing:-.02em;margin-bottom:10px}.modal-intro{font-family:var(--font-mono);font-size:.8rem;color:var(--color-muted);margin-bottom:22px}.field{margin-bottom:18px}.field label{display:block;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-muted);margin-bottom:8px}.field input,.field textarea{width:100%;border:1px solid var(--color-border);border-radius:12px;background:var(--color-white);color:var(--color-text);padding:13px 16px;font-family:var(--font-sans);font-size:1rem;transition:border-color .2s ease-out}.field input:focus-visible,.field textarea:focus-visible{outline:none;border-color:var(--color-accent)}.button--full{width:100%;justify-content:center}.education-dialog-backdrop{background:#15151580;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.education-doc{width:min(720px,94vw);max-height:min(88vh,760px);display:flex;flex-direction:column;overflow:visible;padding:0;background:var(--paper);border:1px solid var(--line);border-radius:20px;box-shadow:0 28px 72px #1515154d;animation:none;transform-origin:50% 50%;transition:transform .58s cubic-bezier(.22,1,.36,1),opacity .3s ease-out}.edu-doc__scroll{overflow-y:auto;padding:clamp(28px,4.5vw,48px);border-radius:inherit}.education-doc.is-flipping-from-card{transform:translate(var(--flip-dx, 0px),var(--flip-dy, 0px)) scale(var(--flip-sx, 1),var(--flip-sy, 1));opacity:0}.edu-doc__content>*{transition:opacity .4s ease,transform .4s ease}.education-doc.is-flipping-from-card .edu-doc__content>*{opacity:0;transform:translateY(8px);transition-duration:.14s;transition-delay:0s}.edu-doc__content>*:nth-child(1){transition-delay:.06s}.edu-doc__content>*:nth-child(2){transition-delay:.12s}.edu-doc__content>*:nth-child(3){transition-delay:.18s}.edu-doc__content>*:nth-child(4){transition-delay:.24s}.edu-doc__content>*:nth-child(5){transition-delay:.3s}.edu-doc__content>*:nth-child(6){transition-delay:.36s}.edu-doc__content>*:nth-child(7){transition-delay:.42s}.edu-doc__content>*:nth-child(8){transition-delay:.48s}.edu-doc__tab{position:absolute;top:0;left:clamp(24px,4vw,48px);transform:translateY(-50%);padding:8px 18px;border-radius:12px;background:var(--tab-butter);border:1px solid rgba(21,21,21,.16);box-shadow:0 8px 20px #15151524;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--ink);white-space:nowrap}.edu-doc--butter .edu-doc__tab{background:var(--tab-butter)}.edu-doc--coral .edu-doc__tab{background:var(--tab-coral)}.edu-doc--lavender .edu-doc__tab{background:var(--tab-lavender)}.edu-doc--sage .edu-doc__tab{background:var(--tab-sage)}.edu-doc--blue .edu-doc__tab{background:var(--tab-blue)}.edu-doc__ref{display:flex;flex-wrap:wrap;gap:8px 14px;font-family:var(--font-mono);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);padding-bottom:14px;border-bottom:1px solid var(--line)}.edu-doc__ref span:last-child{margin-left:auto;color:var(--color-accent)}.edu-doc__stamp{display:block;width:fit-content;margin:18px 0 0 auto;border:2px solid rgba(217,95,63,.45);color:#d95f3fd9;border-radius:10px;padding:7px 14px;font-family:var(--font-mono);font-size:.66rem;letter-spacing:.24em;text-transform:uppercase;transform:rotate(-5deg);opacity:.85;-webkit-user-select:none;user-select:none}.edu-doc--butter .edu-doc__ref{background:#f3d77a47;border:1px solid rgba(21,21,21,.1);border-radius:12px;padding:10px 14px;border-bottom-width:1px;margin-bottom:6px}.edu-doc--butter .edu-doc__period{letter-spacing:.2em}.edu-doc--coral .edu-doc__summary{font-family:var(--font-serif);font-style:italic;font-size:clamp(1.15rem,2.2vw,1.45rem);line-height:1.5;color:var(--ink);border-left:3px solid var(--tab-coral);padding-left:18px}.edu-doc__period{margin-top:18px;font-family:var(--font-mono);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--color-accent)}.education-doc h2{margin-top:10px;font-size:clamp(1.9rem,4.2vw,2.8rem);font-weight:900;text-transform:uppercase;letter-spacing:-.02em;line-height:1.02;margin-bottom:0}.education-doc h2 .edu-doc__degree{display:block;font-family:var(--font-serif);font-style:italic;font-weight:500;text-transform:none;letter-spacing:0;font-size:clamp(1.1rem,2.2vw,1.45rem);color:var(--muted);margin-top:8px}.edu-doc__summary{margin-top:18px;color:var(--muted);font-size:1.02rem;line-height:1.6;max-width:60ch}.edu-doc__rule{border:none;border-top:1px solid var(--line);margin:24px 0 20px}.edu-doc__label{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--color-accent);margin-bottom:12px}.edu-doc__list{display:flex;flex-direction:column;gap:10px}.edu-doc__list li{position:relative;padding-left:18px;color:var(--ink);font-size:.98rem;line-height:1.55}.edu-doc__list li:before{content:"\2014";position:absolute;left:0;color:var(--color-accent)}.edu-doc__footer{margin-top:28px;padding-top:22px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px}.edu-doc__close-btn{display:inline-flex;align-items:center;gap:8px;background:transparent;border:none;border-bottom:1px solid var(--line);padding:6px 2px;font-family:var(--font-mono);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);cursor:pointer;transition:color .2s ease-out,border-color .2s ease-out}.edu-doc__close-btn:hover{color:var(--color-accent);border-color:var(--color-accent)}.education-source{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--color-text);border-radius:999px;padding:11px 22px;font-weight:600;font-size:.92rem;transition:background .2s ease-out,color .2s ease-out}.education-source:hover{background:var(--color-text);color:var(--color-white)}.education-source svg{width:14px;height:14px;stroke:currentColor;stroke-width:2;fill:none}.is-editable{border-radius:4px;cursor:text;outline:1px dashed transparent;outline-offset:3px;transition:outline-color .15s ease-out,background .15s ease-out}.is-editable:hover{outline-color:#e86f3d8c;background:#e86f3d0f}.is-editable:focus{outline:2px solid var(--color-accent);background:#e86f3d14}.edit-bar{position:fixed;left:50%;transform:translate(-50%);bottom:20px;z-index:95;display:flex;align-items:center;gap:20px;background:var(--color-text);color:var(--color-white);border-radius:999px;padding:10px 12px 10px 22px;box-shadow:0 16px 48px #11111159}.edit-bar__status{display:flex;align-items:center;gap:10px}.edit-bar__dot{width:8px;height:8px;border-radius:50%;background:var(--color-accent);animation:dot-pulse 1.6s ease-in-out infinite}@keyframes dot-pulse{0%,to{opacity:1}50%{opacity:.35}}.edit-bar__hint{font-size:.82rem;color:#f5f2ebcc;white-space:nowrap}.edit-bar__hint kbd{background:#f5f2eb26;border-radius:4px;padding:1px 6px;font-family:var(--font-mono);font-size:.72rem}.edit-bar__actions{display:flex;gap:8px}.edit-bar__btn{border:1px solid rgba(245,242,235,.35);background:transparent;color:var(--color-white);border-radius:999px;padding:8px 16px;font-size:.82rem;font-weight:600;cursor:pointer;transition:background .2s ease-out,border-color .2s ease-out}.edit-bar__btn:hover{border-color:var(--color-white)}.edit-bar__btn--primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-white)}.edit-bar__btn--primary:hover{background:#d85c2c;border-color:#d85c2c}.edit-bar__btn--danger.is-armed{background:#d8433c;border-color:#d8433c}.edit-toast{position:fixed;left:50%;transform:translate(-50%);bottom:84px;z-index:96;background:var(--color-text);color:var(--color-white);border-radius:999px;padding:12px 24px;font-size:.88rem;font-weight:600;box-shadow:0 12px 36px #1111114d;animation:modal-rise .22s ease-out}@media(max-width:1024px){.work-card{grid-template-columns:120px minmax(0,1fr)}.work-side{grid-column:2;flex-direction:row;flex-wrap:wrap;align-items:center}.client-track{grid-template-columns:repeat(3,1fr)}.expertise-block{grid-template-columns:1fr;gap:18px}.expertise-block>:not(.expertise-block__head){grid-column:1}.edu-list{grid-template-columns:repeat(2,minmax(0,1fr))}body{font-size:16px}.menu-toggle{display:flex}.site-nav{position:fixed;inset:68px 0 auto;flex-direction:column;align-items:stretch;gap:0;background:var(--color-bg);border-bottom:1px solid var(--color-border);padding:12px 20px 20px;transform:translateY(-120%);transition:transform .25s ease-out;margin-left:0}.site-nav.open{transform:translateY(0)}.site-nav a{padding:14px 4px;border-bottom:1px solid var(--color-border);font-size:1rem}.site-nav .nav-cta,.site-nav .nav-cv{margin-top:14px;justify-content:center}.hero-name__line--accent{padding-left:0}.showcase-frame{grid-template-columns:1fr}.showcase-media,.hero-catchphrase{grid-column:1;grid-row:auto}.hero-catchphrase,.hero-catchphrase:hover{translate:none}.showcase-bottomline{grid-row:auto}.hero-lede-wrap{position:static;transform:none;margin-top:clamp(12px,2vw,18px);text-align:left}.hero-meta-grid{grid-template-columns:1fr}.hero-meta+.hero-meta{border-left:none;border-top:1px solid var(--color-border)}.section-heading{grid-template-columns:1fr;gap:18px}.section-intro{max-width:none}.education-layout{grid-template-columns:1fr}.manifesto-card{position:static}.sheet-wrap{padding-inline:12px}.sheet-section:not(.hero-section):after{display:none}.sheet-tab{left:14px;padding:6px 13px;font-size:.66rem;gap:6px}.sheet-tab__num{font-size:.6rem}.sheet-section+.sheet-section{margin-top:-10px}.edu-list{grid-template-columns:1fr}.education-card:nth-child(1),.education-card:nth-child(2){grid-column:auto;grid-row:auto}.education-card:nth-child(2){translate:none;z-index:auto}.hero-shape--arc{right:-60px}.hero-shape--disc{left:-50px}.cases-grid{grid-template-columns:1fr}.case-card--large,.case-card--cover{grid-column:1}.case-card--cover{min-height:380px}.case-card--text{grid-column:1;grid-template-columns:1fr}.case-card--text .case-card__head,.case-card--text .case-card__title,.case-card--text .case-card__meta,.case-card--text .case-card__summary,.case-card--text .tags,.case-card--text .case-highlights{grid-column:1;grid-row:auto}.case-card--text .case-highlights{border-left:none;padding-left:0}.contact-links{grid-template-columns:1fr}.work-card{grid-template-columns:1fr;gap:14px}.work-side{grid-column:1}.work-index{margin-bottom:0}.client-track{grid-template-columns:repeat(2,1fr)}.edit-bar{left:12px;right:12px;transform:none;border-radius:18px;flex-direction:column;align-items:stretch;gap:12px;padding:16px}.edit-bar__hint{white-space:normal}.edit-bar__actions{flex-wrap:wrap}.edit-toast{left:12px;right:12px;transform:none;text-align:center}}@media(max-width:480px){.client-track{grid-template-columns:1fr 1fr}.hero-status{font-size:.68rem;flex-wrap:wrap}.hero-portrait{width:52px;height:52px}.demo-kpis{grid-template-columns:1fr}}@media(max-width:768px){.education-dialog-backdrop{padding:10px}.education-doc{width:100%;max-height:calc(100dvh - 20px);max-width:none;border-radius:16px}.edu-doc__scroll{padding:clamp(24px,6vw,32px)}.edu-doc__stamp{font-size:.6rem;padding:6px 11px}}@media(prefers-reduced-motion:reduce){.edu-doc__content>*{transition:none}.sheet-section:before,.sheet-section:not(.hero-section):after,.hero-shape,.hero-spark,.section-spark,.hero-backdrop{animation:none}.hero-section:hover .hero-spark,.sheet-section:hover .section-spark{transition:none}.education-card:nth-child(1),.education-card:nth-child(2){grid-column:auto;grid-row:auto}.education-card:nth-child(2){translate:none;z-index:auto}}@property --tw-rotate-x{syntax: "*"; inherits: false;}@property --tw-rotate-y{syntax: "*"; inherits: false;}@property --tw-rotate-z{syntax: "*"; inherits: false;}@property --tw-skew-x{syntax: "*"; inherits: false;}@property --tw-skew-y{syntax: "*"; inherits: false;}@property --tw-border-style{syntax: "*"; inherits: false; initial-value: solid;}@property --tw-blur{syntax: "*"; inherits: false;}@property --tw-brightness{syntax: "*"; inherits: false;}@property --tw-contrast{syntax: "*"; inherits: false;}@property --tw-grayscale{syntax: "*"; inherits: false;}@property --tw-hue-rotate{syntax: "*"; inherits: false;}@property --tw-invert{syntax: "*"; inherits: false;}@property --tw-opacity{syntax: "*"; inherits: false;}@property --tw-saturate{syntax: "*"; inherits: false;}@property --tw-sepia{syntax: "*"; inherits: false;}@property --tw-drop-shadow{syntax: "*"; inherits: false;}@property --tw-drop-shadow-color{syntax: "*"; inherits: false;}@property --tw-drop-shadow-alpha{syntax: "<percentage>"; inherits: false; initial-value: 100%;}@property --tw-drop-shadow-size{syntax: "*"; inherits: false;}@layer properties{@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x: initial;--tw-rotate-y: initial;--tw-rotate-z: initial;--tw-skew-x: initial;--tw-skew-y: initial;--tw-border-style: solid;--tw-blur: initial;--tw-brightness: initial;--tw-contrast: initial;--tw-grayscale: initial;--tw-hue-rotate: initial;--tw-invert: initial;--tw-opacity: initial;--tw-saturate: initial;--tw-sepia: initial;--tw-drop-shadow: initial;--tw-drop-shadow-color: initial;--tw-drop-shadow-alpha: 100%;--tw-drop-shadow-size: initial}}}
