@import 'https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap';:root{--accent:#86C5DA;--accent-text:#2E7A92;--accent-soft:rgba(134, 197, 218, 0.20);--accent-bg:rgba(134, 197, 218, 0.14);--ink:#252525;--ink-soft:rgba(37, 37, 37, 0.65);--ink-mute:rgba(37, 37, 37, 0.45);--line:rgba(37, 37, 37, 0.10);--surface:#ffffff;--surface-alt:#f9f9f9;--shadow-card:0 50px 100px rgba(0, 0, 0, 0.05);--font-sans:'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;--container:1140px;--pad-x:2rem}body.colorscheme-dark{--ink:#f1f1f1;--ink-soft:rgba(241, 241, 241, 0.70);--ink-mute:rgba(241, 241, 241, 0.45);--line:rgba(241, 241, 241, 0.12);--surface:#15191f;--surface-alt:#0d1014;--shadow-card:0 50px 100px rgba(0, 0, 0, 0.35);--accent-text:#9DD4E5}.content{flex-direction:column;display:block;margin-top:0;padding:0}body{font-family:var(--font-sans);color:var(--ink);font-size:18px;line-height:1.7;background:var(--surface)}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);color:var(--ink);font-weight:700;line-height:1.2;letter-spacing:-.02em;margin:0}p{margin:0 0 1rem}a{color:var(--accent);text-decoration:none;transition:color .2s ease}a:hover{color:var(--accent)!important}.ge-section{max-width:var(--container);margin:0 auto;padding:6rem var(--pad-x)}.ge-section+.ge-section{padding-top:2rem}.eyebrow{display:block;font-size:1.035rem;font-weight:700;text-transform:uppercase;letter-spacing:.16em;color:var(--accent-text);margin-bottom:1.25rem}.ge-section h2{font-size:clamp(2.3rem,4.5vw,2.875rem);font-weight:700;color:var(--ink);margin:0 0 2.5rem}.more-link{display:inline-flex;align-items:center;margin-top:2.25rem;padding:1.05rem 2.1rem;border:1px solid var(--line);border-radius:999px;font-weight:600;font-size:1.3rem;color:var(--ink)!important;background:var(--surface);transition:all .3s ease}.more-link:hover{background:var(--accent);border-color:var(--accent);color:#fff!important}.more-link::after{content:'  →'}.ge-hero{max-width:var(--container);margin:0 auto;padding:6rem var(--pad-x)4rem;display:grid;grid-template-columns:1fr 320px;gap:4rem;align-items:center}.ge-hero .eyebrow{font-size:1.55rem;letter-spacing:.12em;margin-bottom:1.5rem}.ge-hero h1{font-size:clamp(3.15rem,7vw,4.9rem);font-weight:800;letter-spacing:-.035em;line-height:1.05;margin:0 0 1.5rem}.ge-hero .lede{font-size:1.6rem;line-height:1.55;color:var(--ink-soft);max-width:44rem;margin:0 0 2.5rem;font-weight:400}.ge-hero-cta{display:flex;gap:.85rem;flex-wrap:wrap;margin-bottom:2rem}.btn{display:inline-flex;align-items:center;padding:1rem 2rem;border-radius:999px;font-weight:600;font-size:1.15rem;text-decoration:none;border:1px solid transparent;transition:all .3s ease;letter-spacing:.01em}.btn-primary{background:var(--accent);color:#fff!important;border-color:var(--accent)}.btn-primary:hover{background:0 0;color:var(--accent)!important;border-color:var(--accent)}.btn-secondary{color:var(--ink)!important;border-color:var(--line);background:0 0}.btn-secondary:hover{background:var(--accent);border-color:var(--accent);color:#fff!important}.ge-hero .socials{display:flex;gap:1.25rem}.ge-hero .socials a{color:var(--ink-soft);font-size:1.5rem;transition:color .2s ease,transform .2s ease}.ge-hero .socials a:hover{color:var(--accent)!important;transform:translateY(-2px)}.ge-hero-avatar{justify-self:end}.ge-hero-avatar img{width:320px;height:320px;border-radius:50%;object-fit:cover;box-shadow:var(--shadow-card)}.ge-credibility{background:var(--surface-alt);padding:3rem var(--pad-x);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.ge-credibility-inner{max-width:var(--container);margin:0 auto;display:flex;align-items:center;gap:1rem;flex-wrap:wrap;justify-content:center}.ge-credibility .label{font-size:1.25rem;font-weight:700;text-transform:uppercase;letter-spacing:.16em;color:var(--ink-soft);margin-right:1.25rem}.venue-pill{display:inline-block;padding:.85rem 1.6rem;background:var(--surface);border:1px solid var(--line);border-radius:999px;font-size:1.25rem;font-weight:600;color:var(--ink);transition:all .3s ease}.venue-pill:hover{background:var(--accent);border-color:var(--accent);color:#fff}.ge-stats{max-width:var(--container);margin:0 auto;padding:5rem var(--pad-x);display:grid;grid-template-columns:repeat(3,1fr);gap:0}.ge-stat{text-align:center;padding:1rem 2rem}.ge-stat+.ge-stat{border-left:1px solid var(--line)}.ge-stat .num{display:block;font-size:clamp(2.75rem,5vw,3.75rem);font-weight:800;color:var(--accent);line-height:1;letter-spacing:-.04em;font-family:var(--font-sans)}.ge-stat .lbl{display:block;margin-top:1rem;font-size:.95rem;color:var(--ink-soft);line-height:1.5;max-width:22ch;margin-left:auto;margin-right:auto}.pub-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.75rem}.pub-card{background:var(--surface);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-card);transition:transform .4s ease,box-shadow .4s ease;display:flex;flex-direction:column}.pub-card:hover{transform:translateY(-6px);box-shadow:0 60px 120px rgba(0,0,0,8%)}.pub-body{padding:2.25rem 2rem 2rem;display:flex;flex-direction:column;flex:1}.pub-card h3{font-size:2.07rem;line-height:1.2;margin:0 0 1.25rem}.pub-card h3 a{color:var(--ink);background-image:linear-gradient(var(--accent),var(--accent));background-size:0% 2px;background-repeat:no-repeat;background-position:0 100%;transition:background-size .3s ease}.pub-card h3 a:hover{background-size:100% 2px;color:var(--ink)!important}.pub-card p{font-size:1.3rem;line-height:1.65;color:var(--ink-soft);margin:0 0 2.25rem;flex:1}.pub-links{display:flex;gap:.75rem}.pub-btn{display:inline-flex;align-items:center;gap:.55rem;padding:.8rem 1.4rem;border:1px solid var(--line);border-radius:999px;font-size:1.09rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--ink)!important;background:var(--surface);transition:all .3s ease}.pub-btn i{font-size:1.05rem}.pub-btn:hover{background:var(--accent);border-color:var(--accent);color:#fff!important}.pub-venue-bar{background:var(--accent-bg);color:var(--accent-text);padding:1.5rem 2rem;font-size:1.3rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;text-align:left}.pub-venue-bar--primary{background:var(--accent);color:#fff}.pub-venue-bar--mid{background:rgba(134,197,218,.55);color:#1a4452}.ge-about p{font-size:1.44rem;color:var(--ink-soft);max-width:42rem;margin:0 0 1.4rem;line-height:1.7}.talks-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.75rem}.talk-card{display:block;background:var(--surface);border-radius:16px;overflow:hidden;text-decoration:none;box-shadow:var(--shadow-card);transition:transform .4s ease,box-shadow .4s ease}.talk-card:hover{transform:translateY(-6px);box-shadow:0 60px 120px rgba(0,0,0,8%)}.talk-card img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}.talk-card .talk-info{padding:1.75rem 1.75rem 2rem}.talk-card h4{font-size:1.6rem;margin:0 0 .85rem;color:var(--ink);line-height:1.3}.talk-card span{font-size:1.15rem;color:var(--accent-text);text-transform:uppercase;letter-spacing:.12em;font-weight:700}.ge-cta{background:var(--surface-alt);padding:5rem var(--pad-x);text-align:center;border-top:1px solid var(--line);margin-top:4rem}.ge-cta h3{font-size:clamp(1.725rem,3.5vw,2.3rem);margin:0 0 1.5rem;max-width:30ch;margin-left:auto;margin-right:auto;line-height:1.3}.pub-badge{display:inline-block;background:var(--accent-bg);color:var(--accent-text);font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;padding:.35rem .85rem;border-radius:999px;margin-bottom:.5rem}.ge-publications-page .ge-publications-intro{font-size:1.725rem;color:var(--ink-soft);margin:-1.5rem 0 3.5rem;max-width:none;line-height:1.7}body:not(.colorscheme-dark) .ge-publications-page,body:not(.colorscheme-dark) .ge-talks-page,body:not(.colorscheme-dark) .ge-contact-page,body:not(.colorscheme-dark) .ge-about-page{--pub-accent:#2E7A92;--pub-accent-bg:rgba(46, 122, 146, 0.08)}body.colorscheme-dark .ge-publications-page,body.colorscheme-dark .ge-talks-page,body.colorscheme-dark .ge-contact-page,body.colorscheme-dark .ge-about-page{--pub-accent:var(--accent);--pub-accent-bg:var(--accent-bg)}.ge-about-page>p{font-size:1.3rem;color:var(--ink);line-height:1.75;max-width:60rem;margin:0 0 1.5rem}.ge-about-page>p:first-of-type{font-size:1.5rem;color:var(--ink-soft);margin:0 0 3rem}.ge-about-page>h2:not(:first-of-type){font-size:1.9rem;font-weight:700;color:var(--ink);margin:3.5rem 0 1.25rem;padding-left:1rem;border-left:4px solid var(--pub-accent,var(--accent));letter-spacing:-.01em}.ge-about-page strong{color:var(--ink);font-weight:700}.ge-about-page a{color:var(--pub-accent,var(--accent));font-weight:600;border-bottom:2px solid transparent;transition:border-color .2s ease}.ge-about-page a:hover{color:var(--pub-accent,var(--accent))!important;border-bottom-color:var(--pub-accent,var(--accent))}.ge-contact-page>p:first-of-type{font-size:1.6rem;color:var(--ink-soft);line-height:1.65;max-width:60rem;margin:-1.5rem 0 3.5rem}.contact-entry{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:2rem;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--pub-accent,var(--accent));border-radius:12px;padding:2rem 2.5rem;margin-bottom:1.75rem;text-decoration:none!important;color:var(--ink)!important;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.contact-entry:hover{transform:translateY(-4px);box-shadow:0 20px 60px rgba(0,0,0,8%);color:var(--ink)!important}body.colorscheme-dark .contact-entry:hover{box-shadow:0 20px 60px rgba(0,0,0,.3)}.contact-entry-icon{width:72px;height:72px;border-radius:14px;background:var(--pub-accent-bg,var(--accent-bg));color:var(--pub-accent,var(--accent));display:flex;align-items:center;justify-content:center;font-size:2rem;transition:background .3s ease,color .3s ease}.contact-entry:hover .contact-entry-icon{background:var(--pub-accent,var(--accent));color:#fff}.contact-entry-header{display:flex;align-items:baseline;gap:1rem;flex-wrap:wrap;margin-bottom:.4rem}.contact-entry-platform{font-size:1.5rem;font-weight:700;color:var(--ink);letter-spacing:-.01em}.contact-entry-handle{font-size:1.05rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--pub-accent,var(--accent))}.contact-entry-description{font-size:1.2rem;color:var(--ink-soft);line-height:1.5;margin:0}.contact-entry-arrow{color:var(--ink-mute);font-size:1.4rem;transition:transform .3s ease,color .3s ease}.contact-entry:hover .contact-entry-arrow{color:var(--pub-accent,var(--accent));transform:translateX(4px)}.pub-entry{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--pub-accent,var(--accent));border-radius:12px;padding:3rem;margin-bottom:2.5rem;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.pub-entry:hover{transform:translateY(-4px);box-shadow:0 20px 60px rgba(0,0,0,8%)}body.colorscheme-dark .pub-entry:hover{box-shadow:0 20px 60px rgba(0,0,0,.3)}.pub-entry-image{border-radius:8px;overflow:hidden;align-self:start;background:var(--surface-alt)}.pub-entry-image img{width:100%;height:auto;display:block}.pub-entry-content--full{grid-column:1/-1}.pub-entry-header{margin-bottom:1rem}.pub-entry-venue{display:inline-block;background:var(--pub-accent,var(--accent));color:#fff;font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;padding:.5rem 1.25rem;border-radius:999px}.pub-entry-title{font-size:2.3rem;font-weight:700;line-height:1.3;margin:0 0 1rem;letter-spacing:-.01em}.pub-entry-title a{color:var(--ink);transition:color .2s ease}.pub-entry-title a:hover{color:var(--pub-accent,var(--accent))!important}.pub-entry-citation{font-size:1.5rem;color:var(--ink-mute);line-height:1.65;margin:0 0 1.25rem}.pub-entry-why{font-size:1.55rem;color:var(--ink-soft);line-height:1.65;margin:0 0 1.5rem;padding:1.25rem 1.5rem;background:var(--pub-accent-bg,var(--accent-bg));border-left:4px solid var(--pub-accent,var(--accent));border-radius:0 8px 8px 0;font-weight:500}.pub-entry-details{margin-bottom:1.75rem}.pub-entry-details summary{cursor:pointer;font-size:1.15rem;font-weight:600;color:var(--accent-text);text-transform:uppercase;letter-spacing:.08em;padding:.6rem 0;list-style:none;display:inline-flex;align-items:center;gap:.5rem;transition:color .2s ease}.pub-entry-details summary::-webkit-details-marker{display:none}.pub-entry-details summary::before{content:'▸';font-size:.9rem;transition:transform .2s ease}.pub-entry-details[open] summary::before{transform:rotate(90deg)}.pub-entry-details summary:hover{color:var(--accent)}.pub-entry-abstract{font-size:1.5rem;color:var(--ink);line-height:1.75;padding:1.25rem 0 0;max-width:65ch}.pub-entry-actions{display:flex;gap:.85rem;flex-wrap:wrap}.pub-entry .pub-btn{font-size:1.2rem;padding:.85rem 1.6rem}.talk-entry{display:grid;grid-template-columns:360px 1fr;gap:2.5rem;align-items:center;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--pub-accent,var(--accent));border-radius:12px;padding:2.5rem;margin-bottom:2.5rem;transition:transform .3s ease,box-shadow .3s ease}.talk-entry:hover{transform:translateY(-4px);box-shadow:0 20px 60px rgba(0,0,0,8%)}body.colorscheme-dark .talk-entry:hover{box-shadow:0 20px 60px rgba(0,0,0,.3)}.talk-entry-thumb{position:relative;display:block;border-radius:10px;overflow:hidden;background:var(--surface-alt);aspect-ratio:16/9}.talk-entry-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}.talk-entry:hover .talk-entry-thumb img{transform:scale(1.04)}.talk-entry-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:64px;height:64px;border-radius:50%;background:var(--pub-accent,var(--accent));color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.4rem;padding-left:5px;box-shadow:0 8px 24px rgba(0,0,0,.25);transition:transform .3s ease,background .3s ease}.talk-entry:hover .talk-entry-play{transform:translate(-50%,-50%)scale(1.1)}.talk-entry-header{margin-bottom:1rem}.talk-entry-venue{display:inline-block;background:var(--pub-accent,var(--accent));color:#fff;font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;padding:.5rem 1.25rem;border-radius:999px}.talk-entry-title{font-size:2rem;font-weight:700;line-height:1.3;margin:0 0 1rem;letter-spacing:-.01em}.talk-entry-title a{color:var(--ink);transition:color .2s ease}.talk-entry-title a:hover{color:var(--pub-accent,var(--accent))!important}.talk-entry-description{font-size:1.3rem;color:var(--ink);line-height:1.65;margin:0 0 1.5rem;padding:1.1rem 1.4rem;background:var(--pub-accent-bg,var(--accent-bg));border-left:4px solid var(--pub-accent,var(--accent));border-radius:0 8px 8px 0;font-weight:500}.talk-entry-actions{display:flex;gap:.85rem;flex-wrap:wrap}.talk-entry .pub-btn{font-size:1.2rem;padding:.85rem 1.6rem}.video-container{display:flex;align-items:flex-start;margin-bottom:2rem;padding:2rem;border-radius:16px;background:var(--surface);box-shadow:var(--shadow-card);transition:transform .4s ease}.video-container:hover{transform:translateY(-4px)}.video-container a{margin-right:1.5rem;flex-shrink:0}.video-container img{max-width:300px;width:100%;border-radius:8px}.video-description{flex:1;min-width:0}.video-description h3{margin-top:0}@media(max-width:900px){:root{--pad-x:1.5rem}.ge-hero{grid-template-columns:1fr;gap:2.5rem;padding:4rem var(--pad-x)3rem}.ge-hero-avatar{order:-1;justify-self:start}.ge-hero-avatar img{width:140px;height:140px}.ge-section{padding:4rem var(--pad-x)}.ge-stats{grid-template-columns:1fr;padding:3.5rem var(--pad-x);gap:2.5rem}.ge-stat{padding:0}.ge-stat+.ge-stat{border-left:0;border-top:1px solid var(--line);padding-top:2.5rem}.pub-grid{grid-template-columns:1fr}.talks-grid{grid-template-columns:1fr}.video-container{flex-direction:column;text-align:center}.video-container a{margin-right:0;margin-bottom:1rem}.video-container img{max-width:100%}.pub-entry{grid-template-columns:1fr;gap:1.5rem;padding:2rem}.pub-entry-image{max-width:100%}.pub-entry-title{font-size:1.4rem}.talk-entry{grid-template-columns:1fr;gap:1.5rem;padding:1.75rem}.talk-entry-title{font-size:1.5rem}.contact-entry{grid-template-columns:auto 1fr;gap:1.25rem;padding:1.5rem 1.75rem}.contact-entry-arrow{display:none}.contact-entry-icon{width:56px;height:56px;font-size:1.6rem}.contact-entry-platform{font-size:1.3rem}}