.flip-card{--fc-w: 300px;--fc-h: 400px;--fc-radius: 22px;--fc-bg: #27272a;--fc-ink: #f5f5f5;--fc-shadow: #000000;--fc-shadow-o: .45;--fc-glare: .22;position:relative;display:inline-block;width:var(--fc-w);max-width:100%;height:var(--fc-h);border-radius:var(--fc-radius);outline:none;cursor:pointer;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;touch-action:pan-y}.flip-card[data-axis=x]{touch-action:pan-x}.flip-card[data-draggable]{cursor:grab}.flip-card[data-dragging]{cursor:grabbing}.flip-card[data-disabled]{cursor:default;opacity:.6}.flip-card__shadow{position:absolute;inset:12% 9% -5%;border-radius:var(--fc-radius);background:color-mix(in srgb,var(--fc-shadow) calc(var(--fc-shadow-o) * 100%),transparent);filter:blur(22px);pointer-events:none}.flip-card__rotor{position:absolute;inset:0;transform-style:preserve-3d}.flip-card__face{position:absolute;inset:0;overflow:hidden;border-radius:var(--fc-radius);background:var(--fc-bg);color:var(--fc-ink);backface-visibility:hidden;-webkit-backface-visibility:hidden}.flip-card__face img{-webkit-user-drag:none}.flip-card__face--back{transform:rotateY(180deg)}.flip-card[data-axis=x] .flip-card__face--back{transform:rotateX(180deg)}.flip-card__glare{position:absolute;inset:0;background:radial-gradient(circle farthest-side at var(--fc-gx, 50%) var(--fc-gy, 50%),rgba(255,255,255,var(--fc-glare)) 0%,rgba(255,255,255,calc(var(--fc-glare) * .76)) 12%,rgba(255,255,255,calc(var(--fc-glare) * .5)) 26%,rgba(255,255,255,calc(var(--fc-glare) * .28)) 42%,rgba(255,255,255,calc(var(--fc-glare) * .12)) 60%,rgba(255,255,255,calc(var(--fc-glare) * .04)) 78%,rgba(255,255,255,0) 100%);opacity:var(--fc-sheen, 0);pointer-events:none}.flip-card[data-fade] .flip-card__face{transform:none;opacity:0;backface-visibility:visible;-webkit-backface-visibility:visible;transition:opacity .2s ease}.flip-card[data-fade=front] .flip-card__face--front,.flip-card[data-fade=back] .flip-card__face--back{opacity:1}.flex-carousel{position:relative;width:100%;height:100%;overflow:hidden;cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent;overscroll-behavior:contain;outline:none}.flex-carousel[data-hover=open]{cursor:zoom-in}.flex-carousel[data-hover=close]{cursor:zoom-out}.flex-carousel[data-dragging]{cursor:grabbing}.flex-carousel:focus-visible{box-shadow:inset 0 0 0 2px #80808c8c}.flex-carousel__caption{position:absolute;left:0;right:0;top:calc(50% + var(--flex-carousel-half) * var(--flex-carousel-lift, 1) + 22px);display:flex;flex-direction:column;align-items:center;gap:6px;padding:0 16px;pointer-events:none;text-align:center;animation:flex-carousel-reveal .9s ease both}.flex-carousel__title{display:flex;flex-direction:column;align-items:center;max-width:100%;font-size:15px;font-weight:500;line-height:1.35;animation:flex-carousel-title .52s cubic-bezier(.22,1,.36,1)}.flex-carousel__subtitle{font-weight:400;opacity:.6}.flex-carousel__count{display:inline-flex;align-items:center;gap:3px;font-size:12px;line-height:1;font-variant-numeric:tabular-nums;opacity:.5;transition:opacity .4s ease}.flex-carousel__count[data-hidden]{opacity:0}.flex-carousel__digits{display:inline-flex}.flex-carousel__digit{display:inline-block;height:1em;overflow:hidden}.flex-carousel__reel{display:flex;flex-direction:column;transition:transform .6s cubic-bezier(.22,1,.36,1)}.flex-carousel__reel span{height:1em}.flex-carousel__slash{opacity:.6}.flex-carousel__live{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes flex-carousel-title{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes flex-carousel-reveal{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.flex-carousel__caption,.flex-carousel__title{animation:none}.flex-carousel__reel{transition:none}}:root{font-family:Georgia,Times New Roman,serif;color:#f2f2f2;background:#000;font-synthesis:none;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#000}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}button{font:inherit}img{display:block;max-width:100%}p,h1,h2,h3{margin:0}::selection{background:#555;color:#fff}a:focus-visible,button:focus-visible,.flip-card:focus-visible{outline:2px solid #eee;outline-offset:6px}.profile{max-width:1080px;margin:0 auto;padding:60px 40px 120px}.photo-container{display:flex;justify-content:center;margin-bottom:42px}.photo-placeholder{width:100%;height:100%;background:#131313;border:1px solid #262626;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#a1a1a1;font-family:Arial,Helvetica,sans-serif;font-size:17px;gap:14px}.photo-placeholder.admin{background:#191919}.photo-placeholder small{font-size:14px}.flip-prompt{position:absolute;bottom:30px;font-size:12px;color:gray}.portrait{width:100%;height:100%;object-fit:cover}.introduction{max-width:820px;margin:0 auto;font-size:18px;line-height:1.7}.introduction p+p{margin-top:20px}.portfolio{height:450px;max-width:900px;margin:32px auto 60px;background:#000}.flex-carousel__caption{font-family:Arial,Helvetica,sans-serif}.flex-carousel__title{font-size:13px}.flex-carousel__count{font-size:11px}.portfolio-fallback{height:100%;display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;align-items:center}.portfolio-fallback figure{flex:0 0 65%;height:85%;margin:0;scroll-snap-align:center}.portfolio-fallback img{width:100%;height:90%;object-fit:contain}.portfolio-fallback figcaption{text-align:center;font-size:13px;margin-top:12px}.resume{font-size:16px;line-height:1.65}.resume section+section{margin-top:36px}.resume h2{font-size:18px;font-weight:700;margin-bottom:30px}.resume h3{font-size:18px;line-height:1.5;font-weight:700}.entry-line{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-top:4px}.entry-line strong{white-space:nowrap;font-size:15px}.recognition{margin-top:30px}.resume ul{margin:5px 0 0;padding-left:34px}.resume li{padding-left:3px;margin-bottom:3px}.resume article+article{margin-top:20px}.admin-resume{margin-top:70px}.admin-resume section+section{margin-top:42px}.admin-resume h2{margin-bottom:28px}@media(max-width:700px){.profile{padding:40px 24px 80px}.photo-container{margin-bottom:35px}.photo-container .flip-card{width:min(350px,100%);height:auto;aspect-ratio:35/46}.introduction{font-size:16px;line-height:1.7}.portfolio{height:370px;margin:24px -24px 45px;max-width:none}.resume{font-size:15px;line-height:1.65}.resume h2,.resume h3{font-size:17px}.resume h2{margin-bottom:24px}.entry-line{display:block}.entry-line strong{display:block;margin-top:6px;font-size:14px}.recognition{margin-top:24px}.resume ul{padding-left:23px}.admin-resume{margin-top:45px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}.profile-heading{text-align:center;font-family:Arial,Helvetica,sans-serif;margin-bottom:32px}.profile-heading h1{font-size:32px;line-height:1.25;font-weight:400;margin-bottom:14px}.profile-heading p{font-size:16px;line-height:1.6;color:#ddd}.profile-heading p+p{font-size:14px;color:#aaa;margin-top:2px}@media(max-width:700px){.profile-heading{margin-bottom:26px}.profile-heading h1{font-size:27px}.profile-heading p{font-size:15px}.profile-heading p+p{font-size:13px}}.contact-footer{text-align:center;padding:0 24px 60px;font-family:Arial,Helvetica,sans-serif;font-size:16px}.contact-footer a{color:#ddd;text-decoration:none;text-underline-offset:5px}.contact-footer a:hover{text-decoration:underline;color:#fff}@media(max-width:700px){.contact-footer{font-size:15px;padding-bottom:40px}}.photo-container{flex-direction:column;align-items:center}.flip-hint{display:inline-flex;align-items:center;justify-content:center;gap:7px;margin-top:14px;padding:7px 10px;border:0;background:transparent;color:#aaa;font:12px Arial,Helvetica,sans-serif;cursor:pointer}.flip-hint:hover{color:#fff}
