.header{position:fixed;inset:0 0 auto;z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0a0a0bbf;border-bottom:1px solid var(--border);transition:background .35s ease,backdrop-filter .35s ease,border-color .35s ease,box-shadow .35s ease}.header-scrolled{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0a0a0be0;border-bottom-color:#ffffff1a;box-shadow:0 4px 24px #00000040}.header-inner{display:flex;align-items:center;justify-content:space-between;height:4rem;gap:1.5rem}.logo{font-family:var(--serif);font-size:1.35rem;font-weight:400}.logo span{color:var(--accent)}.nav{display:flex;gap:1.25rem}.nav a{position:relative;font-size:.82rem;color:var(--muted);transition:color .25s ease;padding-bottom:.25rem}.nav a:hover,.nav a.nav-link-active{color:var(--text)}.nav-indicator{position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:999px;background:linear-gradient(90deg,var(--accent),rgba(59,130,246,.5))}.mobile-menu-btn{display:none;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:.5rem;border:1px solid var(--border);background:var(--surface)}.hamburger{display:flex;flex-direction:column;gap:5px;width:18px}.hamburger span{display:block;height:2px;width:100%;background:var(--text);border-radius:2px;transition:transform .3s ease,opacity .3s ease;transform-origin:center}.hamburger-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.hamburger-open span:nth-child(2){opacity:0}.hamburger-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;top:4rem;background:#00000080;z-index:90}.mobile-menu{position:fixed;inset:4rem 0 auto;z-index:95;display:flex;flex-direction:column;gap:.25rem;padding:1rem 4vw 1.5rem;background:#0a0a0bf5;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border)}.mobile-menu a{padding:.75rem .5rem;font-size:.95rem;color:var(--muted);border-radius:.5rem;transition:color .2s,background .2s}.mobile-menu a:hover,.mobile-menu a.nav-link-active{color:var(--text);background:#ffffff0a}.mobile-menu-cta{margin-top:.75rem;justify-content:center}.show-mobile{display:none}.hero{padding-top:7rem;padding-bottom:clamp(3rem,6vw,5rem);min-height:auto;display:flex;align-items:center;background:radial-gradient(ellipse 80% 60% at 70% 20%,rgba(59,130,246,.08),transparent),var(--bg)}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4rem);align-items:center}.hero-eyebrow{font-size:.8rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:1.25rem}.hero h1{font-family:var(--serif);font-size:clamp(2.5rem,6vw,4.25rem);font-weight:400;line-height:1.05;margin-bottom:1rem}.hero h1 em{font-style:italic;color:var(--muted)}.hero-roles-official{list-style:none;margin-bottom:1rem;padding-left:.85rem;border-left:2px solid var(--accent);display:flex;flex-direction:column;gap:.35rem}.hero-roles-official li{font-size:.88rem;line-height:1.45;color:var(--text);font-weight:500}.hero-subtitle{font-size:.92rem;color:var(--muted);line-height:1.5;margin-bottom:.85rem;max-width:48ch}.hero-social{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.1rem}.social-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:2.35rem;height:2.35rem;border-radius:.55rem;background:var(--surface);border:1px solid var(--border);color:var(--muted);font-size:1rem;transition:color .2s,border-color .2s,background .2s,transform .2s}.social-icon-btn:hover{color:var(--text);border-color:#3b82f673;background:var(--accent-soft);transform:translateY(-2px)}.profiles-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.profile-card-motion-wrap{border-radius:1rem}.profile-card-motion-wrap .profile-card{height:100%}.profile-card{display:flex;gap:1rem;padding:1.25rem;background:var(--surface);border:1px solid var(--border);border-radius:1rem;transition:border-color .3s ease}.profile-card:hover{border-color:#3b82f666}.profile-card:hover .profile-card-icon-animated{transform:translateY(-2px) scale(1.05)}.profile-card-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:.6rem;background:var(--accent-soft);color:var(--accent);font-size:1.15rem;transition:transform .3s ease}.profile-card-body h3{font-size:1rem;font-weight:600;margin-bottom:.2rem}.profile-card-handle{font-size:.9rem;color:var(--text);font-weight:500;margin-bottom:.35rem}.profile-card-desc{font-size:.85rem;color:var(--muted);margin-bottom:.5rem;line-height:1.4}.profile-card-link{display:block;font-size:.75rem;color:var(--accent);word-break:break-all;line-height:1.35}.footer-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;font-size:.85rem;color:var(--muted)}.footer-social{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:center}.footer-social-btn{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:.45rem;color:var(--muted);border:1px solid transparent;font-size:.9rem;transition:color .2s,background .2s,border-color .2s,transform .2s}.footer-social-btn:hover{color:var(--text);background:var(--surface);border-color:var(--border);transform:translateY(-1px)}.national-roles{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem}.role-badge{display:flex;align-items:flex-start;gap:.45rem;padding:.5rem .7rem;background:var(--surface);border:1px solid var(--border);border-radius:.6rem;max-width:100%}.role-badge-icon{flex-shrink:0;margin-top:.1rem;color:var(--accent);opacity:.85}.role-badge-text{display:flex;flex-direction:column;gap:.1rem;min-width:0}.role-badge-team{font-size:.72rem;font-weight:600;line-height:1.3;color:var(--text)}.role-badge-role{font-size:.68rem;color:var(--muted);line-height:1.3}.hero-lead{font-size:1rem;color:var(--muted);max-width:42ch;margin-bottom:1.5rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem}.hero-photo-wrap,.hero-photo-animated{position:relative}.hero-photo-border{position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:1.35rem;background:conic-gradient(from var(--border-angle, 0deg),rgba(59,130,246,.6),rgba(59,130,246,.05),rgba(147,197,253,.4),rgba(59,130,246,.6));animation:borderRotate 8s linear infinite;z-index:0;opacity:.7}@property --border-angle{syntax: "<angle>"; initial-value: 0deg; inherits: false;}@keyframes borderRotate{to{--border-angle: 360deg}}.hero-photo-wrap:before{content:"";position:absolute;top:-1rem;right:-1rem;bottom:-1rem;left:-1rem;border-radius:1.5rem;background:linear-gradient(135deg,var(--accent-soft),transparent);z-index:-1}.hero-photo{position:relative;z-index:1;width:100%;max-width:420px;margin-inline:auto;border-radius:1.25rem;border:1px solid var(--border);object-fit:cover;aspect-ratio:3 / 4}.about-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:3rem;align-items:start}.about-text{display:flex;flex-direction:column;gap:1.25rem;color:var(--muted);font-size:1.05rem}.national-roles-section .national-roles{margin-bottom:0}.section-desc-spaced{margin-bottom:2rem}.btn-sm{padding:.55rem 1rem;font-size:.85rem}.projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.project-card,.credential-card,.document-card,.spotlight-card,.recognition-item{position:relative;overflow:hidden}.card-glow{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(600px circle at var(--mouse-x, 50%) var(--mouse-y, 50%),rgba(59,130,246,.06),transparent 40%);opacity:0;transition:opacity .35s ease;pointer-events:none}.project-card:hover .card-glow,.credential-card:hover .card-glow,.document-card:hover .card-glow,.spotlight-card:hover .card-glow,.recognition-item:hover .card-glow{opacity:1}.project-card{background:var(--surface);border:1px solid var(--border);border-radius:1rem;padding:1.35rem;display:flex;flex-direction:column;gap:.75rem;transition:border-color .3s ease,box-shadow .3s ease}.project-card:hover{border-color:#3b82f659}.project-card h3{font-size:1.05rem;font-weight:600}.project-card p{color:var(--muted);font-size:.9rem;line-height:1.5}.project-points{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem}.project-points li{font-size:.72rem;padding:.3rem .55rem;border-radius:999px;background:var(--accent-soft);color:var(--muted);border:1px solid var(--border)}.project-card .btn{margin-top:auto;align-self:flex-start}.education-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.education-grid-more{margin-top:1rem}.credential-card{background:var(--surface);border:1px solid var(--border);border-radius:1rem;padding:1.25rem;display:flex;flex-direction:column;gap:.65rem;transition:border-color .3s ease,box-shadow .3s ease}.credential-card:hover{border-color:#3b82f659}.credential-card h3{font-size:.95rem;font-weight:600;line-height:1.35}.credential-card p{color:var(--muted);font-size:.88rem;line-height:1.45}.credential-highlight{font-size:.82rem;font-weight:600;color:var(--accent)}.credential-bullets{list-style:none;display:flex;flex-direction:column;gap:.3rem}.credential-bullets li{font-size:.8rem;color:var(--muted);padding-left:.85rem;position:relative}.credential-bullets li:before{content:"·";position:absolute;left:0;color:var(--accent)}.credential-card .btn{margin-top:auto;align-self:flex-start}.accordion-toggle{margin-top:1.25rem;font-size:.88rem;color:var(--accent);font-weight:500;padding:.5rem 0;transition:color .2s}.accordion-toggle:hover{color:var(--text)}.recognition-spotlight{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1.5rem}.spotlight-card{background:var(--surface);border:1px solid var(--border);border-radius:1rem;padding:1.35rem;display:flex;flex-direction:column;gap:.65rem}.spotlight-card h3{font-size:1rem;font-weight:600}.spotlight-subtitle{font-size:.85rem;color:var(--muted)}.spotlight-card p{font-size:.88rem;color:var(--muted);line-height:1.45}.spotlight-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.35rem}.recognition-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.65rem}.recognition-item{display:flex;flex-direction:column;gap:.2rem;padding:.75rem .9rem;background:var(--surface);border:1px solid var(--border);border-radius:.65rem;transition:border-color .3s ease,box-shadow .3s ease}.recognition-item:hover{border-color:#3b82f64d}.recognition-category{font-size:.68rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.recognition-label{font-size:.84rem;color:var(--text);line-height:1.35}.recognition-actions{margin-top:1.5rem;display:flex;justify-content:center}.documents-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.document-card{background:var(--surface);border:1px solid var(--border);border-radius:1rem;padding:1.15rem;display:flex;flex-direction:column;gap:.5rem;transition:border-color .3s ease,box-shadow .3s ease}.document-card:hover{border-color:#3b82f659}.document-card-meta{display:flex;justify-content:space-between;gap:.5rem;font-size:.72rem;color:var(--muted)}.document-card h3{font-size:.92rem;font-weight:600}.document-card p{font-size:.82rem;color:var(--muted);line-height:1.4;flex:1}.document-card .btn{align-self:flex-start}.gallery-masonry{columns:3;column-gap:.75rem}.gallery-masonry .gallery-item{break-inside:avoid;margin-bottom:.75rem;aspect-ratio:auto}.gallery-masonry .gallery-item-tall img{min-height:280px}.gallery-item{position:relative;overflow:hidden;border-radius:.75rem;border:1px solid var(--border)}.gallery-item-inner{overflow:hidden;border-radius:inherit;transition:transform .45s ease}.gallery-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 40%,rgba(10,10,11,.35) 100%);pointer-events:none;opacity:0}.gallery-item img{width:100%;height:auto;object-fit:cover;display:block}.bg-effects{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;overflow:hidden}.bg-blob{position:absolute;border-radius:50%;filter:blur(80px);opacity:.35}.bg-blob-1{width:420px;height:420px;top:-8%;right:10%;background:#3b82f61f}.bg-blob-2{width:360px;height:360px;bottom:20%;left:-5%;background:#6366f114}.bg-blob-3{width:280px;height:280px;top:45%;right:-3%;background:#3b82f60f}.bg-grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(255,255,255,.02) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(ellipse 70% 60% at 50% 30%,black,transparent);mask-image:radial-gradient(ellipse 70% 60% at 50% 30%,black,transparent)}.bg-glow{position:absolute;top:0;left:50%;transform:translate(-50%);width:60%;height:40%;background:radial-gradient(ellipse,rgba(59,130,246,.06),transparent 70%)}.work-card{background:var(--surface);border:1px solid var(--border);border-radius:1.25rem;padding:clamp(1.5rem,4vw,2.5rem)}.work-card h3{font-family:var(--serif);font-size:1.75rem;font-weight:400;margin-bottom:1rem}.work-card p{color:var(--muted);margin-bottom:1.5rem;max-width:60ch}.work-stats{list-style:none;display:flex;flex-wrap:wrap;gap:2rem;margin-bottom:2rem}.work-stats strong{display:block;font-size:1.75rem;font-family:var(--serif);color:var(--text)}.work-stats li{font-size:.85rem;color:var(--muted)}.highlights-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:2rem}.highlight-card{background:var(--surface);border:1px solid var(--border);border-radius:1rem;padding:1.5rem}.highlight-card h3{font-size:1.05rem;font-weight:600;margin-bottom:.75rem}.highlight-card p{color:var(--muted);font-size:.95rem;margin-bottom:1rem}.highlight-link{font-size:.9rem;color:var(--accent);font-weight:500}.highlight-link:hover{text-decoration:underline}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-top:2rem}.contact-inner{text-align:center}.contact-inner .section-desc{margin-inline:auto;margin-bottom:2rem}.contact-links{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}.footer{border-top:1px solid var(--border);padding-block:1.5rem}.footer a:hover{color:var(--text)}@media(max-width:900px){.hero-grid,.about-grid,.highlights-grid,.profiles-grid,.projects-grid,.education-grid,.recognition-spotlight,.recognition-grid,.documents-grid{grid-template-columns:1fr}.gallery-masonry{columns:2}.hero-photo{max-width:280px}.hero{padding-top:5.5rem;min-height:auto;align-items:flex-start}.hero-roles-official li{font-size:.82rem}.national-roles{gap:.4rem}.role-badge{flex:1 1 calc(50% - .4rem);min-width:9.5rem}}@media(max-width:640px){.profiles-grid{grid-template-columns:1fr}}@media(max-width:480px){.gallery-masonry{columns:1}.nav{display:none}}body.pycon-active{background:#f8f7f4;color:#18181b}.pycon-root{--pycon-bg: #f8f7f4;--pycon-bg-alt: #ffffff;--pycon-bg-dark: #111318;--pycon-text: #18181b;--pycon-text-muted: #52525b;--pycon-text-light: #f4f4f5;--pycon-text-light-muted: #a1a1aa;--pycon-border: rgba(24, 24, 27, .1);--pycon-border-light: rgba(255, 255, 255, .12);--pycon-accent: #1e3a5f;--pycon-accent-hover: #152a45;--pycon-accent-soft: rgba(30, 58, 95, .08);--pycon-shadow: 0 1px 2px rgba(24, 24, 27, .04), 0 8px 32px rgba(24, 24, 27, .06);--pycon-shadow-hover: 0 4px 12px rgba(24, 24, 27, .06), 0 16px 48px rgba(24, 24, 27, .1);--pycon-serif: "Instrument Serif", Georgia, serif;--pycon-sans: "DM Sans", system-ui, sans-serif;--pycon-radius: 14px;--pycon-radius-lg: 20px;--pycon-header-h: 4.25rem;--pycon-mobile-bar-h: 4.5rem;position:relative;min-height:100vh;font-family:var(--pycon-sans);color:var(--pycon-text);overflow-x:clip;padding-bottom:var(--pycon-mobile-bar-h)}@media(min-width:768px){.pycon-root{padding-bottom:0}}.pycon-skip{position:absolute;left:-9999px;top:0;z-index:1000;padding:.75rem 1rem;background:var(--pycon-accent);color:#fff;border-radius:0 0 8px 8px}.pycon-skip:focus{left:1rem}.pycon-bg{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;overflow:hidden}.pycon-bg-glow{position:absolute;border-radius:50%;filter:blur(80px);opacity:.35}.pycon-bg-glow-a{width:min(42vw,420px);height:min(42vw,420px);top:-8%;right:10%;background:radial-gradient(circle,rgba(30,58,95,.18) 0%,transparent 70%)}.pycon-bg-glow-b{width:min(36vw,360px);height:min(36vw,360px);bottom:20%;left:-5%;background:radial-gradient(circle,rgba(120,113,108,.12) 0%,transparent 70%)}.pycon-bg-grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(24,24,27,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(24,24,27,.035) 1px,transparent 1px);background-size:48px 48px;-webkit-mask-image:linear-gradient(to bottom,black 0%,transparent 85%);mask-image:linear-gradient(to bottom,black 0%,transparent 85%)}@media(prefers-reduced-motion:reduce){.pycon-bg-glow{animation:none!important}}.pycon-container{width:min(1120px,92vw);margin-inline:auto;position:relative;z-index:1}.pycon-narrow{max-width:720px}.pycon-header{position:sticky;top:0;z-index:50;height:var(--pycon-header-h);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:#f8f7f4d1;border-bottom:1px solid var(--pycon-border)}.pycon-header-inner{display:flex;align-items:center;justify-content:space-between;height:100%;gap:1rem}.pycon-brand{font-size:.9375rem;font-weight:600;letter-spacing:-.01em;color:var(--pycon-text);transition:color .2s ease}.pycon-brand:hover{color:var(--pycon-accent)}.pycon-brand:focus-visible,.pycon-btn:focus-visible,.pycon-talk-card:focus-visible,.pycon-social-link:focus-visible,.pycon-contact-email:focus-visible{outline:2px solid var(--pycon-accent);outline-offset:3px}.pycon-header-cta{display:none}@media(min-width:640px){.pycon-header-cta{display:inline-flex}}.pycon-hero{padding-block:clamp(2.5rem,6vw,4.5rem) clamp(3rem,7vw,5rem)}.pycon-hero-grid{display:grid;gap:clamp(2rem,5vw,3.5rem);align-items:center}@media(min-width:900px){.pycon-hero-grid{grid-template-columns:1.05fr .95fr;gap:clamp(2rem,4vw,4rem)}}.pycon-eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--pycon-accent);margin-bottom:1.25rem}.pycon-hero-title{font-family:var(--pycon-serif);font-size:clamp(2rem,5vw,3.25rem);font-weight:400;line-height:1.12;letter-spacing:-.02em;margin-bottom:1.25rem;max-width:18ch}@media(min-width:900px){.pycon-hero-title{max-width:none}}.pycon-hero-lead{font-size:clamp(1rem,2.2vw,1.125rem);line-height:1.65;color:var(--pycon-text);margin-bottom:.875rem;max-width:52ch}.pycon-hero-support{font-size:.9375rem;line-height:1.65;color:var(--pycon-text-muted);margin-bottom:1.75rem;max-width:50ch}.pycon-badges{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;margin-bottom:2rem}.pycon-badges li{font-size:.8125rem;font-weight:500;padding:.45rem .85rem;border-radius:999px;background:var(--pycon-bg-alt);border:1px solid var(--pycon-border);box-shadow:0 1px 2px #18181b08;color:var(--pycon-text)}.pycon-hero-actions{display:flex;flex-direction:column;gap:.75rem}@media(min-width:480px){.pycon-hero-actions{flex-direction:row;flex-wrap:wrap}}.pycon-hero-visual{justify-self:center;width:min(100%,420px)}@media(min-width:900px){.pycon-hero-visual{justify-self:end;width:100%}}.pycon-hero-frame{position:relative;border-radius:var(--pycon-radius-lg);overflow:hidden;border:1px solid var(--pycon-border);box-shadow:var(--pycon-shadow-hover);background:linear-gradient(145deg,#eef2f6,#e4e9ef);aspect-ratio:4 / 5}.pycon-hero-photo{width:100%;height:100%;object-fit:cover;object-position:center 44%}.pycon-hero-fallback{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:320px;position:relative;background:radial-gradient(circle at 30% 25%,rgba(30,58,95,.12) 0%,transparent 50%),linear-gradient(160deg,#eef2f6,#dde4ec)}.pycon-hero-initials{font-family:var(--pycon-serif);font-size:clamp(3.5rem,10vw,5rem);font-weight:400;color:var(--pycon-accent);letter-spacing:-.04em;z-index:1}.pycon-hero-fallback-ring{position:absolute;top:12%;right:12%;bottom:12%;left:12%;border:1px solid rgba(30,58,95,.15);border-radius:50%}.pycon-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 1.5rem;font-size:.9375rem;font-weight:600;border-radius:999px;border:1px solid transparent;transition:background .2s ease,border-color .2s ease,color .2s ease;text-align:center;white-space:nowrap}.pycon-btn-sm{padding:.625rem 1.125rem;font-size:.875rem}.pycon-btn-block{width:100%}.pycon-btn-primary{background:var(--pycon-accent);color:#fff;border-color:var(--pycon-accent)}.pycon-btn-primary:hover{background:var(--pycon-accent-hover);border-color:var(--pycon-accent-hover)}.pycon-btn-secondary{background:var(--pycon-bg-alt);color:var(--pycon-text);border-color:var(--pycon-border);box-shadow:0 1px 2px #18181b0a}.pycon-btn-secondary:hover{border-color:#1e3a5f40;background:#fff}.pycon-btn-secondary svg{font-size:.75rem}.pycon-section{padding-block:clamp(3.5rem,7vw,5.5rem);position:relative;z-index:1}.pycon-section-light{background:var(--pycon-bg-alt);border-block:1px solid var(--pycon-border)}.pycon-section-dark{background:var(--pycon-bg-dark);color:var(--pycon-text-light)}.pycon-section-contact{background:linear-gradient(180deg,var(--pycon-bg) 0%,#f0eeea 100%)}.pycon-label{font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--pycon-accent);margin-bottom:.75rem}.pycon-label-light{color:#94a3b8}.pycon-section-title{font-family:var(--pycon-serif);font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:400;line-height:1.15;letter-spacing:-.02em;margin-bottom:1.5rem}.pycon-section-title-light{color:var(--pycon-text-light)}.pycon-prose{font-size:1.0625rem;line-height:1.75;color:var(--pycon-text);max-width:62ch}.pycon-prose-muted{color:var(--pycon-text-muted);margin-bottom:1.75rem}.pycon-section-dark .pycon-prose{color:var(--pycon-text-light-muted)}.pycon-projects{display:grid;gap:1.25rem}@media(min-width:768px){.pycon-projects{grid-template-columns:repeat(2,1fr);gap:1.5rem}}.pycon-project-card{height:100%;padding:clamp(1.5rem,3vw,2rem);background:var(--pycon-bg-alt);border:1px solid var(--pycon-border);border-radius:var(--pycon-radius);box-shadow:var(--pycon-shadow);transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s ease}.pycon-project-card:hover{transform:translateY(-4px);box-shadow:var(--pycon-shadow-hover)}@media(prefers-reduced-motion:reduce){.pycon-project-card:hover{transform:none}}.pycon-project-card h3{font-size:1.125rem;font-weight:600;letter-spacing:-.01em;margin-bottom:.75rem}.pycon-project-card>p{font-size:.9375rem;line-height:1.65;color:var(--pycon-text-muted);margin-bottom:1.25rem}.pycon-signals{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none}.pycon-signals li{font-size:.75rem;font-weight:500;padding:.35rem .7rem;border-radius:999px;background:var(--pycon-accent-soft);color:var(--pycon-accent);border:1px solid rgba(30,58,95,.12)}.pycon-metrics{display:grid;gap:1rem}@media(min-width:640px){.pycon-metrics{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.pycon-metrics{grid-template-columns:repeat(4,1fr)}}.pycon-metric-card{display:flex;align-items:flex-start;gap:.75rem;padding:1.25rem;border-radius:var(--pycon-radius);background:#ffffff0a;border:1px solid var(--pycon-border-light);height:100%;transition:background .25s ease,border-color .25s ease}.pycon-metric-card:hover{background:#ffffff0f;border-color:#ffffff2e}.pycon-metric-dot{flex-shrink:0;width:6px;height:6px;margin-top:.55rem;border-radius:50%;background:#64748b}.pycon-metric-card p{font-size:.875rem;line-height:1.55;color:var(--pycon-text-light-muted)}.pycon-topics{display:grid;gap:.875rem}@media(min-width:768px){.pycon-topics{grid-template-columns:repeat(2,1fr);gap:1rem}}.pycon-topic-card{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem 1.5rem;background:var(--pycon-bg);border:1px solid var(--pycon-border);border-radius:var(--pycon-radius);transition:border-color .25s ease,box-shadow .25s ease}.pycon-topic-card:hover{border-color:#1e3a5f33;box-shadow:var(--pycon-shadow)}.pycon-topic-index{flex-shrink:0;font-size:.75rem;font-weight:600;letter-spacing:.08em;color:var(--pycon-accent);opacity:.7;padding-top:.15rem}.pycon-topic-card p{font-size:.9375rem;line-height:1.55;color:var(--pycon-text)}.pycon-talk-card{display:flex;flex-direction:column;gap:0;border-radius:var(--pycon-radius-lg);overflow:hidden;border:1px solid var(--pycon-border);background:var(--pycon-bg-alt);box-shadow:var(--pycon-shadow);transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s ease}@media(min-width:560px){.pycon-talk-card{flex-direction:row}}.pycon-talk-card:hover{transform:translateY(-3px);box-shadow:var(--pycon-shadow-hover)}@media(prefers-reduced-motion:reduce){.pycon-talk-card:hover{transform:none}}.pycon-talk-thumb{display:flex;align-items:center;justify-content:center;min-height:160px;background:linear-gradient(135deg,#1e3a5feb,#111318f2);position:relative}@media(min-width:560px){.pycon-talk-thumb{width:220px;min-height:auto;flex-shrink:0}}.pycon-talk-play{display:flex;align-items:center;justify-content:center;width:3.5rem;height:3.5rem;border-radius:50%;background:#ffffff26;border:1px solid rgba(255,255,255,.25);color:#fff;font-size:.875rem;padding-left:.15rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:transform .25s ease,background .25s ease}.pycon-talk-card:hover .pycon-talk-play{transform:scale(1.06);background:#ffffff38}.pycon-talk-body{display:flex;flex-direction:column;gap:.35rem;padding:1.5rem;justify-content:center}.pycon-talk-eyebrow{font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--pycon-accent)}.pycon-talk-heading{font-family:var(--pycon-serif);font-size:1.375rem;color:var(--pycon-text)}.pycon-talk-desc{font-size:.875rem;color:var(--pycon-text-muted);line-height:1.5}.pycon-contact-grid{display:grid;gap:2.5rem;align-items:start}@media(min-width:800px){.pycon-contact-grid{grid-template-columns:1fr 1fr;gap:3rem}}.pycon-location{margin-top:1.25rem;font-size:.875rem;color:var(--pycon-text-muted)}.pycon-contact-panel{padding:clamp(1.5rem,3vw,2rem);background:var(--pycon-bg-alt);border:1px solid var(--pycon-border);border-radius:var(--pycon-radius-lg);box-shadow:var(--pycon-shadow)}.pycon-contact-email{display:block;text-align:center;margin-block:1rem 1.5rem;font-size:.9375rem;font-weight:500;color:var(--pycon-accent);word-break:break-all}.pycon-contact-email:hover{text-decoration:underline}.pycon-social-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.625rem}@media(min-width:480px){.pycon-social-grid{grid-template-columns:repeat(3,1fr)}}.pycon-social-link{display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:.875rem .5rem;border-radius:var(--pycon-radius);border:1px solid var(--pycon-border);background:var(--pycon-bg);font-size:.75rem;font-weight:500;color:var(--pycon-text-muted);transition:border-color .2s ease,color .2s ease,background .2s ease}.pycon-social-link svg{font-size:1.125rem;color:var(--pycon-accent)}.pycon-social-link:hover{border-color:#1e3a5f40;color:var(--pycon-text);background:#fff}.pycon-footer{position:relative;z-index:1;padding-block:2rem 2.5rem;border-top:1px solid var(--pycon-border);background:var(--pycon-bg-alt)}.pycon-footer-inner{display:flex;flex-direction:column;gap:.75rem;align-items:flex-start}@media(min-width:640px){.pycon-footer-inner{flex-direction:row;align-items:center;justify-content:space-between}}.pycon-footer p{font-size:.875rem;color:var(--pycon-text-muted);max-width:42ch;line-height:1.5}.pycon-footer a{font-size:.875rem;font-weight:500;color:var(--pycon-accent)}.pycon-footer a:hover{text-decoration:underline}.pycon-mobile-bar{position:fixed;bottom:0;left:0;right:0;z-index:60;padding:.75rem 1rem calc(.75rem + env(safe-area-inset-bottom,0px));background:#f8f7f4eb;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--pycon-border);box-shadow:0 -4px 24px #18181b14}@media(min-width:768px){.pycon-mobile-bar{display:none}}.pycon-mobile-bar-primary{width:100%}.pycon-mobile-bar .pycon-btn svg{font-size:.875rem}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0a0a0b;--surface: #141416;--border: rgba(255, 255, 255, .08);--text: #f4f4f5;--muted: #a1a1aa;--accent: #3b82f6;--accent-soft: rgba(59, 130, 246, .12);--serif: "Instrument Serif", Georgia, serif;--sans: "DM Sans", system-ui, sans-serif}html{scroll-behavior:smooth}body{font-family:var(--sans);background:var(--bg);color:var(--text);line-height:1.6;-webkit-font-smoothing:antialiased;position:relative}#root{position:relative;z-index:1}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;border:none;background:none}.container{width:min(1100px,92vw);margin-inline:auto}.section{padding-block:clamp(4rem,8vw,7rem)}.section-label{font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:.75rem}.section-title{font-family:var(--serif);font-size:clamp(2rem,4vw,3rem);font-weight:400;line-height:1.15;margin-bottom:1rem}.section-desc{color:var(--muted);max-width:52ch;font-size:1.05rem}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.4rem;border-radius:999px;font-weight:500;font-size:.95rem;transition:background .25s ease,border-color .25s ease,box-shadow .25s ease}.btn-content{display:inline-flex;align-items:center;gap:.4rem}.btn-arrow{display:inline-block;transition:transform .25s ease}.btn:hover .btn-arrow{transform:translate(3px)}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:#2563eb}.btn-ghost{border:1px solid var(--border);color:var(--text)}.btn-ghost:hover{border-color:#fff3;background:#ffffff0a}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(max-width:768px){.hide-mobile{display:none!important}.show-mobile{display:flex!important}.mobile-menu-btn.show-mobile{display:inline-flex}}
