.header{padding:16px 5%;background:linear-gradient(#06151fe8,#071a2480);border-bottom:1px solid #e9c38e20}.header .brand{gap:11px;font:600 19px Georgia}.brand>svg{width:35px;height:35px;color:var(--gold);flex:none}.header .brand small{display:block;font:7px/1.6 Arial;letter-spacing:2px;color:#b8c4c5;margin-top:5px}.header nav{gap:25px}.header nav a{font-size:12px}.header .resume{background:linear-gradient(120deg,#f5d7a6,#dfb778);color:#19252a;border:0;padding:12px 23px;box-shadow:0 3px 20px #e9c38e18}.hero-art{background-image:url('/assets/adventure-hero.webp');background-position:60% center}.hero-shade{background:linear-gradient(90deg,#041824c2,transparent 80%),linear-gradient(0deg,#071a24,transparent 30%,#05182225)}.hero h1{max-width:760px;font-size:clamp(43px,5.1vw,78px)}.about{background:radial-gradient(ellipse at 75% 50%,#6f533423,transparent 65%)}.portrait.poster{width:100%;max-width:430px;transform:rotate(3deg);filter:drop-shadow(0 20px 25px #0007)}.portrait.poster>img{width:100%;height:auto;border-radius:3px}.poster figcaption{position:static;background:none;font:10px/1.5 monospace;text-align:center;color:#aab9bc;margin-top:16px;padding:0}.about-grid{gap:10%;grid-template-columns:1.1fr 1fr}.toolkit{display:block;background:linear-gradient(0deg,#071a24,#071a2430 65%,#071a24),url('/assets/library-coast.webp') center/cover;padding-top:110px;padding-bottom:110px;max-width:none}.skill-intro,.skill-console{max-width:1100px;margin:auto}.skill-intro p{max-width:430px;font-size:15px}.skill-intro h2{font-size:56px}.skill-console{margin-top:45px;background:#092028dd;border:1px solid #b7c4b320;border-radius:16px;padding:24px;box-shadow:0 25px 60px #0003;backdrop-filter:blur(12px)}.skill-tabs{display:flex;border:1px solid #acc6c51c;border-radius:50px;background:#183038;padding:6px;margin-bottom:28px}.skill-tabs button{flex:1;border:0;background:none;color:#dce3df;padding:13px 12px;border-radius:30px;font-size:12px;font-weight:600;transition:background .2s,color .2s}.skill-tabs button[aria-selected=true]{background:linear-gradient(110deg,#f5d9ab,#e6bf85);color:#17262c;box-shadow:0 0 18px #e9c38e30}.skill-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.skill-tile{display:flex;align-items:center;gap:14px;background:linear-gradient(135deg,#19353d,#112a32);border:1px solid #b8cdca14;border-radius:9px;padding:24px 18px;font-size:13px;transition:transform .25s,border-color .25s}.skill-tile:hover{transform:translateY(-4px);border-color:#e9c38e70}.skill-tile img{width:30px;height:30px;object-fit:contain}.skill-console [hidden]{display:none}.skill-console [role=tabpanel]:not([hidden]){animation:skill-in .35s ease-out}@keyframes skill-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.project-archive{background:linear-gradient(#071a2466,#071a24 550px),url('/assets/library-coast.webp') center top/100% auto no-repeat}.resume-page{padding-top:170px;max-width:1200px;background:linear-gradient(#071a2455,#071a24 620px),url('/assets/library-coast.webp') center top/cover no-repeat}.resume-page h1{font:clamp(40px,4.5vw,65px)/1.12 Georgia;letter-spacing:-1.8px}.resume-lead{font-size:20px;color:var(--gold)}.resume-reader{margin-top:55px;padding:14px;border:1px solid var(--line);border-radius:12px;background:#19323b}.resume-reader object{display:block;width:100%;height:85vh;min-height:550px;border:0;background:#eff0ec}.resume-reader object p{padding:25px;color:#122630}.contact{background:linear-gradient(90deg,#071a24ed,#071a24c9),url('/assets/library-coast.webp') center/cover}.archive{background:radial-gradient(ellipse at 100% 100%,#92714618,transparent 70%)}
@media(max-width:900px){.header nav{gap:16px}.header .brand{font-size:17px}.header .brand small{display:none}.skill-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.header{padding:14px 5%;gap:9px;background:#071a24ee}.brand>svg{width:28px;height:28px}.header .brand{font-size:16px;gap:7px}.header .resume{padding:10px 15px;font-size:10px}.hero-art{background-position:73% center}.hero-shade{background:linear-gradient(90deg,#041824cf,#071a2430),linear-gradient(0deg,#071a24,transparent 35%)}.hero h1{font-size:clamp(36px,9vw,52px)}.about-grid{grid-template-columns:1fr;gap:35px}.portrait.poster{max-width:320px;width:90%;margin:auto}.toolkit{padding:70px 6%;background-position:65% center}.skill-intro h2{font-size:43px}.skill-console{padding:15px;margin-top:30px;border-radius:12px}.skill-tabs{border-radius:12px;display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-bottom:18px}.skill-tabs button{font-size:11px;padding:12px 8px}.skill-grid{gap:10px}.skill-tile{padding:17px 10px;font-size:11px;gap:9px}.skill-tile img{width:25px;height:25px}.resume-page{padding-top:125px}.resume-page .actions{flex-wrap:wrap;gap:18px}.resume-reader{padding:7px}.resume-reader object{height:70vh;min-height:450px}.project-archive{background-size:auto 550px}}

/* Quiet wordmark, continuous editorial movement, legible content. */
.header{border-bottom:0}.header .brand{font:600 21px/1.1 Georgia,serif;letter-spacing:-.6px}.header .brand small{letter-spacing:2.3px;font-size:7px;margin-top:7px}.header.scrolled{background:#071a24f5;box-shadow:0 6px 30px #0002}.header nav a{position:relative;padding:9px 0}.header nav a:after{content:'';position:absolute;left:0;right:0;bottom:1px;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .3s}.header nav a:hover:after,.header nav a[aria-current]:after{transform:scaleX(1)}
.hero-description{color:#e5ecea;text-shadow:0 2px 14px #061822}.hero:after{pointer-events:none;content:'';position:absolute;inset:auto 0 0;height:150px;background:linear-gradient(transparent,#071a24)}.hero .eyebrow>span{display:none}.section-index:before{display:none}.section:target{scroll-margin-top:80px}footer{justify-content:space-between}footer .brand{font:22px Georgia}.project-image{overflow:hidden}.project-image img{transition:transform .8s cubic-bezier(.2,.65,.3,1)}.project-image:hover img{transform:scale(1.035)}
@supports(animation-timeline:view()){@media(prefers-reduced-motion:no-preference){.about .poster{animation:portrait-drift linear both;animation-timeline:view();animation-range:entry 0% exit 100%}.interlude{animation:chapter-light linear both;animation-timeline:view();animation-range:entry 0% exit 100%}@keyframes portrait-drift{from{transform:translateY(22px) rotate(4deg)}to{transform:translateY(-22px) rotate(-2deg)}}@keyframes chapter-light{0%,100%{filter:brightness(.72)}45%,65%{filter:brightness(1)}}}}
@media(max-width:700px){.header .brand{font-size:19px}.hero:after{height:90px}}@media(prefers-reduced-motion:reduce){.project-image img{transition:none}.project-image:hover img{transform:none}}
