:root{--paper:#fff;--bg-soft:#f4f8fb;--surface:#e8f1f6;--ink:#0a0a0a;--muted:#6b8494;--accent:#9bb8c9;--accent-deep:#5a7d90;--line:#0a0a0a14;--shadow-soft:0 24px 80px #0a0a0a0f;--ease-out:cubic-bezier(.32, .72, 0, 1);--font-display:"Cormorant Garamond", Georgia, serif;--font-body:"Plus Jakarta Sans", system-ui, sans-serif;--radius:2rem;--radius-sm:1rem}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0}.profile-view{font-family:var(--font-body);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;min-height:100dvh;margin:0;font-weight:400;line-height:1.6}.profile-view .section-cursor{z-index:200;-webkit-backdrop-filter:blur(14px)saturate(1.15);min-width:2.75rem;color:var(--ink);font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .25s var(--ease-out);will-change:transform;background:#f4f8fbb8;border:1px solid #ffffff8c;border-radius:999px;justify-content:center;align-items:center;padding:.55rem .95rem;font-size:.72rem;font-weight:600;display:none;position:fixed;top:0;left:0;transform:translate(-100px,-100px);box-shadow:0 10px 28px #0a0a0a1a}@media (hover:hover) and (pointer:fine){.profile-view .section-cursor{display:inline-flex}.profile-view .section-cursor.is-active{opacity:1}.profile-view [data-cursor],.profile-view [data-cursor] *{cursor:none}.profile-view .nav-island,.profile-view .nav-island *{cursor:auto}}.profile-view .grain{pointer-events:none;z-index:100;opacity:.03;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}.profile-view .nav-island{z-index:50;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--line);background:#ffffffb8;border-radius:999px;gap:.25rem;padding:.35rem;display:flex;position:fixed;top:1.5rem;left:50%;transform:translate(-50%);box-shadow:0 8px 32px #0a0a0a0d}.profile-view .nav-link{letter-spacing:.04em;color:var(--ink);transition:background .5s var(--ease-out), color .5s var(--ease-out);border-radius:999px;padding:.55rem 1.1rem;font-size:.78rem;font-weight:500;text-decoration:none}.profile-view .nav-link:hover{background:var(--surface);color:var(--accent-deep)}.profile-view .hero{background:radial-gradient(ellipse 80% 60% at 18% 18%, #9bb8c947, transparent), radial-gradient(ellipse 70% 50% at 82% 72%, #e8f1f6e6, transparent), linear-gradient(165deg, var(--bg-soft) 0%, var(--paper) 55%, #eef4f8 100%);text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100dvh;padding:7rem 1.5rem 4rem;display:flex;position:relative;overflow:hidden}.profile-view .hero-layout{width:min(1100px,100%);animation:fade-up 1.2s var(--ease-out) both;grid-template-columns:minmax(0,1.05fr) minmax(240px,.75fr);align-items:center;gap:3rem clamp(2rem,5vw,4rem);display:grid}.profile-view .hero-inner{text-align:left;justify-self:end;max-width:36rem}.profile-view .portrait-card{justify-self:start;width:min(100%,22rem);margin:0}.profile-view .portrait-frame{aspect-ratio:843/1024;border-radius:calc(var(--radius) - .35rem);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-soft);outline-offset:.35rem;outline:.45rem solid #ffffff8c;position:relative;overflow:hidden}.profile-view .portrait-image{object-fit:cover;object-position:center 18%;width:100%;height:100%;transition:transform .7s var(--ease-out);display:block}.profile-view .portrait-glass{-webkit-backdrop-filter:blur(18px)saturate(1.2);text-align:left;opacity:0;pointer-events:none;transition:opacity .55s var(--ease-out), transform .55s var(--ease-out);background:#f4f8fb94;border:1px solid #ffffff8c;border-radius:1.15rem;outline:none;margin:0;padding:1.15rem 1.25rem 1.2rem;position:absolute;inset:auto .85rem .85rem;transform:translateY(.85rem);box-shadow:0 12px 40px #0a0a0a1f}.profile-view .portrait-frame:hover .portrait-glass,.profile-view .portrait-frame:focus-within .portrait-glass,.profile-view .portrait-glass:focus{opacity:1;pointer-events:auto;transform:translateY(0)}.profile-view .portrait-frame:hover .portrait-image,.profile-view .portrait-frame:focus-within .portrait-image{transform:scale(1.03)}.profile-view .portrait-glass-name{font-family:var(--font-display);color:var(--ink);margin:0 0 .25rem;font-size:1.65rem;font-weight:600;line-height:1.1}.profile-view .portrait-glass-role{letter-spacing:.02em;color:var(--accent-deep);margin:0 0 .9rem;font-size:.78rem;font-weight:500}.profile-view .portrait-glass-facts{gap:.45rem;margin:0;display:grid}.profile-view .portrait-glass-facts div{grid-template-columns:4.5rem 1fr;align-items:baseline;gap:.5rem;display:grid}.profile-view .portrait-glass-facts dt{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0;font-size:.62rem;font-weight:600}.profile-view .portrait-glass-facts dd{color:var(--ink);word-break:break-word;margin:0;font-size:.82rem}.profile-view .eyebrow{letter-spacing:.22em;text-transform:uppercase;color:var(--accent-deep);background:#9bb8c938;border-radius:999px;margin:0 0 1.5rem;padding:.35rem .9rem;font-size:.65rem;font-weight:600;display:inline-block}.profile-view .hero-title{font-family:var(--font-display);letter-spacing:-.02em;margin:0 0 1.25rem;font-size:clamp(3.4rem,12vw,7rem);font-weight:400;line-height:.95}.profile-view .hero-line{display:block}.profile-view .hero-line+.hero-line:before{content:" ";font-size:0}.profile-view .hero-line--accent{color:var(--accent-deep);font-style:italic}.profile-view .hero-lede{letter-spacing:.04em;color:#0a0a0a9e;margin:0 0 1rem;font-size:1.05rem;font-weight:300}.profile-view .hero-summary{max-width:36rem;color:var(--muted);margin:0 0 2.25rem;font-size:1rem}.profile-view .hero-ctas{flex-wrap:wrap;justify-content:flex-start;gap:.75rem;display:flex}.profile-view .btn-primary,.profile-view .btn-ghost{min-height:44px;font-family:var(--font-body);letter-spacing:.06em;cursor:pointer;transition:transform .3s var(--ease-out), box-shadow .3s var(--ease-out), background .4s var(--ease-out), color .4s var(--ease-out);border-radius:999px;align-items:center;gap:.65rem;padding:.85rem 1.5rem;font-size:.85rem;font-weight:600;text-decoration:none;display:inline-flex}.profile-view .btn-primary{background:var(--ink);color:var(--paper);border:none}.profile-view .btn-primary:hover{transform:scale(1.02);box-shadow:0 12px 32px #0a0a0a2e}.profile-view .btn-primary:active,.profile-view .btn-ghost:active{transform:scale(.98)}.profile-view .btn-icon{opacity:0;width:0;height:1.75rem;transition:width .4s var(--ease-out), opacity .4s var(--ease-out), transform .4s var(--ease-out), margin .4s var(--ease-out);background:#ffffff1f;border-radius:999px;justify-content:center;align-items:center;font-size:.85rem;display:inline-flex;overflow:hidden;transform:scale(.85)}.profile-view .btn-primary:hover .btn-icon,.profile-view .btn-ghost:hover .btn-icon,.profile-view .btn-primary:focus-visible .btn-icon,.profile-view .btn-ghost:focus-visible .btn-icon{opacity:1;width:1.75rem;transform:translate(1px,-1px)scale(1.05)}.profile-view .btn-ghost .btn-icon{color:var(--ink);background:#0a0a0a0f}.profile-view .btn-primary .btn-icon{color:var(--paper)}.profile-view .btn-ghost{border:1px solid var(--line);color:var(--ink);background:#ffffffa6}.profile-view .btn-ghost:hover{background:var(--surface)}.profile-view .cert-link{width:100%;color:inherit;transition:color .35s var(--ease-out);flex-direction:column;align-items:flex-start;gap:.2rem;text-decoration:none;display:flex}.profile-view .cert-link:hover strong{color:var(--accent-deep)}.profile-view .cert-link span{color:var(--muted)}.profile-view .hero-scroll{letter-spacing:.2em;text-transform:uppercase;color:#0a0a0a59;flex-direction:column;align-items:center;gap:.5rem;font-size:.7rem;animation:2.5s ease-in-out infinite bob;display:flex;position:absolute;bottom:2rem}.profile-view .hero-scroll-line{background:#0a0a0a33;width:1px;height:2rem}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}@keyframes fade-up{0%{opacity:0;filter:blur(8px);transform:translateY(2rem)}to{opacity:1;filter:blur();transform:translateY(0)}}.profile-view .section-shell{background:var(--bg-soft);padding:.5rem}.profile-view .section-shell--soft{background:var(--surface)}.profile-view .section-inner{background:var(--paper);border-radius:var(--radius);box-shadow:var(--shadow-soft);border:1px solid #0a0a0a0a;max-width:72rem;margin:0 auto;padding:4rem 2rem}.profile-view .section-title{font-family:var(--font-display);margin:0 0 2.5rem;font-size:clamp(2rem,5vw,3.2rem);font-weight:400}.profile-view .section-title--sm{margin-bottom:1.5rem;font-size:clamp(1.6rem,4vw,2.2rem)}.profile-view .about-text{color:#0a0a0ac7;max-width:42rem;margin:0 0 1.25rem;font-size:1.15rem}.profile-view .about-meta{color:var(--muted);letter-spacing:.02em;margin:0;font-size:.9rem}.profile-view .timeline{gap:1.25rem;display:grid}.profile-view .timeline-card,.profile-view .content-card,.profile-view .skill-group{border:1px solid var(--line);background:linear-gradient(145deg,#9bb8c91f,#fff6);border-radius:1.5rem;padding:1.75rem}.profile-view .timeline-meta{letter-spacing:.08em;text-transform:uppercase;color:var(--accent-deep);flex-wrap:wrap;gap:.75rem 1.25rem;margin-bottom:.75rem;font-size:.78rem;display:flex}.profile-view .timeline-period,.profile-view .timeline-location,.profile-view .timeline-company,.profile-view .card-sub,.profile-view .card-eyebrow{margin:0}.profile-view .timeline-title,.profile-view .content-card h3,.profile-view .skill-group h3{font-family:var(--font-display);margin:0 0 .35rem;font-size:1.7rem;font-weight:600}.profile-view .timeline-company,.profile-view .card-sub{color:var(--muted);margin-bottom:1rem;font-size:.95rem}.profile-view .card-eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--accent-deep);margin-bottom:.75rem;font-size:.72rem;font-weight:600}.profile-view .timeline-card ul,.profile-view .content-card ul{margin:0;padding:0;list-style:none}.profile-view .timeline-card li,.profile-view .content-card li{border-bottom:1px solid var(--line);color:#0a0a0ac7;padding:.45rem 0;font-size:.95rem}.profile-view .timeline-card li:last-child,.profile-view .content-card li:last-child{border-bottom:none}.profile-view .card-grid,.profile-view .skills-grid,.profile-view .supporting-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.25rem;display:grid}.profile-view .skill-chips{flex-wrap:wrap;gap:.5rem;display:flex}.profile-view .skill-chip{border:1px solid var(--line);color:var(--ink);background:#fffc;border-radius:999px;padding:.4rem .85rem;font-size:.78rem;font-weight:500;display:inline-flex}.profile-view .plain-list{margin:0;padding:0;list-style:none}.profile-view .plain-list li{border-bottom:1px solid var(--line);justify-content:space-between;gap:1rem;padding:.65rem 0;font-size:.95rem;display:flex}.profile-view .plain-list li span{color:var(--muted);text-align:right}.profile-view .plain-list--certs li{flex-direction:column;align-items:flex-start}.profile-view .contact-inner{text-align:center}.profile-view .contact-lede{max-width:28rem;color:var(--muted);margin:0 auto 2rem}.profile-view .site-footer{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);background:var(--bg-soft);justify-content:space-between;gap:1rem;padding:2rem 1.5rem 3rem;font-size:.8rem;display:flex}.profile-view .site-footer p{margin:0}.profile-view .reveal{opacity:0;transition:opacity .8s var(--ease-out), transform .8s var(--ease-out);transform:translateY(1.5rem)}.profile-view .reveal.is-visible{opacity:1;transform:translateY(0)}@media (width<=768px){.profile-view .nav-island{-webkit-overflow-scrolling:touch;justify-content:flex-start;width:calc(100% - 1.5rem);max-width:28rem;top:auto;bottom:1rem;overflow-x:auto}.profile-view .nav-link{white-space:nowrap;padding:.55rem .85rem}.profile-view .section-inner{padding:3rem 1.25rem}.profile-view .hero{padding:5rem 1rem 5.5rem}.profile-view .hero-layout{grid-template-columns:1fr;justify-items:center;gap:2rem}.profile-view .hero-inner{text-align:center;justify-self:center;max-width:100%}.profile-view .hero-ctas{justify-content:center}.profile-view .portrait-card{justify-self:center;width:min(100%,18rem)}.profile-view .portrait-glass{opacity:1;pointer-events:auto;transform:translateY(0)}.profile-view .site-footer{text-align:center;flex-direction:column}}
