@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap";.philo{--philo-bg:#fffdf8;--philo-text:#18181b;--philo-muted:#756f65;--philo-accent:#f97316;background:linear-gradient(to bottom, #fbf8f1 0%, var(--philo-bg) 220px);text-align:center;padding:clamp(110px,14vh,160px) 6vw 0;position:relative;overflow-x:clip}.philo-text{max-width:1120px;margin:0 auto}@media (width>=761px){.philo-line{white-space:nowrap}}.philo-label{color:var(--philo-muted);font-family:var(--mono);letter-spacing:.32em;text-transform:uppercase;align-items:center;gap:16px;font-size:11px;display:inline-flex}.philo-label:before,.philo-label:after{content:"";opacity:.45;background:currentColor;width:36px;height:1px}.philo-title{color:var(--philo-text);font-family:var(--serif);letter-spacing:-.035em;margin-top:34px;font-size:clamp(44px,6.4vw,100px);font-weight:400;line-height:1.02}.philo-title em{color:var(--philo-accent);font-style:italic}.philo-copy{max-width:470px;color:var(--philo-muted);margin:34px auto 0;font-size:clamp(15px,1.15vw,17px);line-height:1.85}.philo-frame{width:100vw;margin:clamp(70px,10vh,110px) 0 0 calc(50% - 50vw)}.philo-scene{aspect-ratio:2170/725;isolation:isolate;background:#f3d9b5;position:relative;overflow:hidden}.philo-scene:before,.philo-scene:after{content:"";z-index:3;pointer-events:none;position:absolute;left:0;right:0}.philo-scene:before{background:linear-gradient(to bottom, var(--philo-bg) 0%, #fffdf8d9 18%, #fffdf880 42%, #fffdf82e 70%, #fffdf800 100%);height:28%;top:0}.philo-scene:after{background:linear-gradient(#140e0800 0%,#140e0880 100%);height:22%;bottom:0}.philo-layer{object-fit:cover;object-position:57% 55%;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.philo-twilight{--reveal:0;--x0:50%;--y0:50%;--x1:50%;--y1:50%;--x2:50%;--y2:50%;--rx0:0px;--ry0:0px;--rx1:0px;--ry1:0px;--rx2:0px;--ry2:0px;opacity:var(--reveal);will-change:mask-position, opacity;-webkit-mask-image:radial-gradient(var(--rx0) var(--ry0) at var(--x0) var(--y0), #000 0%, #000 34%, #000000eb 46%, #000000b8 58%, #00000073 70%, #0003 82%, #0000000f 92%, transparent 100%), radial-gradient(var(--rx1) var(--ry1) at var(--x1) var(--y1), #000 0%, #000000d9 28%, #0000008c 52%, #0000003d 74%, #0000000f 90%, transparent 100%), radial-gradient(var(--rx2) var(--ry2) at var(--x2) var(--y2), #000000e6 0%, #000000b3 30%, #00000061 56%, #00000024 78%, #00000008 92%, transparent 100%);-webkit-mask-image:radial-gradient(var(--rx0) var(--ry0) at var(--x0) var(--y0), #000 0%, #000 34%, #000000eb 46%, #000000b8 58%, #00000073 70%, #0003 82%, #0000000f 92%, transparent 100%), radial-gradient(var(--rx1) var(--ry1) at var(--x1) var(--y1), #000 0%, #000000d9 28%, #0000008c 52%, #0000003d 74%, #0000000f 90%, transparent 100%), radial-gradient(var(--rx2) var(--ry2) at var(--x2) var(--y2), #000000e6 0%, #000000b3 30%, #00000061 56%, #00000024 78%, #00000008 92%, transparent 100%);mask-image:radial-gradient(var(--rx0) var(--ry0) at var(--x0) var(--y0), #000 0%, #000 34%, #000000eb 46%, #000000b8 58%, #00000073 70%, #0003 82%, #0000000f 92%, transparent 100%), radial-gradient(var(--rx1) var(--ry1) at var(--x1) var(--y1), #000 0%, #000000d9 28%, #0000008c 52%, #0000003d 74%, #0000000f 90%, transparent 100%), radial-gradient(var(--rx2) var(--ry2) at var(--x2) var(--y2), #000000e6 0%, #000000b3 30%, #00000061 56%, #00000024 78%, #00000008 92%, transparent 100%);-webkit-mask-composite:source-over;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-composite:source-over;mask-composite:add}@media (width<=760px){.philo{padding:90px 6vw 0}.philo-title,.philo-copy{margin-top:26px}.philo-frame{margin-top:56px}.philo-scene{aspect-ratio:4/3}.philo-twilight{display:none}}@media (hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){.philo-twilight{display:none}}.journey{background:#11100e;position:relative}.journey .chapter{height:120vh;position:relative}.journey .chapter-tail{height:45vh}.journey:before,.journey:after{content:"";z-index:40;pointer-events:none;position:absolute;left:0;right:0}.journey:before{background:linear-gradient(to bottom, var(--cream) 0%, #f7f2e9e6 14%, #f7f2e9a8 32%, #f7f2e961 52%, #f7f2e924 74%, #f7f2e900 100%);height:40vh;top:0}.journey:after{background:linear-gradient(to top, var(--paper) 0%, #fbf8f1e6 14%, #fbf8f1a8 32%, #fbf8f161 52%, #fbf8f124 74%, #fbf8f100 100%);height:45vh;bottom:0}.journey+.contact-section{border-top:0}.journey .cinematic{background:#111;width:100%;height:100vh;position:sticky;top:0;overflow:hidden}.journey .image-layer{opacity:0;will-change:opacity, transform;transition:opacity .12s linear,transform .12s linear;position:absolute;inset:0;overflow:hidden;transform:scale(1.12)}.journey .image-layer img{object-fit:cover;width:100%;height:100%;display:block}.journey .image-layer:after{content:"";background:linear-gradient(90deg,#070605db 0%,#07060585 42%,#07060526 100%),linear-gradient(#0000 38%,#0706054d 55%,#070605eb 100%);position:absolute;inset:0}.journey .blend-layer{z-index:10;pointer-events:none;opacity:0;background:radial-gradient(circle,#0000 15%,#0a090726 60%,#0a090780 100%);position:absolute;inset:0}.journey .content{z-index:20;align-items:flex-end;width:min(1200px,90vw);margin:auto;padding-bottom:12vh;display:flex;position:absolute;inset:0}.journey .chapter-content{opacity:0;will-change:opacity, transform;max-width:720px;transition:opacity .15s linear,transform .15s linear;position:absolute;bottom:12vh;left:0;transform:translateY(45px)}.journey .kicker{color:#fff4e2;text-transform:uppercase;letter-spacing:.25em;text-shadow:0 1px 12px #0009;align-items:center;gap:12px;margin-bottom:25px;font-size:10px;display:flex}.journey .kicker:before{content:"";opacity:.7;background:currentColor;width:42px;height:1px}.journey h1,.journey h2{font-family:var(--serif);letter-spacing:-.06em;color:var(--text-light);text-shadow:0 2px 30px #0009,0 1px 8px #00000073;font-weight:400}.journey h1{font-size:clamp(70px,10vw,150px);line-height:.83}.journey h1 em,.journey h2 em{color:var(--gold);font-style:italic}.journey h2{font-size:clamp(60px,8vw,115px);line-height:.86}.journey .meta{color:#f2e9da;text-transform:uppercase;letter-spacing:.13em;text-shadow:0 1px 14px #000000a6;flex-wrap:wrap;gap:24px;margin-top:28px;font-size:11px;display:flex}.journey .meta strong{color:#fff}.journey .hero-content{max-width:850px}.journey .chapter-number{z-index:15;font-family:var(--serif);letter-spacing:-.08em;color:#ffffff17;pointer-events:none;font-size:clamp(130px,18vw,280px);line-height:.7;position:absolute;top:18vh;right:5vw}.journey-progress{z-index:100;pointer-events:none;flex-direction:column;gap:9px;transition:opacity .4s;display:flex;position:fixed;top:50%;right:28px;transform:translateY(-50%)}.journey-progress span{background:#ffffff4d;border-radius:20px;width:4px;height:22px;transition:height .35s,background .35s}.journey-progress span.active{background:var(--gold);height:44px}@media (width<=800px){.journey .content{width:86vw;padding-bottom:9vh}.journey .chapter{height:115vh}.journey h1{font-size:clamp(64px,18vw,105px)}.journey h2{font-size:18vw}.journey .description{font-size:14px}.journey .chapter-number{font-size:38vw;top:18vh;right:4vw}.journey-progress{right:12px}.journey .meta{gap:12px;line-height:1.7}}.tablet-carousel{width:100%;height:calc(var(--carousel-height) + (var(--carousel-vertical-overscan) * 2));-webkit-user-select:none;user-select:none;touch-action:pan-y;cursor:grab;isolation:isolate;min-height:420px;position:relative;overflow:visible;container:tablet-carousel/inline-size}.tablet-carousel:active{cursor:grabbing}.tablet-carousel__stage{inset:var(--carousel-vertical-overscan) 0;perspective:var(--carousel-perspective);perspective-origin:var(--carousel-center-x,50%) 48%;transform-style:preserve-3d;position:absolute}.tablet-carousel__tablet{left:var(--carousel-center-x,50%);width:var(--carousel-width);aspect-ratio:var(--carousel-aspect);transform-style:preserve-3d;transform:translate(-50%, calc(-50% + var(--float-y,0px))) translateX(calc(var(--position) * var(--carousel-spacing))) translateZ(calc(var(--distance) * var(--carousel-depth) * -1)) rotateY(calc(var(--position) * var(--carousel-rotation) * -1)) scale(calc(1 - var(--distance) * (1 - var(--carousel-side-scale))));opacity:1;z-index:calc(100 - var(--distance));cursor:pointer;transition:transform var(--carousel-duration) var(--carousel-easing);will-change:transform;background:0 0;border:0;outline:none;padding:0;position:absolute;top:48%}.tablet-carousel__tablet img{object-fit:contain;pointer-events:none;-webkit-user-drag:none;opacity:0;width:100%;height:100%;filter:brightness(var(--carousel-inactive-brightness));transition:opacity .5s ease, transform .5s cubic-bezier(.22, 1, .36, 1), filter var(--carousel-duration) var(--carousel-easing);display:block;transform:scale(.985)}.tablet-carousel__tablet img.is-loaded{opacity:1;transform:scale(1)}.tablet-carousel__tablet.is-active img{filter:brightness()}.tablet-carousel__tablet.is-active{filter:drop-shadow(0 34px 28px #0000009e);animation:tablet-carousel-float var(--carousel-float-duration) ease-in-out infinite}.tablet-carousel__tablet:not(.is-active){filter:drop-shadow(0 25px 22px #0000007a)}.tablet-carousel__tablet.is-hidden{visibility:hidden;pointer-events:none}@property --float-y{syntax:"<length>";inherits:false;initial-value:0}@keyframes tablet-carousel-float{0%,to{--float-y:0px}50%{--float-y:calc(var(--carousel-float-amplitude) * -1)}}.tablet-carousel--align-center{--carousel-center-x:50%}.tablet-carousel--align-left{--carousel-center-x:calc(var(--carousel-width) / 2)}.tablet-carousel--align-right{--carousel-center-x:calc(100% - (var(--carousel-width) / 2))}.tablet-carousel--sizing-viewport{--carousel-default-width:min(72vw, 1080px)}.tablet-carousel--sizing-container{--carousel-default-width:min(100%, 1080px);--carousel-spacing:clamp(80px, 26cqw, 320px)}.tablet-carousel__control{color:#fffffff0;z-index:1000;cursor:pointer;pointer-events:auto;-webkit-backdrop-filter:blur(10px);background:#0a0a0ab8;border:1px solid #fff3;border-radius:50%;width:54px;height:54px;padding:0;font-size:38px;font-weight:200;line-height:1;transition:transform .18s,background .18s,border-color .18s;position:absolute;top:48%;transform:translateY(-50%)}.tablet-carousel__control:hover{background:#ffffff1c;border-color:#fff6;transform:translateY(-50%)scale(1.08)}.tablet-carousel__control:focus-visible{outline-offset:4px;outline:2px solid #fffc}.tablet-carousel__control--left{left:max(8px, calc(var(--carousel-center-x) - (var(--carousel-width) / 2) - 74px))}.tablet-carousel__control--right{right:max(8px, calc(100% - var(--carousel-center-x) - (var(--carousel-width) / 2) - 74px))}.tablet-carousel__footer{z-index:1100;pointer-events:none;height:24px;position:absolute;bottom:20px;left:0;right:0}.tablet-carousel__counter,.tablet-carousel__hint{color:#ffffff52;letter-spacing:.2em;white-space:nowrap;font-size:9px;position:absolute;top:50%;transform:translateY(-50%)}.tablet-carousel__counter{left:clamp(18px,6vw,80px)}.tablet-carousel__hint{letter-spacing:.25em;right:clamp(18px,6vw,80px)}.tablet-carousel__counter span{color:#ffffffd1}.tablet-carousel__counter i{background:#ffffff2e;width:34px;height:1px;margin:0 9px 3px;display:inline-block}.tablet-carousel__dots{pointer-events:auto;justify-content:center;align-items:center;gap:7px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.tablet-carousel__dot{cursor:pointer;background:#ffffff38;border:0;border-radius:50%;width:6px;height:6px;padding:0;transition:width .26s,background .26s}.tablet-carousel__dot.active{background:#fffc;border-radius:8px;width:25px}@media (width<=900px){.tablet-carousel--sizing-viewport{--carousel-width:88vw;--carousel-spacing:54vw}.tablet-carousel__control{width:44px;height:44px;font-size:31px}}@media (width<=600px){.tablet-carousel--sizing-viewport{--carousel-width:112vw;--carousel-spacing:72vw}.tablet-carousel--sizing-viewport .tablet-carousel__tablet{top:47%}.tablet-carousel__control{width:39px;height:39px;font-size:28px}.tablet-carousel__counter,.tablet-carousel__hint{display:none}}@container tablet-carousel (width<=900px){.tablet-carousel--sizing-container .tablet-carousel__control{width:44px;height:44px;font-size:31px}.tablet-carousel--sizing-container{--carousel-spacing:clamp(75px, 25cqw, 220px)}}@container tablet-carousel (width<=600px){.tablet-carousel--sizing-container .tablet-carousel__control{width:39px;height:39px;font-size:28px}.tablet-carousel--sizing-container{--carousel-spacing:clamp(65px, 24cqw, 150px)}.tablet-carousel--sizing-container .tablet-carousel__tablet{top:47%}.tablet-carousel--sizing-container .tablet-carousel__counter,.tablet-carousel--sizing-container .tablet-carousel__hint{display:none}}@media (prefers-reduced-motion:reduce){.tablet-carousel__tablet,.tablet-carousel__tablet img{transition-duration:0s}.tablet-carousel__tablet.is-active{animation:none}}.floating-asset{justify-content:center;align-items:center;width:100%;height:100%;display:flex;overflow:visible}.floating-asset-image{object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none;filter:drop-shadow(0 25px 30px #0000001f);width:auto;max-width:100%;height:auto;max-height:100%;transition:transform .5s,filter .5s;animation:5s ease-in-out infinite floodAssetFloat;display:block}@keyframes floodAssetFloat{0%{transform:translateY(0)}50%{transform:translateY(-14px)}to{transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.floating-asset-image{animation:none}}:root{--ink:#1c1915;--ink-soft:#171512;--cream:#f7f2e9;--cream-2:#efe8da;--paper:#fbf8f1;--gold:#efb467;--gold-deep:#b86f29;--orange:#e2701d;--text:#221e18;--text-muted:#6f6557;--text-dim:#a09381;--text-light:#fffaf1;--text-light-muted:#cfc6b6;--text-light-dim:#8d8475;--border-dark:#fffaf124;--border:#ddd2bf;--border-soft:#e7dfd0;--serif:"Playfair Display", Georgia, serif;--sans:"DM Sans", ui-sans-serif, system-ui, sans-serif;--mono:"DM Mono", ui-monospace, monospace}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;overscroll-behavior-x:none;position:relative;overflow-x:clip}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--cream);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;overflow-x:clip}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block}h1,h2,h3{font-family:var(--serif);letter-spacing:-.03em;font-weight:500}section[id],main[id]{scroll-margin-top:80px}.navbar{z-index:200;-webkit-backdrop-filter:blur(16px)saturate(1.2);backdrop-filter:blur(16px)saturate(1.2);background:#f7f2e9bf;justify-content:space-between;align-items:center;width:100%;height:76px;padding:0 5vw;transition:background .35s,box-shadow .35s;display:flex;position:fixed;top:0;left:0}.navbar.solid{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 1px 0 var(--border-soft);background:#f7f2e9d9}.logo{color:var(--text);font-family:var(--serif);letter-spacing:-.02em;font-size:21px;font-weight:600}.logo em{color:var(--orange);font-style:normal}.nav-links{align-items:center;gap:30px;display:flex}.nav-links a{color:var(--text);font-size:14px;font-weight:500;transition:color .25s;position:relative}.nav-links a:after{content:"";background:var(--orange);transform-origin:100%;width:100%;height:1.5px;transition:transform .3s cubic-bezier(.22,1,.36,1);position:absolute;bottom:-5px;left:0;transform:scaleX(0)}.nav-links a:hover{color:var(--orange)}.nav-links a:hover:after{transform-origin:0;transform:scaleX(1)}.nav-resume{border:1px solid var(--border);background:var(--paper);border-radius:50px;padding:10px 20px;font-weight:600;transition:transform .25s,box-shadow .25s,border-color .25s;color:var(--orange)!important;font-size:12px!important}.nav-resume:hover{border-color:var(--orange);transform:translateY(-2px);box-shadow:0 10px 25px #e2701d2e}.menu-btn{color:var(--text);cursor:pointer;background:0 0;border:none;font-size:22px;display:none}.hero{align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.hero-text{z-index:2;flex-direction:column;justify-content:center;width:min(640px,50%);padding:130px 0 90px 8vw;display:flex;position:relative}.hero-hey{font-family:var(--serif);color:var(--orange);font-size:clamp(24px,2.6vw,36px);font-style:italic}.hero h1{letter-spacing:-.045em;color:var(--text);margin-top:12px;font-size:clamp(54px,6.4vw,96px);line-height:.95}.hero-description{max-width:480px;color:var(--text-muted);margin-top:28px;font-size:16px;line-height:1.8}.hero-description strong{color:var(--text)}.hero-pills{flex-wrap:wrap;gap:10px;margin-top:34px;display:flex}.hero-pills span{border:1px solid var(--border);background:var(--paper);color:var(--text-muted);border-radius:50px;padding:9px 16px;font-size:12px;font-weight:500;transition:border-color .25s,color .25s,transform .25s}.hero-pills span:hover{border-color:var(--orange);color:var(--orange);transform:translateY(-2px)}.hero-buttons{flex-wrap:wrap;gap:14px;margin-top:42px;display:flex}.hero-signoff{font-family:var(--serif);color:var(--text);margin-top:60px;font-size:clamp(20px,2vw,27px);font-style:italic;line-height:1.4}.hero-signoff span{display:block}.hero-art{z-index:0;width:72%;position:absolute;top:0;bottom:0;right:0;overflow:hidden}.hero-art img{object-fit:cover;object-position:70% 100%;width:100%;height:110%;position:absolute;top:-10%;left:0}.hero-art:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(to right, var(--cream) 0%, #f7f2e9e0 14%, #f7f2e959 30%, #f7f2e900 46%), linear-gradient(to top, var(--cream) 0%, #f7f2e900 14%);position:absolute;inset:0}.hero-art .sparkle{z-index:2}.btn{letter-spacing:.06em;cursor:pointer;border:none;border-radius:50px;padding:15px 26px;font-size:12px;font-weight:600;transition:transform .25s,box-shadow .25s,border-color .25s,color .25s;display:inline-block}.btn.primary{background:var(--orange);color:#fff8ef}.btn.primary:hover{transform:translateY(-3px);box-shadow:0 14px 30px #e2701d59}.btn.outline{border:1px solid var(--border);color:var(--text);background:var(--paper)}.btn.outline:hover{border-color:var(--orange);color:var(--orange);transform:translateY(-3px)}.section{padding:120px 8vw}.section-label{font-family:var(--mono);letter-spacing:.25em;text-transform:uppercase;color:var(--orange);align-items:center;gap:12px;font-size:10px;display:flex}.section-label:before{content:"";opacity:.7;background:currentColor;width:42px;height:1px}.section-title{margin-top:26px;font-size:clamp(42px,5vw,68px);line-height:1}.section-title em{color:var(--orange);font-style:italic}.section-intro{max-width:560px;color:var(--text-muted);margin-top:22px;line-height:1.8}.skills-grid{grid-template-columns:repeat(2,1fr);gap:16px;margin-top:70px;display:grid}.skill-group{background:var(--paper);border:1px solid var(--border-soft);border-radius:20px;padding:32px;transition:border-color .3s}.skill-group:hover{border-color:var(--border)}.skill-group:last-child{grid-column:1/-1}.skill-group h3{font-family:var(--mono);color:var(--orange);letter-spacing:.06em;font-size:12px;font-weight:500}.skill-list{flex-wrap:wrap;gap:8px;margin-top:20px;display:flex}.skill-list span{background:var(--cream-2);border:1px solid var(--border-soft);color:var(--text-muted);border-radius:8px;padding:8px 12px;font-size:11px;transition:border-color .25s,color .25s,transform .25s}.skill-list span:hover{border-color:var(--orange);color:var(--orange);transform:translateY(-2px)}.experience-section{background:var(--paper);position:relative;overflow:hidden}.exp-note{font-family:var(--serif);color:var(--gold-deep);text-align:left;font-size:clamp(18px,1.8vw,25px);font-style:italic;line-height:1.5;position:absolute;top:66px;right:4vw;transform:rotate(-3deg)}.experience-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:clamp(50px,6vw,110px);margin-top:60px;display:grid;position:relative}.exp-title{font-size:clamp(40px,4.6vw,64px);line-height:1.05}.exp-title em{color:var(--orange);text-decoration:underline;-webkit-text-decoration-color:var(--gold);text-decoration-color:var(--gold);text-underline-offset:8px;font-style:italic;text-decoration-thickness:3px}.exp-desc{max-width:440px;color:var(--text-muted);margin-top:26px;font-size:14.5px;line-height:1.85}.company-card{background:var(--cream);border:1px solid var(--border-soft);border-radius:22px;margin-top:40px;padding:30px 28px;box-shadow:0 20px 45px #3c302014}.company-card-head{align-items:center;gap:16px;display:flex}.company-logo{object-fit:cover;border:1px solid var(--border);border-radius:14px;width:52px;height:52px;box-shadow:0 10px 25px #3c302026}.company-card-head h3{font-size:30px}.role{color:var(--orange);margin-top:4px;font-size:14px;font-weight:600}.company-card-meta{color:var(--text-muted);flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:20px;font-size:12.5px;display:flex}.date{color:var(--text-dim);font-family:var(--mono);font-size:12px}.tech-pills{flex-wrap:wrap;gap:8px;margin-top:20px;display:flex}.tech-pills span{border:1px solid var(--border);background:var(--paper);color:var(--text-muted);border-radius:50px;padding:7px 12px;font-size:10px;transition:border-color .25s,color .25s}.tech-pills span:hover{border-color:var(--orange);color:var(--orange)}.store-links{flex-wrap:wrap;align-items:center;gap:18px;margin-top:22px;font-size:12px;display:flex}.store-links-label{font-family:var(--mono);color:var(--text-dim);letter-spacing:1px;font-size:11px}.store-links a{color:var(--text-muted);transition:color .25s}.store-links a:hover{color:var(--orange)}.experience-art{margin:40px -15% -30px -12%}.experience-art img{filter:drop-shadow(0 34px 44px #3c302033);width:100%}.experience-timeline{padding-left:42px;position:relative}.timeline-track,.timeline-fill{width:2px;position:absolute;top:14px;bottom:14px;left:10px}.timeline-track{background:var(--border)}.timeline-fill{background:linear-gradient(var(--gold), var(--orange));transform-origin:top}.timeline-item{padding:14px 0;position:relative}.timeline-dot{background:var(--paper);border:2.5px solid var(--orange);width:11px;height:11px;box-shadow:0 0 0 4px var(--paper);border-radius:50%;position:absolute;top:30px;left:-37px}.timeline-card{background:var(--cream);border:1px solid var(--border-soft);border-radius:16px;align-items:flex-start;gap:18px;padding:22px 24px;transition:transform .3s,border-color .3s,box-shadow .3s;display:flex;position:relative}.timeline-card:hover{border-color:var(--gold);transform:translate(5px);box-shadow:0 18px 40px #3c30201a}.timeline-num{font-family:var(--mono);color:var(--orange);padding-top:4px;font-size:12px}.timeline-card p{color:var(--text-muted);flex:1;font-size:13.5px;line-height:1.7}.timeline-card p strong{color:var(--orange);font-weight:600}.timeline-icon{border:1.5px dashed var(--border);width:40px;height:40px;color:var(--text-muted);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;transition:border-color .25s,color .25s,transform .25s;display:flex}.timeline-icon svg{width:18px;height:18px}.timeline-card:hover .timeline-icon{border-color:var(--orange);color:var(--orange);transform:rotate(-6deg)scale(1.06)}.project-block{border-top:1px solid var(--border-soft);margin-top:60px;padding-top:56px}.project-block:first-of-type{border-top:none}.project-split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(30px,4vw,70px);display:grid}.project-visual,.project-text{min-width:0}.project-category{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--text-dim);align-items:baseline;gap:14px;margin-bottom:18px;font-size:10px;display:flex}.project-category .num{font-family:var(--serif);letter-spacing:-.02em;color:var(--gold);font-size:30px;font-style:italic}.project-text h3{margin-bottom:20px;font-size:clamp(34px,3.8vw,54px);line-height:1}.project-text>p{color:var(--text-muted);max-width:540px;font-size:15px;line-height:1.75}.feature-list{grid-template-columns:1fr 1fr;gap:0 26px;margin-top:26px;display:grid}.feature-list div{border-top:1px solid var(--border-soft);color:var(--text-muted);gap:12px;padding:10px 0;font-size:12.5px;line-height:1.5;display:flex}.feature-list span{color:var(--orange);font-family:var(--mono);padding-top:2px;font-size:10px}.project-tags{flex-wrap:wrap;gap:9px;margin-top:28px;display:flex}.project-tag{border:1px solid var(--border-soft);color:var(--text-muted);white-space:nowrap;background:#ffffff8c;border-radius:999px;align-items:center;padding:8px 14px;font-size:12px;display:inline-flex}.showcase-links{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.showcase-links a{border:1px solid var(--border);background:var(--paper);color:var(--text);border-radius:50px;align-items:center;gap:6px;padding:10px 20px;font-size:12px;font-weight:600;transition:border-color .25s,color .25s,transform .25s,box-shadow .25s;display:inline-flex}.showcase-links a:hover{border-color:var(--orange);color:var(--orange);transform:translateY(-2px);box-shadow:0 10px 22px #e2701d24}.flood-visual{justify-content:center;align-items:center;height:480px;display:flex}.journey-intro{text-align:center;padding:110px 8vw}.journey-intro p{max-width:520px;color:var(--text-muted);margin:22px auto 0;font-size:15px;line-height:1.8}.journey-intro h2{margin-top:24px;font-size:clamp(40px,5vw,64px)}.journey-intro h2 em{color:var(--orange);font-style:italic}.contact-section{background:var(--paper);border-top:1px solid var(--border-soft);padding:130px 8vw}.contact-inner{grid-template-columns:1fr 1fr;align-items:start;gap:90px;max-width:1100px;margin:0 auto;display:grid}.contact-section h2{margin-top:28px;font-size:clamp(44px,5.5vw,76px);line-height:1}.contact-section h2 em{color:var(--orange);font-style:italic}.contact-blurb{max-width:420px;color:var(--text-muted);margin-top:28px;font-size:15px;line-height:1.85}.contact-email{font-family:var(--serif);color:var(--text);border-bottom:1px solid var(--orange);margin-top:36px;padding-bottom:8px;font-size:20px;transition:color .25s;display:inline-block}.contact-email:hover{color:var(--orange)}.contact-links{color:var(--text-dim);letter-spacing:.14em;text-transform:uppercase;gap:28px;margin-top:40px;font-size:11px;display:flex}.contact-links a{transition:color .25s}.contact-links a:hover{color:var(--orange)}.contact-form{flex-direction:column;gap:18px;display:flex}.field label{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--text-dim);margin-bottom:10px;font-size:10px;display:block}.field input,.field textarea{background:var(--cream);border:1px solid var(--border);width:100%;color:var(--text);font-family:var(--sans);border-radius:12px;padding:16px 18px;font-size:14px;transition:border-color .25s,box-shadow .25s}.field input::placeholder,.field textarea::placeholder{color:var(--text-dim)}.field input:focus,.field textarea:focus{border-color:var(--orange);outline:none;box-shadow:0 0 0 3px #e2701d1f}.field textarea{resize:vertical;min-height:140px}.field-error{color:#c1440e;margin-top:8px;font-size:11px}.form-status{border-radius:12px;padding:14px 18px;font-size:13px;line-height:1.6}.form-status.success{color:var(--gold-deep);background:#e2701d14;border:1px solid #e2701d59}.form-status.error{color:#c1440e;background:#c1440e12;border:1px solid #c1440e4d}.submit-btn{align-self:flex-start}.submit-btn[disabled]{opacity:.55;cursor:not-allowed;box-shadow:none!important;transform:none!important}.honey{opacity:0;height:0;position:absolute;left:-9999px;overflow:hidden}footer{position:relative}.footer{z-index:4;color:#fffaf1e0;text-shadow:0 1px 8px #00000073;text-transform:uppercase;letter-spacing:.15em;justify-content:space-between;padding:26px 5vw;font-size:10px;display:flex;position:absolute;bottom:0;left:0;right:0}.hero-art img,.experience-art img,.company-logo,.journey .image-layer img,.philo-layer:not(.philo-twilight),.floating-asset-image{opacity:0;transition:opacity .7s}.hero-art img.is-loaded,.experience-art img.is-loaded,.company-logo.is-loaded,.journey .image-layer img.is-loaded,.philo-layer:not(.philo-twilight).is-loaded,.floating-asset-image.is-loaded{opacity:1}@media (prefers-reduced-motion:reduce){.hero-art img,.experience-art img,.company-logo,.journey .image-layer img,.philo-layer,.floating-asset-image{transition:none}}.scroll-progress{z-index:300;background:linear-gradient(90deg, var(--gold), var(--orange));transform-origin:0;height:3px;position:fixed;top:0;left:0;right:0}.ticker{border-top:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft);background:var(--paper);padding:18px 0;overflow:hidden}.ticker-track{width:max-content;animation:32s linear infinite ticker-scroll;display:flex}.ticker:hover .ticker-track{animation-play-state:paused}.ticker-item{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap;align-items:center;gap:26px;padding-right:26px;font-size:12px;display:inline-flex}.ticker-item i{color:var(--gold);font-style:normal}@keyframes ticker-scroll{to{transform:translate(-50%)}}.sparkle{color:var(--gold);pointer-events:none;font-size:22px;animation:4s ease-in-out infinite sparkle-twinkle;position:absolute}.sparkle.s1{top:12%;right:8%}.sparkle.s2{font-size:15px;animation-delay:1.4s;top:34%;left:4%}.sparkle.s3{font-size:15px;animation-delay:2.2s;bottom:14%;right:18%}.exp-note .sparkle.s1{top:-20px;right:-26px}.exp-note .sparkle.s2{top:auto;bottom:-16px;left:-30px}@keyframes sparkle-twinkle{0%,to{opacity:.25;transform:scale(.8)rotate(0)}50%{opacity:1;transform:scale(1.15)rotate(20deg)}}@media (prefers-reduced-motion:reduce){.ticker-track,.sparkle{animation:none}}@media (width<=1024px){.flood-visual{height:420px}}@media (width<=1100px){.exp-note{display:none}}@media (width<=900px){.experience-grid{grid-template-columns:1fr;gap:60px}.experience-art{margin:30px 0 -20px}.contact-inner{grid-template-columns:1fr;gap:70px}.project-split{grid-template-columns:1fr;gap:20px}.project-text{order:-1}}@media (width<=800px){.navbar{padding:0 6vw}.menu-btn{display:block}.nav-links{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--border-soft);background:#f7f2e9f7;flex-direction:column;align-items:flex-start;gap:20px;width:100%;padding:25px 6vw;display:none;position:absolute;top:76px;left:0}.nav-links.open{display:flex}.nav-resume{align-self:flex-start}.hero{flex-direction:column;align-items:stretch;min-height:auto}.hero-art{order:-1;width:100%;height:52vh;min-height:300px;position:relative}.hero-art img{object-position:70% 100%}.hero-art:after{background:linear-gradient(to top, var(--cream) 0%, #f7f2e900 30%)}.hero-text{width:auto;padding:10px 6vw 80px}.section{padding:90px 6vw}.experience-header{display:block}.date{margin-top:15px;display:block}.skills-grid,.feature-list{grid-template-columns:1fr}.flood-visual{height:340px;padding-bottom:40px}.project-block{margin-top:40px;padding-top:50px}.footer{flex-direction:column;align-items:center;gap:8px;padding:18px 6vw}.journey-intro{padding-left:6vw;padding-right:6vw}}
