.epic{background:#abc8d7;font-family:Georgia,'Times New Roman',serif;color:#162f40}
.epic .scene{inset:0;z-index:0;mask-image:none;background:#aac7d5 url('/epic/poster.webp') center/cover no-repeat;pointer-events:none}
.epic .scene canvas{opacity:0;transition:opacity 900ms ease}.epic .scene.ready canvas{opacity:1}
.epic .page{position:relative;z-index:1;max-width:none;height:100svh;min-height:540px;padding:0 4vw;pointer-events:none}
.epic header{align-items:flex-start;height:auto;padding-top:4vh;min-height:0}
.epic h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(84px,9vw,155px);font-weight:400;letter-spacing:-.075em;line-height:.95;margin:0 0 0 -.045em;animation:none}
.epic nav{gap:22px;padding-top:12px;align-items:center;pointer-events:auto}
.epic nav a,.epic nav button{min-height:44px;background:none;border:0;font:17px Georgia,serif;letter-spacing:0;color:inherit}
.epic nav a{display:inline-flex;align-items:center}
.epic nav .email,.epic nav .theme-toggle{width:36px;min-height:44px}
.epic .linkedin{display:inline-flex;align-items:center;gap:13px}
.epic nav svg,.epic .arrow-icon{width:24px;height:24px;stroke:currentColor;stroke-width:1.25;fill:none}
.epic nav .theme-toggle svg{width:20px;height:20px}
.epic main{flex:1;min-height:0;padding:0;display:block}
.epic footer{position:relative;min-height:0;padding:0 0 5vh;display:flex;justify-content:space-between;align-items:flex-end;line-height:1.65;letter-spacing:0;font-size:17px;pointer-events:auto}
.epic footer{color:inherit}
.epic .identity{padding:8px 14px 8px 0;background:radial-gradient(ellipse at left,#c1d9e490,transparent 75%)}
.epic .full-name{font-size:21px}.epic .identity p{margin:0}
.epic button:focus-visible,.epic a:focus-visible{outline:2px solid currentColor;outline-offset:5px}
.epic dialog{font-family:Manrope,sans-serif;border-radius:3px;max-height:calc(100svh - 32px);overflow:auto}
.epic dialog[open]{animation:epic-dialog .45s cubic-bezier(.16,1,.3,1)}
.epic dialog::backdrop{background:#152e3c40;backdrop-filter:blur(3px)}
.epic .reading-dialog{inset:0;width:min(470px,calc(100vw - 32px));margin:auto;padding:40px;font-family:Georgia,serif}
.epic .reading-close{position:absolute;right:16px;top:12px}.epic .reading-dialog h2{font:40px Georgia,serif;margin:18px 0}
.epic .reading-dialog p{font-size:18px;line-height:1.75;margin:12px 0 22px}.epic .reading-dialog .eyebrow{font:12px Manrope,sans-serif;color:var(--muted)}
.epic .reading-dialog a{font-size:16px;display:inline-flex;align-items:center;gap:12px;min-height:44px}
:root[data-theme=dark] .epic{background:#405f79;color:#f0e6d1}
:root[data-theme=dark] .epic .scene:not(.ready){filter:brightness(.63) saturate(.8)}
:root[data-theme=dark] .epic .identity{background:radial-gradient(ellipse at left,#344e65aa,transparent 80%)}
@keyframes epic-dialog{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(max-width:760px){
 .epic .page{padding:0 6vw;min-height:520px}.epic .scene{bottom:132px;background-position:76% bottom}
 .epic header{padding-top:76px;display:block}.epic h1{font-size:108px}
 .epic nav{position:absolute;top:15px;right:5vw;gap:clamp(5px,1.8vw,13px);padding:0}.epic nav a,.epic nav button{font-size:14px}
 .epic nav .email,.epic nav .theme-toggle{width:26px}.epic nav svg{width:19px;height:19px}.epic .linkedin{gap:5px}.epic .linkedin svg{width:16px;height:16px}
 .epic footer{min-height:132px;padding:15px 0 24px;font-size:15px;align-items:center;gap:10px}
 .epic .identity{background:none;padding:0}.epic .full-name{font-size:18px}
 .epic .reading-dialog{padding:30px 24px}
 :root[data-theme=dark] .epic .identity{background:none}
}
@media(max-height:580px) and (min-width:761px){.epic .page{min-height:360px}.epic h1{font-size:80px}.epic footer{padding-bottom:20px}.epic header{padding-top:20px}}
@media(prefers-reduced-motion:reduce){.epic *{transition:none!important;animation:none!important}}
