*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--cream:#f5edd8;--cream-dark:#ead9b8;--ink:#1c120a;--ink-mid:#3d2b1a;--ink-light:#6b4c2a;--gold:#7a5a0e;--gold-light:#b8924a;--gold-dim:#7a5a0e4d;--paper:#fbf6e9;--bg:#f5edd8;--text:#1c120a;--card:#ead9b8}body.dark{--bg:#140d06;--text:#e8d5aa;--cream:#140d06;--cream-dark:#1f1409;--ink:#e8d5aa;--ink-mid:#c4a870;--ink-light:#9c7840;--gold:#c4a45a;--gold-light:#e8cc88;--gold-dim:#c4a45a40;--paper:#1a1108;--card:#1f1409}html{scroll-behavior:auto}body{background:var(--bg);color:var(--text);cursor:none;font-family:Crimson Text,Georgia,serif;font-size:18px;line-height:1.7;overflow-x:hidden}body:before{content:"";z-index:0;pointer-events:none;opacity:.5;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");position:fixed;inset:0}::selection{color:var(--ink);background:#7a5a0e40}body.dark ::selection{color:var(--text);background:#c4a45a4d}#pt-1{z-index:99999;pointer-events:none;position:fixed;inset:0}#cursor{pointer-events:none;z-index:99999;width:28px;height:28px;transition:transform 80ms;position:fixed;transform:translate(-50%,-50%)}.page-wrapper{border:1.7px solid #0000;margin:15px;position:relative}#frame-ornaments{pointer-events:none;z-index:9000;width:100%;height:100%;position:absolute;inset:0;overflow:visible}nav{z-index:8000;align-items:center;gap:28px;display:flex;position:fixed;top:28px;left:50%;transform:translate(-50%)}nav a{letter-spacing:3.5px;text-transform:uppercase;color:var(--ink);white-space:nowrap;font-family:Cinzel,serif;font-size:10px;text-decoration:none;transition:color .3s;position:relative}nav a:after{content:"";background:var(--gold);transform-origin:50%;height:1px;transition:transform .3s;position:absolute;bottom:-2px;left:0;right:0;transform:scaleX(0)}nav a:hover{color:var(--gold)}nav a:hover:after{transform:scaleX(1)}.nav-sep{color:var(--gold-light);opacity:.7;font-size:9px}#theme-btn{z-index:9500;border:1px solid var(--gold);cursor:none;pointer-events:all;background:0 0;justify-content:center;align-items:center;width:44px;height:44px;transition:background .3s;display:flex;position:fixed;bottom:32px;right:32px}#theme-btn:hover{background:var(--gold-dim)}.canvas{z-index:2;padding:60px 60px 40px;position:relative}.hero{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:80px 20px;display:flex;position:relative}.hero-eyebrow{letter-spacing:7px;text-transform:uppercase;color:var(--gold);margin-bottom:20px;font-family:Cinzel,serif;font-size:10px}.hero-name{color:var(--ink);margin-bottom:12px;font-family:UnifrakturMaguntia,cursive;font-size:clamp(60px,9vw,120px);line-height:.95}.hero-role{letter-spacing:5px;color:var(--ink-light);text-transform:uppercase;margin-bottom:40px;font-family:Cinzel,serif;font-size:clamp(11px,1.4vw,14px)}.hero-ornament{align-items:center;gap:14px;width:100%;max-width:540px;margin-bottom:28px;display:flex}.orn-line{background:linear-gradient(to right, transparent, var(--gold));flex:1;height:1px}.orn-line.r{background:linear-gradient(to left, transparent, var(--gold))}.hero-tagline{color:var(--ink-mid);max-width:500px;margin-bottom:52px;font-size:21px;font-style:italic;line-height:1.55}.hero-cta{letter-spacing:4px;text-transform:uppercase;color:var(--bg);background:var(--ink);cursor:none;border:1px solid #0000;padding:15px 40px;font-family:Cinzel,serif;font-size:10px;text-decoration:none;transition:background .35s,color .35s,letter-spacing .3s}.hero-cta:hover{background:var(--gold);color:var(--paper);letter-spacing:6px}.scroll-hint{letter-spacing:4px;color:var(--gold);text-transform:uppercase;flex-direction:column;align-items:center;gap:10px;font-family:Cinzel,serif;font-size:8px;animation:2.8s ease-in-out infinite bob;display:flex;position:absolute;bottom:28px;left:50%;transform:translate(-50%)}@keyframes bob{0%,to{transform:translate(-50%)translateY(0)}50%{transform:translate(-50%)translateY(-10px)}}section{max-width:1100px;margin:0 auto;padding:80px 20px}.sh{text-align:center;margin-bottom:60px}.sh-eye{letter-spacing:7px;text-transform:uppercase;color:var(--gold);margin-bottom:10px;font-family:Cinzel,serif;font-size:9px}.sh-title{color:var(--ink);font-family:UnifrakturMaguntia,cursive;font-size:clamp(40px,5.5vw,68px);line-height:1}.sh-rule{align-items:center;gap:12px;max-width:320px;margin:18px auto 0;display:flex}.sh-rule-line{background:var(--gold-dim);flex:1;height:1px}.sh-rule-dot{background:var(--gold);flex-shrink:0;width:5px;height:5px;transform:rotate(45deg)}.about-grid{grid-template-columns:340px 1fr;align-items:start;gap:72px;display:grid}.portrait-wrap{position:relative}.portrait-box{aspect-ratio:3/4;background:var(--card);border:1px solid var(--gold-light);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.portrait-box:before{content:"";border:1px solid var(--gold-dim);position:absolute;inset:10px}.portrait-box:after{content:"";background:linear-gradient(135deg, transparent 60%, var(--gold-dim));position:absolute;inset:0}.portrait-label{letter-spacing:3px;color:var(--gold);text-transform:uppercase;text-align:center;margin-top:14px;font-family:Cinzel,serif;font-size:9px}.about-text p{color:var(--ink-mid);text-wrap:pretty;margin-bottom:20px;font-size:17px}.about-text p:first-of-type:first-letter{float:left;color:var(--gold);margin-right:10px;font-family:UnifrakturMaguntia,cursive;font-size:72px;line-height:.75}.stats-row{border-top:1px solid var(--gold-dim);border-bottom:1px solid var(--gold-dim);gap:0;margin-top:40px;display:flex}.stat{text-align:center;border-right:1px solid var(--gold-dim);flex:1;padding:20px 0}.stat:last-child{border-right:none}.stat-n{color:var(--ink);font-family:Cinzel,serif;font-size:30px;font-weight:700;display:block}.stat-l{letter-spacing:2.5px;text-transform:uppercase;color:var(--gold);margin-top:4px;font-family:Cinzel,serif;font-size:8px;display:block}#projects{flex-direction:column;align-items:center;max-width:none;height:100vh;margin:0;padding:40px 20px 20px;display:flex;overflow:hidden}.tarot-stage{flex:1;justify-content:center;align-items:center;width:100%;display:flex}.tarot-deck{width:240px;height:400px;position:relative}.deck-card{transform-origin:50% 150%;cursor:pointer;transform-style:preserve-3d;position:absolute;inset:0}.card-inner-3d{width:100%;height:100%;transform-style:preserve-3d;position:relative}.card-face{backface-visibility:hidden;border-radius:12px;position:absolute;inset:0;overflow:hidden}.card-front-face{background:var(--paper);border:1px solid var(--gold-light);flex-direction:column;padding:28px 22px;display:flex;transform:rotateY(180deg);box-shadow:4px 8px 32px #0000002e}.cf-glyph{text-align:center;color:var(--gold);opacity:.12;margin-bottom:4px;font-family:UnifrakturMaguntia,cursive;font-size:60px;line-height:1}.cf-num{letter-spacing:3px;color:var(--gold);opacity:.7;margin-bottom:6px;font-family:Cinzel,serif;font-size:8px}.cf-cat{letter-spacing:2px;text-transform:uppercase;color:var(--ink-light);margin-bottom:10px;font-family:Cinzel,serif;font-size:8px}.cf-name{color:var(--ink);margin-bottom:14px;font-family:UnifrakturMaguntia,cursive;font-size:26px;line-height:1.1}.cf-desc{color:var(--ink-mid);flex:1;margin-bottom:16px;font-size:13px;line-height:1.5}.cf-tags{flex-wrap:wrap;gap:5px;display:flex}.cf-tag{letter-spacing:1.5px;text-transform:uppercase;color:var(--gold);border:1px solid var(--gold-dim);padding:2px 7px;font-family:Cinzel,serif;font-size:7px}.cf-border{border:1px solid var(--gold-dim);pointer-events:none;border-radius:8px;position:absolute;inset:6px}.card-back-svg{width:100%;height:100%;display:block}.skills-wrap{grid-template-columns:repeat(4,1fr);gap:40px;display:grid}.skill-col h4{letter-spacing:3px;text-transform:uppercase;color:var(--gold);border-bottom:1px solid var(--gold-dim);margin-bottom:16px;padding-bottom:10px;font-family:Cinzel,serif;font-size:9px}.skill-col ul{list-style:none}.skill-col li{color:var(--ink-mid);border-bottom:1px solid #7a5a0e14;align-items:center;gap:8px;padding:6px 0;font-size:15px;display:flex}.skill-col li:before{content:"—";color:var(--gold);opacity:.6;font-size:10px}.contact-body{text-align:center;max-width:520px;margin:0 auto}.contact-body p{color:var(--ink-mid);margin-bottom:48px;font-size:19px;font-style:italic;line-height:1.6}.contact-links{flex-wrap:wrap;justify-content:center;gap:36px;display:flex}.c-link{letter-spacing:3px;text-transform:uppercase;color:var(--ink);padding-bottom:4px;font-family:Cinzel,serif;font-size:10px;text-decoration:none;transition:color .3s;position:relative}.c-link:after{content:"";background:var(--gold);height:1px;transition:transform .3s;position:absolute;bottom:0;left:0;right:0;transform:scaleX(.3)}.c-link:hover{color:var(--gold)}.c-link:hover:after{transform:scaleX(1)}footer{text-align:center;letter-spacing:4px;color:var(--gold);text-transform:uppercase;opacity:.7;padding:48px 20px;font-family:Cinzel,serif;font-size:8px}#particles{pointer-events:none;z-index:1;position:fixed;inset:0}@media (width<=900px){.canvas{padding:60px 40px 40px}.about-grid{grid-template-columns:1fr}.skills-wrap{grid-template-columns:1fr 1fr}}@media (width<=600px){.canvas{padding:60px 24px 24px}.skills-wrap{grid-template-columns:1fr 1fr;gap:24px}}.toolbox-wrap[data-astro-cid-ge2uvauf]{isolation:isolate;display:inline-block;position:relative}.hero-cta[data-astro-cid-ge2uvauf]{transition:background .35s,color .35s,letter-spacing .3s,transform .28s!important}.toolbox-wrap[data-astro-cid-ge2uvauf]:hover .hero-cta[data-astro-cid-ge2uvauf]{transform:translateY(5px)!important}.tool[data-astro-cid-ge2uvauf]{color:var(--gold);opacity:0;pointer-events:none;z-index:0;transition:opacity .18s,transform .44s cubic-bezier(.22,1,.36,1);position:absolute;bottom:0}.t-pick[data-astro-cid-ge2uvauf]{left:calc(50% - 70px)}.t-chest[data-astro-cid-ge2uvauf]{left:calc(50% - 22px)}.t-hammer[data-astro-cid-ge2uvauf]{left:calc(50% + 26px)}.toolbox-wrap[data-astro-cid-ge2uvauf]:hover .tool[data-astro-cid-ge2uvauf]{opacity:1}.toolbox-wrap[data-astro-cid-ge2uvauf]:hover .t-pick[data-astro-cid-ge2uvauf]{transition-delay:40ms;transform:translateY(-18px)rotate(-14deg)}.toolbox-wrap[data-astro-cid-ge2uvauf]:hover .t-chest[data-astro-cid-ge2uvauf]{transition-delay:0s;transform:translateY(-22px)}.toolbox-wrap[data-astro-cid-ge2uvauf]:hover .t-hammer[data-astro-cid-ge2uvauf]{transition-delay:80ms;transform:translateY(-18px)rotate(14deg)}
