.profile-site{--pp-bg:#fff;--pp-soft:#f5f7f6;--pp-card:#fff;--pp-fg:#141817;--pp-text:#59615e;--pp-muted:#8a928f;--pp-line:#e2e7e5;--pp-accent:#2ba283;--pp-dark:#10241d;background:var(--pp-bg);min-height:100vh;color:var(--pp-text);font-family:var(--font-geist-sans),Arial,sans-serif}.geeky-dark .profile-site{--pp-bg:#101211;--pp-soft:#171a19;--pp-card:#151817;--pp-fg:#f1f3f2;--pp-text:#b5bcb9;--pp-muted:#7f8985;--pp-line:#2c322f;--pp-dark:#0b1512}.profile-site *{box-sizing:border-box}.profile-site a{color:inherit;text-decoration:none}.profile-container{width:min(100% - 48px,1200px);margin-inline:auto}.profile-header{z-index:40;border-bottom:1px solid var(--pp-line);background:color-mix(in srgb,var(--pp-bg) 94%,transparent);position:relative}.profile-header-inner{align-items:center;gap:32px;min-height:88px;display:flex}.profile-brand{flex:none;align-items:center;gap:13px;display:flex}.profile-brand>span{background:var(--pp-dark);color:#fff;letter-spacing:.06em;place-items:center;width:40px;height:40px;font-size:12px;font-weight:800;display:grid}.profile-brand strong{color:var(--pp-fg);letter-spacing:-.02em;font-size:15px}.profile-nav-wrap{align-items:center;gap:30px;margin-left:auto;display:flex}.profile-nav{align-items:center;gap:25px;display:flex}.profile-nav a{color:var(--pp-text);padding:34px 0;font-size:13px;font-weight:700;position:relative}.profile-nav a:after{content:"";background:var(--pp-accent);height:2px;transition:transform .18s;position:absolute;bottom:23px;left:0;right:0;transform:scaleX(0)}.profile-nav a:hover,.profile-nav a.active{color:var(--pp-fg)}.profile-nav a.active:after{transform:scaleX(1)}.profile-header-tools{align-items:center;gap:14px;display:flex}.profile-private{border-left:1px solid var(--pp-line);color:var(--pp-muted);white-space:nowrap;align-items:center;gap:7px;padding-left:18px;font-size:11px;font-weight:700;display:inline-flex}.profile-private i{background:var(--pp-accent);width:7px;height:7px;box-shadow:0 0 0 3px color-mix(in srgb,var(--pp-accent) 16%,transparent);border-radius:50%}.profile-theme{border:1px solid var(--pp-line);width:38px;height:38px;color:var(--pp-fg);cursor:pointer;background:0 0;border-radius:50%;place-items:center;font-size:19px;display:grid}.profile-menu{background:var(--pp-dark);border:0;width:42px;height:42px;margin-left:auto;padding:11px;display:none}.profile-menu i{background:#fff;height:2px;margin:4px 0;display:block}.profile-page-hero{border-bottom:1px solid var(--pp-line);background:linear-gradient(180deg,var(--pp-soft),var(--pp-bg));padding:clamp(56px,8vw,104px) 0 clamp(48px,7vw,82px)}.profile-eyebrow{color:var(--pp-accent);letter-spacing:.17em;text-transform:uppercase;align-items:center;gap:10px;font-size:11px;font-weight:800;display:inline-flex}.profile-eyebrow i{background:var(--pp-accent);width:24px;height:1.5px}.profile-page-hero h1{max-width:900px;color:var(--pp-fg);letter-spacing:-.05em;margin:17px 0 0;font-size:clamp(48px,7vw,86px);font-weight:600;line-height:.98}.profile-page-hero p{max-width:680px;color:var(--pp-text);margin:25px 0 0;font-size:clamp(16px,1.5vw,19px);line-height:1.75}.profile-page-content{padding:clamp(58px,8vw,100px) 0 clamp(80px,10vw,130px)}.profile-about-grid{grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);align-items:start;gap:clamp(55px,8vw,110px);display:grid}.profile-prose{min-width:0}.profile-lede{color:var(--pp-fg);letter-spacing:-.025em;margin:0 0 30px;font-size:clamp(23px,2.5vw,34px);line-height:1.4}.profile-rich{color:var(--pp-text);overflow-wrap:anywhere;font-size:17px;line-height:1.9}.profile-rich p{margin:0 0 24px}.profile-rich h2,.profile-rich h3{color:var(--pp-fg);margin:42px 0 15px;line-height:1.2}.profile-rich a{color:var(--pp-accent);text-decoration:underline}.profile-rich img{max-width:100%;height:auto}.profile-facts{border-top:3px solid var(--pp-accent);background:var(--pp-soft);padding:28px}.profile-facts h2{color:var(--pp-fg);margin:0 0 23px;font-size:18px}.profile-facts>div:not(.profile-fact-links){border-top:1px solid var(--pp-line);gap:6px;padding:17px 0;display:grid}.profile-facts span{color:var(--pp-muted);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:800}.profile-facts strong{color:var(--pp-fg);font-size:14px;line-height:1.5}.profile-fact-links{gap:12px;padding-top:23px;display:grid}.profile-fact-links a{color:var(--pp-accent);font-size:13px;font-weight:800}.profile-timeline{position:relative}.profile-timeline:before{content:"";background:var(--pp-line);width:1px;position:absolute;top:0;bottom:0;left:224px}.profile-timeline-item{grid-template-columns:190px minmax(0,1fr);gap:68px;padding:0 0 58px;display:grid;position:relative}.profile-timeline-item:before{content:"";border:3px solid var(--pp-bg);background:var(--pp-accent);width:13px;height:13px;box-shadow:0 0 0 1px var(--pp-accent);border-radius:50%;position:absolute;top:7px;left:218px}.profile-timeline-date{color:var(--pp-muted);text-align:right;padding-top:4px;font-size:12px;font-weight:700}.profile-timeline-body{min-width:0;max-width:760px}.profile-item-kicker{color:var(--pp-accent);letter-spacing:.12em;text-transform:uppercase;margin:0 0 9px;font-size:10px;font-weight:800}.profile-timeline-body h2,.profile-project h2{color:var(--pp-fg);letter-spacing:-.03em;margin:0;font-size:clamp(25px,3vw,38px);line-height:1.18}.profile-timeline-body h3{color:var(--pp-text);margin:8px 0 0;font-size:17px;font-weight:500}.profile-organization{color:var(--pp-fg);margin-top:12px;font-size:15px;display:inline-block}.profile-external:hover{color:var(--pp-accent)}.profile-meta-note{color:var(--pp-muted);margin:12px 0 0;font-size:12px}.profile-description{max-width:70ch;color:var(--pp-text);white-space:pre-line;margin:20px 0 0;font-size:15px;line-height:1.8}.profile-tags{flex-wrap:wrap;gap:7px;margin-top:20px;display:flex}.profile-tags span{border:1px solid var(--pp-line);color:var(--pp-text);border-radius:999px;padding:6px 10px;font-size:10px;font-weight:700}.profile-skill-groups{border-top:1px solid var(--pp-line);gap:0;display:grid}.profile-skill-group{border-bottom:1px solid var(--pp-line);grid-template-columns:270px minmax(0,1fr);gap:60px;padding:39px 0;display:grid}.profile-skill-group>div{align-items:baseline;gap:17px;display:flex}.profile-skill-group>div span{color:var(--pp-accent);font-size:11px;font-weight:800}.profile-skill-group h2{color:var(--pp-fg);margin:0;font-size:25px}.profile-skill-group ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 34px;margin:0;padding:0;list-style:none;display:grid}.profile-skill-group li{padding:0 0 20px}.profile-skill-group li>div{border-bottom:1px solid var(--pp-line);justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:10px;display:flex}.profile-skill-group li strong{color:var(--pp-fg);font-size:14px}.profile-skill-group li span{color:var(--pp-muted);text-transform:capitalize;font-size:10px}.profile-skill-group li p{margin:9px 0 0;font-size:12px;line-height:1.6}.profile-projects{border-top:1px solid var(--pp-line);gap:0;display:grid}.profile-project{border-bottom:1px solid var(--pp-line);grid-template-columns:190px minmax(0,1fr);align-items:start;gap:48px;padding:50px 0;display:grid}.profile-project.has-image{grid-template-columns:minmax(260px,.75fr) minmax(0,1fr)}.profile-project-number{color:var(--pp-line);font-size:72px;font-weight:700;line-height:1}.profile-project-image{aspect-ratio:16/10;background:var(--pp-soft);overflow:hidden}.profile-project-image img{object-fit:cover;width:100%;height:100%;display:block}.profile-project-copy{min-width:0}.profile-project-copy>p:not(.profile-item-kicker){max-width:65ch;margin:18px 0 0;font-size:15px;line-height:1.75}.profile-project-links{flex-wrap:wrap;gap:22px;margin-top:24px;display:flex}.profile-project-links a{border-bottom:1px solid var(--pp-accent);color:var(--pp-fg);padding-bottom:4px;font-size:12px;font-weight:800}.profile-contact-grid{grid-template-columns:minmax(0,.85fr) minmax(360px,1.15fr);gap:clamp(55px,8vw,110px);display:grid}.profile-contact-intro h2{color:var(--pp-fg);letter-spacing:-.035em;margin:0;font-size:clamp(29px,4vw,48px);line-height:1.15}.profile-contact-intro p{margin:23px 0 0;font-size:16px;line-height:1.8}.profile-contact-intro>span{color:var(--pp-muted);margin-top:28px;font-size:11px;line-height:1.6;display:block}.profile-contact-list{border-top:1px solid var(--pp-line)}.profile-contact-list>a,.profile-contact-list>div{border-bottom:1px solid var(--pp-line);grid-template-columns:120px minmax(0,1fr);gap:25px;padding:22px 0;display:grid}.profile-contact-list span{color:var(--pp-muted);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:800}.profile-contact-list strong{min-width:0;color:var(--pp-fg);overflow-wrap:anywhere;font-size:14px}.profile-contact-list a:hover strong{color:var(--pp-accent)}.profile-empty{border-top:3px solid var(--pp-accent);background:var(--pp-soft);max-width:720px;padding:38px}.profile-empty span{color:var(--pp-accent);letter-spacing:.13em;text-transform:uppercase;font-size:10px;font-weight:800}.profile-empty h2{color:var(--pp-fg);margin:13px 0 0;font-size:27px}.profile-empty p{margin:12px 0 0;line-height:1.7}.profile-footer{border-top:1px solid var(--pp-line);background:var(--pp-soft)}.profile-footer-inner{grid-template-columns:220px minmax(0,1fr) 260px;align-items:center;gap:40px;min-height:170px;padding-block:32px;display:grid}.profile-footer-inner>div{gap:5px;display:grid}.profile-footer strong{color:var(--pp-fg);font-size:15px}.profile-footer span,.profile-footer p{color:var(--pp-muted);font-size:11px;line-height:1.6}.profile-footer nav{flex-wrap:wrap;justify-content:center;gap:18px;display:flex}.profile-footer nav a{color:var(--pp-text);font-size:11px;font-weight:700}.profile-footer p{text-align:right;margin:0}.profile-gate-state{color:#59615e;text-align:center;background:#f7f8f7;place-content:center;justify-items:center;gap:14px;min-height:100vh;padding:24px;display:grid}.geeky-dark .profile-gate-state{color:#b5bcb9;background:#101211}.profile-gate-state p{margin:0}.profile-gate-state button{color:#fff;cursor:pointer;background:#2ba283;border:0;border-radius:999px;padding:11px 18px;font-weight:700}.profile-spinner{border:3px solid #d8dedb;border-top-color:#2ba283;border-radius:50%;width:24px;height:24px;animation:.7s linear infinite profile-spin}@keyframes profile-spin{to{transform:rotate(360deg)}}@media (max-width:1080px){.profile-nav{gap:15px}.profile-private{display:none}.profile-timeline:before{left:184px}.profile-timeline-item{grid-template-columns:155px minmax(0,1fr);gap:58px}.profile-timeline-item:before{left:178px}.profile-skill-group{grid-template-columns:220px minmax(0,1fr);gap:35px}}@media (max-width:900px){.profile-menu{display:block}.profile-nav-wrap{border-bottom:1px solid var(--pp-line);background:var(--pp-bg);margin:0;padding:20px 24px 24px;display:none;position:absolute;top:88px;left:0;right:0}.profile-nav-wrap.is-open{display:block}.profile-nav{gap:0;display:grid}.profile-nav a{border-bottom:1px solid var(--pp-line);padding:13px 0}.profile-nav a:after{display:none}.profile-header-tools{justify-content:space-between;margin-top:18px}.profile-private{border:0;padding:0;display:inline-flex}.profile-about-grid,.profile-contact-grid{grid-template-columns:1fr;gap:48px}.profile-timeline:before{left:9px}.profile-timeline-item{grid-template-columns:1fr;gap:12px;padding-left:42px}.profile-timeline-item:before{left:3px}.profile-timeline-date{text-align:left}.profile-skill-group{grid-template-columns:1fr;gap:27px}.profile-footer-inner{text-align:center;grid-template-columns:1fr}.profile-footer p{text-align:center}.profile-project.has-image{grid-template-columns:minmax(220px,.7fr) minmax(0,1fr)}}@media (max-width:640px){.profile-container{width:min(100% - 28px,1200px)}.profile-header-inner{min-height:74px}.profile-nav-wrap{padding-inline:14px;top:74px}.profile-brand strong{font-size:13px}.profile-page-hero{padding-top:48px}.profile-page-hero h1{font-size:49px}.profile-page-content{padding-top:50px}.profile-facts,.profile-empty{padding:24px}.profile-skill-group ul{grid-template-columns:1fr}.profile-project,.profile-project.has-image{grid-template-columns:1fr;gap:24px;padding:38px 0}.profile-project-number{font-size:48px}.profile-contact-list>a,.profile-contact-list>div{grid-template-columns:1fr;gap:7px}.profile-footer nav{gap:14px}.profile-footer-inner{min-height:0;padding-block:48px}}
