@font-face{font-family:Monogram;src:url(../monogram.ttf)format("truetype");font-display:swap}@property --portrait-reveal-radius{syntax:"<length-percentage>";inherits:true;initial-value:0}@property --portrait-reveal-feather{syntax:"<length>";inherits:true;initial-value:0}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#120e0b;--ink-soft:#19110d;--wood-900:#24160f;--wood-800:#352116;--wood-700:#5a3824;--wood-500:#9b643a;--parchment:#e8d2a8;--parchment-light:#f2e3c6;--gold:#ffd66b;--gold-deep:#c28b4b;--green:#657a45;--green-deep:#36452d;--purple-shadow:#1b1020;--blue:#5b8fa8;--body:"Segoe UI", Inter, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--sans:"Segoe UI", Inter, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--pixel:"Monogram", "Courier New", monospace;--shell:min(1180px, calc(100% - 48px));--shadow:0 24px 80px #0000006b;--frame-edge:#754a2a;--frame-outer:#2b1a11;--frame-cut:8px}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink);scroll-padding-top:88px}body{color:var(--parchment-light);background:radial-gradient(circle at 15% 12%, #5b8fa814, transparent 23rem), linear-gradient(180deg, #0d0d0e 0%, var(--ink) 18%, #100d0a 100%);font-family:var(--body);margin:0;font-size:16px;line-height:1.7;overflow-x:hidden}body.game-open{overflow:hidden}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}img{max-width:100%}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:9999;color:var(--ink);background:var(--gold);padding:10px 16px;position:fixed;top:10px;left:10px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.section-shell{width:var(--shell);z-index:2;margin-inline-start:auto;margin-inline-end:auto;position:relative}.section-shell--narrow{max-width:1060px}.site-header{z-index:100;width:100%;padding:10px 0;transition:padding .18s,background .18s,box-shadow .18s;position:fixed;top:0;left:0}.site-header.is-scrolled,.site-header.is-menu-open{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#120e0bf0;border-bottom:1px solid #c28b4b57;padding:6px 0;box-shadow:0 8px 32px #00000059}.nav-shell{width:var(--shell);clip-path:polygon(6px 0,calc(100% - 6px) 0,100% 6px,100% calc(100% - 6px),calc(100% - 6px) 100%,6px 100%,0 calc(100% - 6px),0 6px);background:linear-gradient(90deg,#5a382440,#0000 16% 84%,#5a382440),#120e0bc7;border:1px solid #c28b4b61;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;min-height:58px;margin-inline-start:auto;margin-inline-end:auto;padding:8px 10px 8px 12px;display:grid;box-shadow:0 0 0 2px #24160feb,0 10px 30px #00000038}.brand{align-items:center;gap:11px;text-decoration:none;display:inline-flex}.brand-mark{width:42px;height:42px;color:var(--gold);background:var(--wood-800);border:1px solid var(--gold-deep);box-shadow:inset 0 0 0 3px var(--wood-900);font-family:var(--pixel);clip-path:polygon(8px 0,calc(100% - 8px) 0,100% 8px,100% 72%,50% 100%,0 72%,0 8px);place-items:center;font-size:32px;line-height:1;display:grid}.brand-name,.nav-links a,.nav-cta{font-family:var(--pixel);letter-spacing:.055em}.brand-name{font-size:32px;line-height:1}.nav-links{justify-content:center;align-items:center;gap:clamp(18px,2.2vw,34px);display:flex}.nav-links a{color:#d6c8ad;font-size:32px;text-decoration:none;transition:color .15s;position:relative}.nav-links a:after{content:"";background:var(--gold);width:0;height:2px;box-shadow:4px 0 0 var(--gold-deep), -4px 0 0 var(--gold-deep);transition:width .15s;position:absolute;bottom:-7px;left:50%;transform:translate(-50%)}.nav-links a:hover,.nav-links a.is-active{color:var(--gold)}.nav-links a.is-active:after{width:18px}.menu-toggle{display:none}.pixel-button{--button-bg:linear-gradient(180deg, #f0bd4d, #c88a2f);--button-color:#21140c;--button-edge:#f6d883;--button-shadow:#3d2617;isolation:isolate;min-height:48px;color:var(--button-color);font-family:var(--pixel);letter-spacing:.04em;cursor:pointer;filter:drop-shadow(0 5px 0 var(--button-shadow)) drop-shadow(0 9px 12px #0000004d);background:0 0;border:0;justify-content:center;align-items:center;gap:12px;padding:11px 22px;font-size:32px;line-height:1;text-decoration:none;transition:transform .12s,filter .12s;display:inline-flex;position:relative}.pixel-button:before{content:"";z-index:-2;background:var(--button-edge);clip-path:polygon(6px 0,calc(100% - 6px) 0,100% 6px,100% calc(100% - 6px),calc(100% - 6px) 100%,6px 100%,0 calc(100% - 6px),0 6px);position:absolute;top:0;bottom:0;left:0;right:0}.pixel-button:after{content:"";z-index:-1;pointer-events:none;background:var(--button-bg);clip-path:polygon(4px 0,calc(100% - 4px) 0,100% 4px,100% calc(100% - 4px),calc(100% - 4px) 100%,4px 100%,0 calc(100% - 4px),0 4px);position:absolute;top:2px;bottom:2px;left:2px;right:2px}.pixel-button:hover{filter:brightness(1.1) drop-shadow(0 7px 0 var(--button-shadow)) drop-shadow(0 13px 16px #0000005c);transform:translateY(-2px)}.pixel-button:active{filter:brightness(1.02) drop-shadow(0 2px 0 var(--button-shadow));transform:translateY(3px)}.pixel-button--small{min-height:40px;padding:9px 16px;font-size:32px}.pixel-button--large{min-height:55px;padding-inline-start:30px;padding-inline-end:30px;font-size:48px}.pixel-button--dark{--button-bg:linear-gradient(180deg, #3d291d, #24160f);--button-color:var(--parchment-light);--button-edge:var(--gold-deep);--button-shadow:#0e0906}.pixel-button--ghost{--button-bg:#17110dad;--button-color:#e5d7bd;--button-edge:#c28b4bb8;--button-shadow:#070504e6}.hero{--star-shift-x:0px;--star-shift-y:0px;isolation:isolate;background:radial-gradient(ellipse at 78% 38%, #5b8fa814, transparent 30%), radial-gradient(ellipse at 18% 62%, #c28b4b0e, transparent 24%), linear-gradient(180deg, #060b12fc 0%, #090d12f7 54%, var(--ink) 100%);align-items:center;min-height:min(100svh,900px);padding:126px 0 78px;display:flex;position:relative;overflow:hidden}.star-field{z-index:-2;pointer-events:none;transform:translate3d(var(--star-shift-x), var(--star-shift-y), 0);will-change:transform;transition:transform .26s ease-out;position:absolute;top:-16px;bottom:-16px;left:-16px;right:-16px}.star{left:var(--star-x);top:var(--star-y);width:var(--star-size);height:var(--star-size);background:var(--star-color);opacity:.2;box-shadow:0 0 var(--star-glow) var(--star-color);animation:star-twinkle var(--star-duration) ease-in-out var(--star-delay) infinite;border-radius:50%;display:block;position:absolute}.hero-shell{align-items:center;display:flex}.hero-copy{width:min(100%,670px);padding-top:10px}.hero h1{color:var(--parchment-light);font-family:var(--pixel);letter-spacing:.025em;text-transform:uppercase;text-shadow:5px 5px #51321f,9px 9px #00000085;margin:0 0 16px;font-size:clamp(72px,8.4vw,126px);font-weight:400;line-height:.73}.hero-role{color:var(--gold);font-family:var(--pixel);letter-spacing:.025em;margin:29px 0 4px;font-size:clamp(32px,2.5vw,40px);line-height:1}.hero-disciplines{color:#d8ccb5;letter-spacing:.055em;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:8px;margin:10px 0 18px;font-size:14px;font-weight:650;display:flex}.hero-disciplines i{background:var(--gold-deep);width:5px;height:5px;transform:rotate(45deg)}.hero-intro{color:#c8c2b7;max-width:520px;margin:0 0 28px;font-size:clamp(18px,1.5vw,21px);line-height:1.55}.hero-actions{flex-wrap:wrap;gap:15px;display:flex}.hero-actions .pixel-button:first-child{flex-basis:100%;width:-moz-fit-content;width:fit-content}.scroll-cue{width:28px;height:40px;position:absolute;bottom:26px;left:50%;transform:translate(-50%)}.scroll-cue:before,.scroll-cue:after,.scroll-cue span:after{content:"";border-right:3px solid var(--gold-deep);border-bottom:3px solid var(--gold-deep);width:12px;height:12px;position:absolute;transform:rotate(45deg)}.scroll-cue:before{opacity:.35;top:0;left:7px}.scroll-cue:after{opacity:.65;top:9px;left:7px}.scroll-cue span:after{top:18px;left:7px}.framed-section{background:linear-gradient(90deg,#42281938,#0000 14% 86%,#42281938),repeating-linear-gradient(0deg,#ffffff02 0 1px,#0000 1px 6px),#15100d;border-top:1px solid #c28b4b61;border-bottom:1px solid #c28b4b52;position:relative}.framed-section:before,.framed-section:after{content:"";background:linear-gradient(180deg, var(--wood-700), var(--wood-900));border-block:1px solid var(--gold-deep);width:38%;height:10px;position:absolute;top:-6px}.framed-section:before{left:0}.framed-section:after{right:0}.about{padding:112px 0}.about-grid{background:var(--wood-900);box-shadow:0 0 0 2px var(--gold-deep), 0 0 0 8px #2e1b11, var(--shadow);clip-path:polygon(10px 0,calc(100% - 10px) 0,100% 10px,100% calc(100% - 10px),calc(100% - 10px) 100%,10px 100%,0 calc(100% - 10px),0 10px);border:3px solid #120b07;grid-template-columns:.76fr 1.24fr;align-items:stretch;gap:0;display:grid}.character-card{background:linear-gradient(90deg,#0000 47%,#5b8fa814 48% 52%,#0000 53%),linear-gradient(#171311,#0e0c0b);border-right:5px solid #5a3824;min-height:520px;position:relative;overflow:hidden}.character-card:before{content:"";background:radial-gradient(circle at 50% 22%,#5b8fa829,#0000 38%);border:2px solid #5a3824;position:absolute;top:6%;bottom:13%;left:8%;right:8%;box-shadow:inset 0 0 0 5px #20130d}.character-room{--portrait-reveal-x:70%;--portrait-reveal-y:70%;--portrait-reveal-radius:0px;--portrait-reveal-target-radius:0px;--portrait-reveal-feather:0px;cursor:crosshair;isolation:isolate;border:2px solid #5a3824;transition:--portrait-reveal-radius .22s cubic-bezier(.22,1,.36,1),--portrait-reveal-feather .22s;position:absolute;top:8%;bottom:14%;left:9%;right:9%;overflow:hidden;box-shadow:inset 0 0 28px #00000073}.character-room.is-revealing{--portrait-reveal-radius:var(--portrait-reveal-target-radius);--portrait-reveal-feather:12px}.character-sprite{object-fit:cover;object-position:50% 32%;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block;position:absolute;top:0;bottom:0;left:0;right:0}.character-photo{z-index:0;image-rendering:auto;filter:saturate(.9)contrast(1.03)brightness(.92);transform:scale(1.002)}.character-pixel-portrait{z-index:1;image-rendering:pixelated;filter:saturate(.88)contrast(1.04)brightness(.92);-webkit-mask-image:radial-gradient(circle at var(--portrait-reveal-x) var(--portrait-reveal-y), transparent 0 var(--portrait-reveal-radius), #000 calc(var(--portrait-reveal-radius) + var(--portrait-reveal-feather)));-webkit-mask-image:radial-gradient(circle at var(--portrait-reveal-x) var(--portrait-reveal-y), transparent 0 var(--portrait-reveal-radius), #000 calc(var(--portrait-reveal-radius) + var(--portrait-reveal-feather)));mask-image:radial-gradient(circle at var(--portrait-reveal-x) var(--portrait-reveal-y), transparent 0 var(--portrait-reveal-radius), #000 calc(var(--portrait-reveal-radius) + var(--portrait-reveal-feather)));-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.character-name{z-index:3;width:max-content;max-width:90%;color:var(--gold);border:1px solid var(--gold-deep);font-family:var(--pixel);letter-spacing:.05em;background:#21140d;padding:7px 13px;font-size:32px;position:absolute;bottom:22px;left:50%;transform:translate(-50%)}.parchment{color:#2b1b11;box-shadow:none;text-align:center;background:url(../aboutmepaper.webp) 50%/100% 100% no-repeat;align-self:center;margin:34px;padding:clamp(40px,5vw,72px);position:relative}.parchment p{margin:0 0 17px;font-size:17px;line-height:1.72}.parchment p:last-child{margin-bottom:0}.tag-row{flex-wrap:wrap;gap:8px;display:flex}.tag-row span{color:#f0e1c1;background:var(--green-deep);font-family:var(--pixel);letter-spacing:.03em;clip-path:polygon(4px 0,calc(100% - 4px) 0,100% 4px,100% calc(100% - 4px),calc(100% - 4px) 100%,4px 100%,0 calc(100% - 4px),0 4px);border:1px solid #7f8758;padding:6px 10px;font-size:32px;line-height:1}.section-heading{text-align:center;grid-template-columns:minmax(28px,1fr) auto minmax(28px,1fr);align-items:center;gap:clamp(18px,3.5vw,45px);margin:0 auto 58px;display:grid}.section-heading>div,.quest-copy,.quest-actions,.experience-item strong,.experience-item em{min-width:0}.section-heading h2{color:var(--parchment-light);font-family:var(--pixel);letter-spacing:.05em;text-transform:uppercase;text-shadow:3px 3px #42271a;margin:0;font-size:clamp(43px,5vw,66px);font-weight:400;line-height:.9}.section-heading p{color:#b9ad99;max-width:560px;margin:12px auto 0;font-size:16px;line-height:1.55}.section-heading--dark{grid-template-columns:1fr auto 1fr;margin-bottom:28px}.section-heading--dark h2{color:#3d2618;text-shadow:none;font-size:clamp(42px,4vw,58px)}.heading-rule{background:linear-gradient(90deg, transparent, var(--gold-deep));height:2px}.heading-rule:last-child{transform:scaleX(-1)}.section-heading--dark .heading-rule{background:linear-gradient(90deg,#0000,#8d6238)}.house-preview{background:radial-gradient(at 50% 72%,#657a4514,#0000 43%),linear-gradient(#0c0f12,#11100e 72%,#15100d);padding:78px 0 86px;position:relative;overflow:hidden}.house-preview .section-heading{margin-bottom:36px}.house-stage{aspect-ratio:1.32;width:min(880px,94%);box-shadow:0 0 0 6px #24160f, 0 0 0 8px var(--gold-deep), var(--shadow);clip-path:polygon(10px 0,calc(100% - 10px) 0,100% 10px,100% calc(100% - 10px),calc(100% - 10px) 100%,10px 100%,0 calc(100% - 10px),0 10px);background:radial-gradient(circle at 50% 45%,#5b8fa814,#0000 45%),#080c0f;border:2px solid #6b4429;place-items:center;margin-inline-start:auto;margin-inline-end:auto;padding:clamp(10px,1.5vw,18px);display:grid;position:relative}.house-stage:after{content:"";pointer-events:none;background:linear-gradient(#0000,#120e0bbf);height:21%;position:absolute;top:auto;bottom:0;left:0;right:0}.house-stage img{object-fit:contain;width:100%;height:100%;image-rendering:pixelated;filter:brightness(.72)saturate(.86)drop-shadow(0 20px 18px #00000080)}.pixel-button.house-enter-overlay{--button-bg:linear-gradient(180deg, #352518fa, #18100bfa);--button-color:#ffe5a0;--button-edge:#d1a34d;--button-shadow:#080503;z-index:3;letter-spacing:.06em;text-align:center;width:max-content;max-width:calc(100% - 32px);min-height:66px;filter:drop-shadow(0 6px 0 var(--button-shadow)) drop-shadow(0 0 16px #ffc8543d) drop-shadow(0 14px 20px #0000007a);gap:14px;padding:14px 22px;font-size:30px;transition:transform .14s,filter .14s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.house-enter-mark{background:var(--gold);flex:0 0 17px;width:17px;height:17px;position:relative;transform:rotate(45deg);box-shadow:0 0 10px #ffd66b8c}.house-enter-mark:after{content:"";background:#3a2517;position:absolute;top:4px;bottom:4px;left:4px;right:4px}.house-enter-arrow{color:var(--gold);font-size:1.18em;transition:transform .14s}.pixel-button.house-enter-overlay:hover{filter:brightness(1.12) drop-shadow(0 8px 0 var(--button-shadow)) drop-shadow(0 0 24px #ffc85466) drop-shadow(0 16px 22px #00000085);transform:translate(-50%,calc(-50% - 3px))}.pixel-button.house-enter-overlay:hover .house-enter-arrow{transform:translate(3px)}.pixel-button.house-enter-overlay:active{filter:brightness(1.05) drop-shadow(0 2px 0 var(--button-shadow)) drop-shadow(0 0 14px #ffc85447);transform:translate(-50%,calc(1px - 50%))}.featured{background:radial-gradient(circle at 82% 30%,#657a450f,#0000 24rem),#0f0d0b;padding:122px 0 130px}.quest-list{gap:20px;display:grid}.quest-card{color:#2c1b11;background:linear-gradient(90deg, #78492224, transparent 18% 82%, #7849221a), repeating-linear-gradient(3deg, #4a2e1706 0 1px, transparent 1px 7px), var(--parchment);clip-path:polygon(8px 0,calc(100% - 8px) 0,100% 8px,100% calc(100% - 8px),calc(100% - 8px) 100%,8px 100%,0 calc(100% - 8px),0 8px);border:2px solid #8e5d32;grid-template-columns:155px 1fr 145px;align-items:center;gap:28px;min-height:210px;padding:24px 26px;transition:transform .18s,box-shadow .18s,filter .18s;display:grid;position:relative;box-shadow:0 0 0 5px #332015,0 0 0 7px #754a2a,0 14px 32px #0000005c}@media (hover:hover){.quest-card:hover{filter:brightness(1.025);transform:translateY(-3px);box-shadow:0 0 0 5px #332015,0 0 0 7px #8f5e35,0 20px 38px #0000006b}}.quest-icon{background:radial-gradient(circle,#ffd66b1f,#0000 60%),#14130f;border:2px solid #6c492c;place-items:center;height:150px;padding:10px;display:grid;overflow:visible;box-shadow:inset 0 0 24px #050403,0 0 0 4px #3d2719}.quest-icon span{width:78px;height:78px;color:var(--gold);border:4px dashed var(--gold-deep);font-family:var(--pixel);background:#283025;place-items:center;font-size:64px;line-height:1;display:grid;box-shadow:0 0 18px #ffd66b29}.quest-icon--house span{background:#362418;font-size:64px}.quest-icon--brain span{color:#a3d0de;border-color:var(--blue);background:#1c2830}.quest-icon--web span{color:#acd8dc;background:#1b3030;border-color:#518d93}.quest-icon--medical span{color:#e8c2c0;background:#392422;border-color:#9d6562}.quest-icon--network span{color:#d6c4ee;background:#2b2438;border-color:#766293}.quest-icon--road span{color:#f3d583;background:#38301c;border-color:#a17b28}.quest-type{color:#73522f;font-family:var(--pixel);letter-spacing:.06em;text-transform:uppercase;margin:0 0 4px;font-size:32px;line-height:1}.quest-copy h3{color:#2d1b11;font-family:var(--pixel);letter-spacing:.03em;margin:0 0 11px;font-size:clamp(40px,3.2vw,48px);font-weight:400;line-height:.95}.quest-copy>p:not(.quest-type){margin:0 0 14px;font-size:14px;line-height:1.55}.quest-actions{flex-direction:column;gap:12px;display:flex}.text-link{color:#2e1b10;font-family:var(--pixel);letter-spacing:.03em;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #9c6538;justify-content:space-between;align-items:center;padding:11px 4px;font-size:32px;line-height:1;text-decoration:none;display:flex}.text-link:hover span{transform:translate(3px)}.text-link span{color:#8c5a30;transition:transform .12s}.text-link .project-detail-label{color:inherit;transform:none}.text-link--muted{color:#6f604c;border-bottom-color:#5b462e59}.text-link--placeholder{color:#786b59;cursor:default;border-bottom-style:dashed;border-bottom-color:#5b462e6b}.text-link--placeholder span{color:#8a755c;font-size:15px}.project-detail{border-top:1px solid #6f47276b;grid-column:1/-1;grid-template-columns:155px 1fr;gap:28px;padding:20px 8px 2px;display:grid}.project-detail[hidden]{display:none}.project-detail h4{color:#73522f;font-family:var(--pixel);letter-spacing:.05em;text-transform:uppercase;margin:0;font-size:32px;font-weight:400;line-height:1}.project-detail p{margin:0;font-size:14px;line-height:1.65}.project-tabs{gap:24px;display:grid}.project-tablist{clip-path:polygon(8px 0,calc(100% - 8px) 0,100% 8px,100% calc(100% - 8px),calc(100% - 8px) 100%,8px 100%,0 calc(100% - 8px),0 8px);background:repeating-linear-gradient(90deg,#0000 0 94px,#ffffff04 95px 96px),#14110e;border:2px solid #5b3923;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:8px;display:grid;box-shadow:0 0 0 4px #24160f,0 10px 26px #0000004d}.project-tab{color:#b8aa94;min-width:0;min-height:68px;font-family:var(--pixel);text-align:center;cursor:pointer;background:0 0;border:1px solid #0000;place-content:center;gap:4px;padding:11px 16px;line-height:1;transition:color .15s,background-color .15s,border-color .15s;display:grid}.project-tab span{font-size:32px}.project-tab small{color:#817563;font-family:var(--sans);letter-spacing:.08em;text-transform:uppercase;font-size:11px}.project-tab:hover{color:var(--parchment-light);border-color:#c28b4b73}.project-tab.is-active{color:#25160d;background:var(--gold);clip-path:polygon(5px 0,calc(100% - 5px) 0,100% 5px,100% calc(100% - 5px),calc(100% - 5px) 100%,5px 100%,0 calc(100% - 5px),0 5px);border-color:#f1cc78;box-shadow:inset 0 -4px #a56a2b}.project-tab.is-active small{color:#51321f}.project-tab:focus-visible{outline:3px solid var(--parchment-light);outline-offset:3px}.project-tab-panel[hidden]{display:none}.project-tab-panel .quest-list{gap:24px}.project-resource-slots{grid-column:2;gap:0;display:grid}.project-resource-slot{border-top:1px dashed #6f472780;grid-template-columns:44px 1fr;align-items:center;gap:12px;min-height:58px;padding:10px 0;display:grid}.project-resource-slot:last-child{border-bottom:1px dashed #6f472780}.project-resource-slot>span{width:40px;height:32px;color:var(--gold);font-family:var(--pixel);background:#2c1c13;place-items:center;font-size:32px;line-height:1;display:grid}.project-resource-slot>div{display:grid}.project-resource-slot strong{color:#3f2919;font-family:var(--pixel);font-size:32px;font-weight:400;line-height:1}.project-resource-slot small{color:#76654f;font-size:12px}.experience{padding:118px 0 128px}.quest-board{box-shadow:0 0 0 3px #6f472b, 0 0 0 7px #28180f, var(--shadow), inset 0 0 45px #0000007a;background:repeating-linear-gradient(90deg,#0000 0 94px,#0e080521 95px 98px),linear-gradient(#4b2e1c,#28180f);border:3px solid #100a06;padding:clamp(22px,4vw,48px)}.experience-item{color:#2d1b11;background:var(--parchment);clip-path:polygon(5px 0,calc(100% - 5px) 0,100% 5px,100% calc(100% - 5px),calc(100% - 5px) 100%,5px 100%,0 calc(100% - 5px),0 5px);border:1px solid #9a6a3d;margin-bottom:13px;box-shadow:0 5px #20130c,inset 0 0 24px #5d341614}.experience-item:last-child{margin-bottom:0}.experience-item>button{width:100%;min-height:76px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:38px 92px 1fr minmax(160px,.72fr);align-items:center;gap:16px;padding:14px 18px;display:grid}.expand-icon{width:30px;height:30px;color:var(--parchment-light);background:var(--green-deep);font-family:var(--pixel);border:2px solid #82905a;place-items:center;font-size:32px;line-height:.8;display:grid;box-shadow:0 3px #1c2719}.experience-item time,.experience-item strong{font-family:var(--pixel);font-weight:400;line-height:1}.experience-item time{color:#566439;font-size:32px}.experience-item strong{letter-spacing:.025em;font-size:32px}.experience-item em{color:#5c4935;text-align:right;font-size:13px;font-style:normal}.experience-detail{grid-template-rows:0fr;transition:grid-template-rows .22s;display:grid}.experience-detail p{border-top:0 solid #5a382438;min-height:0;margin:0;padding:0 32px;line-height:1.65;transition:padding .22s,border-width .22s;overflow:hidden}.experience-item.is-open .experience-detail{grid-template-rows:1fr}.experience-item.is-open .experience-detail p{border-top-width:1px;padding:21px 32px 25px}.skills{background:radial-gradient(circle at 80% 65%,#657a4514,#0000 20rem),#0f0d0a;padding:120px 0 128px}.inventory{box-shadow:0 0 0 3px #75482a, 0 0 0 8px #2b1a11, var(--shadow), inset 0 0 60px #0009;background:linear-gradient(90deg,#16120e,#100e0b);border:3px solid #100a06;padding:clamp(26px,4vw,44px);position:relative}.inventory-row{grid-template-columns:150px 1fr;align-items:center;gap:17px;min-height:120px;padding:13px 0;display:grid}.inventory-row+.inventory-row{border-top:7px solid #4a2d1c;box-shadow:inset 0 5px #28180f}.inventory-row h3{color:var(--gold);font-family:var(--pixel);letter-spacing:.04em;margin:0;font-size:32px;font-weight:400;line-height:.95}.inventory-row>div{flex-wrap:wrap;gap:8px;display:flex}.inventory-row span{color:#ead9b8;min-height:43px;font-family:var(--pixel);letter-spacing:.02em;clip-path:polygon(4px 0,calc(100% - 4px) 0,100% 4px,100% calc(100% - 4px),calc(100% - 4px) 100%,4px 100%,0 calc(100% - 4px),0 4px);background:#253024;border:1px solid #87905d;align-items:center;gap:8px;padding:10px 12px;font-size:32px;line-height:1;transition:transform .12s,filter .12s;display:inline-flex;box-shadow:inset 0 0 0 2px #172016,0 4px #10160f}.skill-icon{object-fit:contain;flex:0 0 24px;width:24px;height:24px}.inventory-row span:hover{filter:brightness(1.15);transform:translateY(-3px)}.contact{background:radial-gradient(circle at 19% 67%,#c28b4b1a,#0000 21rem),linear-gradient(#0c0e10,#0c0c0d 64%,#11100d);padding:120px 0 110px}.contact-grid{grid-template-columns:.85fr 1.15fr;align-items:stretch;gap:clamp(28px,5vw,72px);display:grid}.writing-desk{clip-path:polygon(8px 0,calc(100% - 8px) 0,100% 8px,100% calc(100% - 8px),calc(100% - 8px) 100%,8px 100%,0 calc(100% - 8px),0 8px);background:radial-gradient(circle at 20% 18%,#c28b4b17,#0000 28%),repeating-linear-gradient(0deg,#ffffff02 0 1px,#0000 1px 7px),#10100f;border:2px solid #5b3923;flex-direction:column;justify-content:center;min-height:420px;padding:clamp(28px,4vw,44px);display:flex;position:relative;box-shadow:inset 0 0 55px #050505,0 0 0 5px #26170f,0 0 0 7px #79502f}.letter-card{color:#3b2617;background:var(--parchment);border:2px solid #9b643a;flex-direction:column;width:100%;margin:0 auto 30px;padding:28px;display:flex;box-shadow:7px 9px #00000057}.letter-card span{font-family:Georgia,serif;font-style:italic}.letter-card strong{font-family:var(--pixel);margin-top:6px;font-size:40px;font-weight:400;line-height:1.05}.contact-links{flex-wrap:wrap;gap:9px;display:flex}.contact-links a{color:#eadabb;border:1px solid var(--gold-deep);min-width:95px;font-family:var(--pixel);background:#20140e;flex:1;justify-content:space-between;align-items:center;padding:10px;font-size:32px;line-height:1;text-decoration:none;transition:color .14s,background .14s,transform .14s;display:flex}.contact-links a:hover{color:var(--gold);background:#2a1a11;transform:translateY(-2px)}.contact-form{padding-top:4px;display:grid}.contact-form label{color:var(--gold);font-family:var(--pixel);letter-spacing:.04em;margin:0 0 6px;font-size:32px;line-height:1}.contact-form input,.contact-form textarea{width:100%;color:var(--parchment-light);caret-color:var(--gold);background:#16120fd6;border:1px solid #8b5b33;border-radius:0;margin-bottom:20px;padding:14px 16px;font-size:15px;line-height:1.5;transition:border-color .12s,box-shadow .12s;box-shadow:inset 0 0 0 3px #0c0b0a,0 4px #070605}.contact-form textarea{resize:vertical}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#746b5f}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--gold);outline:0;box-shadow:inset 0 0 0 3px #0c0b0a,0 4px #070605,0 0 0 3px #ffd66b1f}.contact-form .pixel-button{justify-self:stretch;font-size:clamp(26px,2.2vw,30px)}.form-status{color:#b8ce91;text-align:center;min-height:26px;margin:15px 0 0;font-size:14px}.site-footer{min-height:180px;box-shadow:inset 0 1px 0 var(--gold-deep);background:radial-gradient(circle at 20% 100%,#ffbe441f,#0000 12rem),linear-gradient(#0a0e13,#080a0d);border-top:7px solid #3a2317;grid-template-columns:auto 1fr auto;align-items:center;gap:30px;padding:38px max(24px,50% - 590px);display:grid}.site-footer>div:nth-child(2){flex-direction:column;display:flex}.site-footer strong{color:var(--gold);font-family:var(--pixel);font-size:32px;font-weight:400;line-height:1}.site-footer span{color:#877e70;font-size:13px}.footer-links{gap:24px;display:flex}.footer-links a{color:#cbbfa9;font-family:var(--pixel);font-size:32px;text-decoration:none}.footer-links a:hover{color:var(--gold)}.footer-campfire{object-fit:contain;width:48px;height:48px;image-rendering:pixelated;transform-origin:50% 85%;filter:drop-shadow(0 0 9px #ffbe4473);animation:1.35s ease-in-out infinite alternate campfire-sprite-flicker}.reveal{transition:opacity .6s ease var(--reveal-delay,0s), transform .6s ease var(--reveal-delay,0s)}.reveal.is-pending{opacity:0;transform:translateY(22px)}.reveal.is-visible{opacity:1;transform:none}.game-overlay{z-index:1000;visibility:hidden;opacity:0;pointer-events:none;background:#09090b;grid-template-rows:auto 1fr;height:100dvh;transition:opacity .22s,transform .22s,visibility 0s linear .22s;display:grid;position:fixed;top:0;bottom:0;left:0;right:0;transform:scale(1.02)}.game-overlay.is-open{visibility:visible;opacity:1;pointer-events:auto;transition-delay:0s;transform:scale(1)}.game-toolbar{z-index:5;min-height:72px;padding-top:max(10px, env(safe-area-inset-top));padding-right:max(clamp(14px, 3vw, 34px), env(safe-area-inset-right));padding-bottom:10px;padding-left:max(clamp(14px, 3vw, 34px), env(safe-area-inset-left));border-bottom:2px solid var(--gold-deep);background:linear-gradient(#28180f,#17100c);grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;display:grid;position:relative;box-shadow:0 8px 24px #00000073}.game-toolbar>div{grid-template-columns:12px auto;align-items:center;column-gap:10px;min-width:0;display:grid}.game-toolbar strong{color:var(--gold);font-family:var(--pixel);font-size:32px;font-weight:400;line-height:1}.game-toolbar small{color:#938676;letter-spacing:.06em;text-transform:uppercase;grid-column:2;font-size:10px}.game-status-dot{background:#a7cc71;grid-row:1/3;width:9px;height:9px;box-shadow:0 0 12px #a7cc71b3}.game-toolbar p{color:#a99c89;text-align:center;max-width:440px;margin:0;font-size:12px}.game-toolbar kbd{min-width:24px;color:var(--parchment-light);font-family:var(--pixel);background:#3b2619;border:1px solid #805535;place-items:center;margin-left:4px;padding:2px 6px;font-size:24px;display:inline-grid;box-shadow:0 2px #0e0906}.game-toolbar>button{min-height:44px;color:var(--parchment-light);border:1px solid var(--gold-deep);font-family:var(--pixel);cursor:pointer;background:#2d1c13;justify-self:end;padding:9px 13px;font-size:32px;line-height:1}.game-toolbar>button span{color:var(--gold);margin-left:8px;font-size:22px}#game-app{background:var(--purple-shadow);min-height:0;position:relative;overflow:hidden}#game{width:100%;height:100%;image-rendering:pixelated;touch-action:none;display:block}#game:focus-visible{outline:2px solid var(--gold);outline-offset:-4px}#ui{z-index:4;pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}.game-note{color:#d9cdb9;border-left:2px solid var(--gold);max-width:min(520px,100% - 36px);font-family:var(--pixel);letter-spacing:.03em;background:#120e0bd1;margin:0;padding:8px 12px;font-size:32px;line-height:1;transition:opacity .18s,transform .18s;position:absolute;top:15px;left:18px}.game-note.is-dismissed{opacity:0;transform:translateY(-8px)}.game-note.is-error{color:#f1c3b9;border-left-color:#d76f61}#textbox-container:not([hidden]){display:block}#textbox-container{pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}#textbox{left:max(20px, env(safe-area-inset-left));right:max(20px, env(safe-area-inset-right));bottom:max(24px, env(safe-area-inset-bottom));pointer-events:auto;width:auto;max-width:820px;max-height:min(60vh,520px);color:var(--parchment-light);border:2px solid var(--gold-deep);clip-path:polygon(8px 0,calc(100% - 8px) 0,100% 8px,100% calc(100% - 8px),calc(100% - 8px) 100%,8px 100%,0 calc(100% - 8px),0 8px);background:linear-gradient(#342016fa,#160f0cfa);flex-direction:column;margin-inline-start:auto;margin-inline-end:auto;padding:24px;display:flex;position:absolute;box-shadow:0 0 0 5px #21140d,0 14px #0000008c,0 24px 60px #0000008c,inset 0 0 35px #00000061}.ui-text{color:#e5dbc7;flex:1;min-height:0;margin:0;font-size:16px;line-height:1.65;overflow-y:auto}.ui-text strong{color:var(--gold);font-family:var(--pixel);font-size:32px;font-weight:400;line-height:1}.ui-text a{color:#a8d6e6;text-underline-offset:3px}.btn-container{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:18px;display:flex}.dialogue-hint{color:#a99c89;font-family:var(--pixel);letter-spacing:.03em;font-size:32px}.ui-close-btn{color:#21140d;background:var(--gold);min-height:44px;font-family:var(--pixel);cursor:pointer;border:2px solid #f8df9e;margin-left:auto;padding:9px 14px;font-size:32px;line-height:1;box-shadow:0 4px #72421f}.about-grid,.house-stage,.quest-board,.inventory,.writing-desk{border:2px solid var(--frame-edge);box-shadow:0 0 0 4px var(--frame-outer), var(--shadow);clip-path:polygon(var(--frame-cut) 0, calc(100% - var(--frame-cut)) 0, 100% var(--frame-cut), 100% calc(100% - var(--frame-cut)), calc(100% - var(--frame-cut)) 100%, var(--frame-cut) 100%, 0 calc(100% - var(--frame-cut)), 0 var(--frame-cut))}.brand-mark,.brand-name,.nav-links a,.pixel-button,.hero h1,.hero-role,.character-name,.tag-row span,.section-heading h2,.quest-icon span,.quest-type,.quest-copy h3,.text-link,.project-detail h4,.project-tab,.project-resource-slot>span,.project-resource-slot strong,.expand-icon,.experience-item time,.experience-item strong,.inventory-row h3,.inventory-row span,.letter-card strong,.contact-links a,.contact-form label,.site-footer strong,.footer-links a,.game-toolbar strong,.game-toolbar kbd,.game-toolbar>button,.game-note,.ui-text strong,.dialogue-hint,.ui-close-btn{font-synthesis:none;font-kerning:none;font-variant-ligatures:none}.brand-mark,.brand-name,.nav-links a,.pixel-button,.character-name,.tag-row span,.quest-icon span,.quest-type,.text-link,.project-detail h4,.project-tab,.project-resource-slot>span,.project-resource-slot strong,.expand-icon,.experience-item time,.experience-item strong,.inventory-row h3,.inventory-row span,.contact-links a,.contact-form label,.site-footer strong,.footer-links a,.game-toolbar strong,.game-toolbar kbd,.game-toolbar>button,.game-note,.ui-text strong,.dialogue-hint,.ui-close-btn{line-height:.8}.brand-mark,.brand-name,.nav-links a,.quest-icon span,.inventory-row h3,.inventory-row span,.contact-links a,.site-footer strong,.footer-links a,.game-toolbar strong,.game-toolbar kbd,.game-toolbar>button,.game-note,.ui-text strong,.dialogue-hint{text-shadow:1px 1px #000000b3}.project-tab.is-active{text-shadow:none}.nav-shell{min-height:52px;padding:6px 9px 6px 10px}.brand-mark{width:38px;height:38px}.brand-mark,.brand-name,.nav-links a,.pixel-button,.character-name,.tag-row span,.quest-type,.text-link,.project-detail h4,.project-tab,.project-resource-slot>span,.project-resource-slot strong,.expand-icon,.experience-item time,.experience-item strong,.inventory-row h3,.inventory-row span,.contact-links a,.contact-form label,.site-footer strong,.footer-links a,.game-toolbar strong,.game-toolbar kbd,.game-toolbar>button,.game-note,.ui-text strong,.dialogue-hint,.ui-close-btn{font-size:24px}.pixel-button--large{font-size:40px}.hero-role{font-size:clamp(28px,2.3vw,36px)}.quest-icon span,.quest-icon--house span{font-size:48px}.quest-copy h3{font-size:clamp(36px,3vw,44px)}.letter-card strong{font-size:32px}.nav-shell,.brand-mark,.about-grid,.tag-row span,.house-stage,.quest-card,.project-tablist,.project-tab.is-active,.quest-board,.experience-item,.inventory,.inventory-row span,.writing-desk,#textbox{clip-path:none;border-radius:3px}.brand-mark,.quest-icon,.quest-icon span,.expand-icon{flex:none;overflow:visible}.writing-desk{box-shadow:inset 0 0 55px #050505, 0 0 0 4px var(--frame-outer), var(--shadow)}main section:not(.hero){isolation:isolate}main section:not(.hero)>.section-shell{z-index:2;position:relative}.motion-decor{z-index:1;pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.motion-mote{left:var(--mote-x);top:var(--mote-y);width:var(--mote-size);height:var(--mote-size);background:var(--mote-color);box-shadow:0 0 8px color-mix(in srgb, var(--mote-color), transparent 24%);opacity:0;animation:motion-mote-rise var(--mote-duration) linear var(--mote-delay) infinite;position:absolute;transform:rotate(45deg)}.motion-parallax{translate:0 var(--motion-y,0);will-change:translate;transition:translate .1s linear}.brand-mark{animation:3.6s ease-in-out infinite brand-crest-glow}.nav-links a.is-active:before{content:"";background:var(--gold);width:4px;height:4px;box-shadow:0 0 9px var(--gold);animation:1.4s ease-in-out infinite active-nav-pulse;position:absolute;bottom:-7px;left:50%;transform:translate(-50%)rotate(45deg)}.hero h1{transform-origin:30% 60%;animation:5.5s ease-in-out infinite hero-title-hover}.hero-role{animation:3.8s ease-in-out infinite hero-role-glow}.hero-disciplines i{animation:1.8s ease-in-out infinite discipline-pulse}.hero-disciplines i:nth-of-type(2){animation-delay:-.6s}.hero-disciplines i:nth-of-type(3){animation-delay:-1.2s}.hero-actions .pixel-button:after,.nav-cta:after{background-size:220% 100%;animation:4.8s ease-in-out infinite button-sheen}.hero-actions .pixel-button:nth-child(2):after{animation-delay:-1.6s}.hero-actions .pixel-button:nth-child(3):after{animation-delay:-3.2s}.scroll-cue{animation:1.8s ease-in-out infinite scroll-cue-bob}.section-heading.is-visible h2{animation:heading-glow 4.2s ease-in-out calc(var(--reveal-delay,0s) + .5s) infinite}.heading-rule{opacity:.32;position:relative;overflow:hidden}.heading-rule:after{content:"";background:linear-gradient(90deg, transparent, var(--gold-deep));opacity:0;transform-origin:0;animation:3.4s cubic-bezier(.32,0,.18,1) infinite heading-rule-charge;position:absolute;top:0;bottom:0;left:0;right:0;transform:scaleX(0)}.section-heading--dark .heading-rule:after{background:linear-gradient(90deg,#0000,#8d6238)}.character-card.is-visible{animation:portrait-card-float 5.8s ease-in-out calc(var(--reveal-delay,0s) + .7s) infinite}.character-card:after{content:"";z-index:2;pointer-events:none;background:linear-gradient(90deg,#0000,#ffdd9221,#0000);width:32%;height:170%;animation:6.8s ease-in-out infinite portrait-frame-glint;position:absolute;top:-35%;left:-55%;transform:rotate(14deg)}.character-name{animation:2.8s ease-in-out infinite character-name-glow}.parchment.is-visible{animation:parchment-hover 6.4s ease-in-out calc(var(--reveal-delay,0s) + .7s) infinite}.house-stage.is-visible{animation:house-stage-hover 6s ease-in-out calc(var(--reveal-delay,0s) + .7s) infinite}.house-stage:before{content:"";z-index:2;pointer-events:none;border:1px solid #ffd66b24;animation:3.2s ease-in-out infinite house-stage-border;position:absolute;top:10px;bottom:10px;left:10px;right:10px;box-shadow:inset 0 0 18px #ffd66b0f}.house-enter-mark{animation:1.9s ease-in-out infinite house-entry-mark}.project-tabs.is-visible .project-tab-panel:not([hidden]) .quest-card{animation:.62s cubic-bezier(.2,.75,.25,1) backwards quest-card-arrive}.project-tabs.is-visible .project-tab-panel:not([hidden]) .quest-card:nth-child(2){animation-delay:90ms}.project-tabs.is-visible .project-tab-panel:not([hidden]) .quest-card:nth-child(3){animation-delay:.18s}.project-tab.is-active{animation:2.6s ease-in-out infinite active-tab-glow}.quest-icon span{animation:3.4s ease-in-out infinite quest-token-hover}.quest-card:nth-child(2n) .quest-icon span{animation-delay:-1.1s}.quest-card:nth-child(3n) .quest-icon span{animation-delay:-2.2s}.quest-board.is-visible .experience-item{animation:.56s cubic-bezier(.2,.75,.25,1) backwards experience-row-arrive}.quest-board.is-visible .experience-item:nth-child(2){animation-delay:90ms}.quest-board.is-visible .experience-item:nth-child(3){animation-delay:.18s}.experience-item.is-open .expand-icon{animation:1.8s ease-in-out infinite expand-token-pulse}.inventory:before{content:"";z-index:0;pointer-events:none;opacity:.28;background:linear-gradient(105deg,#0000 36%,#ffd66b1f 48%,#0000 60%) 0 0/240% 100%;animation:5.8s linear infinite inventory-scan;position:absolute;top:7px;bottom:7px;left:7px;right:7px}.inventory>*{z-index:1;position:relative}.inventory.is-visible .inventory-row{animation:.6s cubic-bezier(.2,.75,.25,1) backwards inventory-row-arrive}.inventory.is-visible .inventory-row:nth-child(2){animation-delay:80ms}.inventory.is-visible .inventory-row:nth-child(3){animation-delay:.16s}.inventory.is-visible .inventory-row:nth-child(4){animation-delay:.24s}.inventory.is-visible .inventory-row:nth-child(5){animation-delay:.32s}.skill-icon{animation:2.8s ease-in-out infinite skill-icon-bob}.inventory-row span:nth-child(2n) .skill-icon{animation-delay:-.7s}.inventory-row span:nth-child(3n) .skill-icon{animation-delay:-1.4s}.inventory-row span:nth-child(4n) .skill-icon{animation-delay:-2.1s}.writing-desk.is-visible{animation:writing-desk-breathe 5.6s ease-in-out calc(var(--reveal-delay,0s) + .7s) infinite}.letter-card{animation:4.4s ease-in-out infinite letter-card-hover}.contact-form.is-visible{animation:contact-form-glow 4.6s ease-in-out calc(var(--reveal-delay,0s) + .7s) infinite}.contact-links a span,.footer-links a{transition:color .14s,transform .14s,text-shadow .14s}.contact-links a:hover span{transform:translate(3px,-2px)}.footer-links a:hover{text-shadow:0 0 12px #ffd66b6b;transform:translateY(-2px)}@keyframes star-twinkle{0%,to{opacity:.16;transform:scale(.72)}48%{opacity:var(--star-peak);transform:scale(1.22)}58%{opacity:.46;transform:scale(.96)}}@keyframes campfire-sprite-flicker{0%{filter:brightness(.92)drop-shadow(0 0 7px #ffbe445c);transform:scale(.97,.94)}to{filter:brightness(1.18)drop-shadow(0 0 12px #ffbe449e);transform:scale(1.03,1.07)}}@keyframes motion-mote-rise{0%{opacity:0;transform:translateY(24px)rotate(45deg)scale(.6)}14%{opacity:.56}70%{opacity:.36}to{opacity:0;transform:translate3d(var(--mote-drift), -125px, 0) rotate(225deg) scale(1.15)}}@keyframes brand-crest-glow{0%,to{filter:drop-shadow(0 0 #ffd66b00)}50%{filter:brightness(1.18)drop-shadow(0 0 9px #ffd66b6b)}}@keyframes active-nav-pulse{0%,to{opacity:.35;scale:.7}50%{opacity:1;scale:1.25}}@keyframes hero-title-hover{0%,to{filter:brightness();transform:translateY(0)rotate(-.3deg)}50%{filter:brightness(1.08);transform:translateY(-7px)rotate(.3deg)}}@keyframes hero-role-glow{0%,to{text-shadow:2px 2px #4c2f1f,0 0 #ffd66b00}50%{text-shadow:2px 2px #4c2f1f,0 0 15px #ffd66b40}}@keyframes discipline-pulse{0%,to{opacity:.34;transform:rotate(45deg)scale(.72)}50%{opacity:1;box-shadow:0 0 9px var(--gold);transform:rotate(225deg)scale(1.22)}}@keyframes button-sheen{0%,18%{background-position:100% 0}48%,to{background-position:0 0}}@keyframes scroll-cue-bob{0%,to{opacity:.68;transform:translate(-50%)}50%{opacity:1;transform:translate(-50%,8px)}}@keyframes heading-glow{0%,to{filter:brightness()}50%{filter:brightness(1.09)drop-shadow(0 0 8px #c28b4b33)}}@keyframes heading-rule-charge{0%{opacity:0;transform:scaleX(0)}14%{opacity:.3;transform:scaleX(.08)}82%{opacity:1;transform:scaleX(.88)}to{opacity:0;transform:scaleX(1.04)}}@keyframes portrait-card-float{0%,to{transform:translateY(0)rotate(-.12deg)}50%{transform:translateY(-5px)rotate(.12deg)}}@keyframes portrait-frame-glint{0%,62%{opacity:0;left:-55%}72%{opacity:.85}88%,to{opacity:0;left:130%}}@keyframes character-name-glow{0%,to{box-shadow:0 0 #ffd66b00}50%{box-shadow:0 0 15px #ffd66b33}}@keyframes parchment-hover{0%,to{transform:translateY(0)rotate(.08deg)}50%{transform:translateY(-4px)rotate(-.08deg)}}@keyframes house-stage-hover{0%,to{filter:brightness();transform:translateY(0)}50%{filter:brightness(1.035);transform:translateY(-5px)}}@keyframes house-stage-border{0%,to{opacity:.22;box-shadow:inset 0 0 12px #ffd66b0a}50%{opacity:.7;box-shadow:inset 0 0 28px #ffd66b1f}}@keyframes house-entry-mark{0%,to{filter:brightness(.9);transform:rotate(45deg)scale(.82)}50%{filter:brightness(1.22);transform:rotate(225deg)scale(1.12)}}@keyframes quest-card-arrive{0%{opacity:0;transform:translate(-24px)scale(.985)}to{opacity:1;transform:none}}@keyframes active-tab-glow{0%,to{filter:brightness()}50%{filter:brightness(1.08)drop-shadow(0 0 9px #ffd66b33)}}@keyframes quest-token-hover{0%,to{transform:translateY(0)rotate(-1deg)}50%{transform:translateY(-6px)rotate(1deg)}}@keyframes experience-row-arrive{0%{opacity:0;transform:translate(28px)}to{opacity:1;transform:none}}@keyframes expand-token-pulse{0%,to{filter:brightness();box-shadow:0 3px #1c2719}50%{filter:brightness(1.18);box-shadow:0 3px #1c2719,0 0 12px #82905a70}}@keyframes inventory-scan{0%{background-position:170% 0}to{background-position:-70% 0}}@keyframes inventory-row-arrive{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes skill-icon-bob{0%,to{filter:brightness(.94);transform:translateY(0)rotate(-2deg)scale(.96)}50%{filter:brightness(1.16);transform:translateY(-4px)rotate(2deg)scale(1.06)}}@keyframes writing-desk-breathe{0%,to{filter:brightness();transform:translateY(0)}50%{filter:brightness(1.04);transform:translateY(-4px)}}@keyframes letter-card-hover{0%,to{transform:rotate(-1deg)translateY(0)}50%{transform:rotate(1deg)translateY(-5px)}}@keyframes contact-form-glow{0%,to{filter:drop-shadow(0 0 #c28b4b00)}50%{filter:drop-shadow(0 0 13px #c28b4b2e)}}@media (max-width:1020px){:root{--shell:min(100% - 32px, 920px)}.nav-shell{grid-template-columns:auto 1fr auto;gap:14px}.brand-name{display:none}.nav-links{grid-column:2;gap:16px}.nav-links a{font-size:24px}.hero h1{font-size:clamp(64px,9vw,90px)}.about-grid{grid-template-columns:.8fr 1.2fr}.character-card{min-height:500px}.parchment{margin:24px;padding:42px}.quest-card{grid-template-columns:130px 1fr}.quest-actions{flex-direction:row;grid-column:2}.quest-actions .text-link{flex:1}.project-detail,.inventory-row{grid-template-columns:130px 1fr}}@media (max-width:780px){html{scroll-padding-top:72px}:root{--shell:min(100% - 26px, 680px)}.site-header{padding:8px 0}.nav-shell{clip-path:none;grid-template-columns:auto 1fr auto;min-height:52px}.brand-mark{width:34px;height:34px}.menu-toggle{width:40px;height:38px;color:var(--parchment-light);border:1px solid var(--gold-deep);cursor:pointer;background:#21150f;grid-column:3;align-content:center;justify-self:end;gap:5px;padding:9px;display:grid}.menu-toggle span:not(.sr-only){background:currentColor;height:2px}.nav-cta{display:none}.nav-links{visibility:hidden;opacity:0;border:1px solid var(--gold-deep);background:#18100cfa;gap:7px;padding:18px;transition:opacity .15s,transform .15s,visibility 0s linear .15s;display:grid;position:absolute;top:calc(100% + 8px);left:13px;right:13px;transform:translateY(-8px);box-shadow:0 18px 40px #00000080}.nav-links.is-open{visibility:visible;opacity:1;transition-delay:0s;transform:none}.nav-links a{padding:8px;font-size:24px}.nav-links a:after{display:none}.hero{min-height:auto;padding:116px 0 84px}.hero-copy{text-align:center}.hero h1{font-size:clamp(76px,20vw,110px)}.hero-role{margin-top:27px}.hero-disciplines,.hero-actions{justify-content:center}.hero-intro{margin-inline-start:auto;margin-inline-end:auto}.hero-actions .pixel-button:first-child{width:auto}.scroll-cue{display:none}.about,.house-preview,.featured,.experience,.skills,.contact{padding-block-start:85px;padding-block-end:85px}.house-preview{padding-block-start:62px;padding-block-end:62px}.house-preview .section-heading{margin-bottom:30px}.about-grid{grid-template-columns:1fr}.character-card{border-bottom:5px solid #5a3824;border-right:0;min-height:390px}.character-sprite{width:100%;height:100%}.parchment{margin:20px}.section-heading{grid-template-columns:28px 1fr 28px;gap:12px;margin-bottom:42px}.section-heading h2{font-size:clamp(40px,11vw,58px)}.house-stage{aspect-ratio:1}.quest-card{grid-template-columns:100px 1fr;gap:20px}.quest-icon{height:120px}.quest-icon span{width:64px;height:64px;font-size:40px}.quest-actions{flex-wrap:wrap}.quest-actions .text-link{min-width:140px}.experience-item>button{grid-template-columns:34px 80px 1fr;gap:10px}.experience-item em{text-align:left;grid-column:3}.inventory{padding:28px}.inventory-row{grid-template-columns:1fr;gap:4px}.contact-grid{grid-template-columns:1fr}.writing-desk{min-height:440px}.site-footer{grid-template-columns:auto 1fr}.footer-links{grid-column:1/-1;justify-content:center}.game-toolbar{grid-template-columns:1fr auto}.game-toolbar p{display:none}}@media (max-width:540px){:root{--shell:calc(100% - 22px)}body{font-size:15px}.nav-shell{width:calc(100% - 18px)}.hero{padding-top:105px}.hero h1{text-shadow:4px 4px #51321f,7px 7px #00000085;font-size:clamp(68px,23vw,92px)}.hero-role{font-size:28px}.hero-disciplines{font-size:11px}.hero-actions{display:grid}.hero-actions .pixel-button{width:100%}.about-grid{width:calc(100% - 8px)}.character-card{min-height:340px}.parchment{margin:12px;padding:34px 26px}.parchment p{font-size:15px}.section-heading{grid-template-columns:14px 1fr 14px;gap:9px}.section-heading h2{font-size:clamp(38px,13vw,51px)}.section-heading p{font-size:14px}.house-preview{padding-block-start:48px;padding-block-end:48px}.house-preview .section-heading{margin-bottom:26px}.house-stage{aspect-ratio:1;width:100%;min-height:0;margin-inline-start:auto;margin-inline-end:auto}.house-stage img{width:100%;height:100%}.pixel-button.house-enter-overlay{white-space:normal;gap:10px;max-width:calc(100% - 24px);min-height:58px;padding:12px 16px;font-size:24px}.house-enter-mark{flex-basis:13px;width:13px;height:13px}.house-enter-mark:after{top:3px;bottom:3px;left:3px;right:3px}.project-tablist{gap:5px;padding:6px}.project-tab{min-height:62px;padding-inline-start:7px;padding-inline-end:7px}.project-tab span{font-size:24px}.project-tab small{display:none}.quest-card{grid-template-columns:78px minmax(0,1fr);align-items:stretch;gap:14px;padding:16px}.quest-icon{height:auto;min-height:138px}.quest-icon span{width:52px;height:52px;font-size:40px}.quest-actions{flex-flow:wrap;grid-column:1/-1;gap:8px}.quest-actions .text-link{flex:1;min-width:120px;font-size:24px}.project-detail{grid-column:1/-1;grid-template-columns:1fr;gap:9px}.project-resource-slots{grid-column:1}.experience-item>button{grid-template-columns:32px 1fr;padding:14px}.experience-item time{font-size:24px}.experience-item strong{grid-column:2;font-size:24px}.experience-item em{grid-column:2}.experience-item.is-open .experience-detail p{padding:18px}.inventory{padding:20px}.inventory-row{min-height:auto;padding-block-start:18px;padding-block-end:18px}.inventory-row>div{gap:6px}.inventory-row span{font-size:24px}.writing-desk{min-height:390px;padding:22px}.letter-card{width:100%;padding:21px}.contact-links{grid-template-columns:1fr;display:grid}.site-footer{text-align:center;grid-template-columns:1fr;padding:34px 22px}.footer-campfire{width:40px;height:40px;margin-inline-start:auto;margin-inline-end:auto}.footer-links{flex-wrap:wrap;grid-column:1}.game-toolbar{min-height:60px;padding-top:max(8px, env(safe-area-inset-top));padding-right:max(10px, env(safe-area-inset-right));padding-bottom:8px;padding-left:max(10px, env(safe-area-inset-left));gap:8px}.game-toolbar strong{font-size:24px}.game-toolbar small{display:none}.game-toolbar>button{padding:8px;font-size:24px}.game-note{font-size:24px;top:8px;left:8px;right:8px}#textbox{left:max(12px, env(safe-area-inset-left));right:max(12px, env(safe-area-inset-right));width:auto;bottom:max(14px, env(safe-area-inset-bottom));padding:18px}.ui-text{font-size:14px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal,.reveal.is-pending{opacity:1;transform:none}.star-field{transform:none!important}.star{opacity:.58;transform:none;animation:none!important}.footer-campfire{filter:drop-shadow(0 0 8px #ffbe446b);transform:none;animation:none!important}}
