    :root{--ink:#14243a;--muted:#5d6c7d;--paper:#f5f7f7;--white:#fff;--line:#dce4e7;--teal:#00a89b;--lime:#d8efb9;--navy:#101b29;--max:1220px}
    *{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 'DM Sans',system-ui,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}::selection{background:#a8e9df;color:#102134}.wrap{width:min(calc(100% - 64px),var(--max));margin:auto}a:focus-visible,button:focus-visible{outline:3px solid #15b7ab;outline-offset:4px}section{scroll-margin-top:86px}
    .site-header{position:fixed;top:0;left:0;right:0;z-index:20;transition:background .25s,box-shadow .25s;color:#fff}.site-header.scrolled,.site-header.menu-open{background:#101b29ed;backdrop-filter:blur(18px);box-shadow:0 1px 0 #ffffff20}.nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font:800 17px/1 'Manrope',sans-serif;letter-spacing:-.04em;white-space:nowrap}.brand span{color:#77e6d7}.nav-links{display:flex;align-items:center;gap:20px}.nav-links a{font-size:13px;font-weight:700;letter-spacing:.015em;color:#d5e0e7;transition:color .2s}.nav-links a:hover{color:#7ee6d6}.nav-cta{border:1px solid #ffffff66;border-radius:100px;padding:9px 17px}.menu-toggle{display:none;background:none;border:0;color:#fff;padding:6px;cursor:pointer}
    .hero{position:relative;overflow:hidden;background:var(--navy);color:#fff;min-height:735px;padding:168px 0 112px}.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 75% 43%,#23646b66,transparent 36%),linear-gradient(110deg,#101b29 25%,#15283a 100%)}.hero .wrap{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:50px}.eyebrow{display:flex;align-items:center;gap:12px;text-transform:uppercase;letter-spacing:.18em;font-size:11px;font-weight:800;color:#67dbcd}.eyebrow:before{content:"";width:28px;height:1px;background:currentColor}.hero h1{font:700 clamp(3rem,5.35vw,5.7rem)/1.07 'Manrope',sans-serif;letter-spacing:-.075em;margin:25px 0 24px;max-width:750px}.hero h1 em{font-style:normal;color:#7fe1d4}.hero p{max-width:565px;color:#b9c8d4;font-size:18px;line-height:1.75;margin:0 0 34px}.actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;justify-content:center;align-items:center;gap:11px;border-radius:100px;padding:13px 21px;font-size:13px;font-weight:800;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-3px)}.btn-primary{background:#a3eadb;color:#102536}.btn-primary:hover{background:#d1f6eb}.btn-ghost{border:1px solid #a8bcc477;color:#fff}.hero-meta{margin-top:75px;display:flex;gap:38px;flex-wrap:wrap}.hero-meta div{border-left:1px solid #6ba6aa80;padding-left:15px}.hero-meta strong,.hero-meta span{display:block}.hero-meta strong{font:700 13px/1.5 'Manrope',sans-serif}.hero-meta span{color:#89a5b5;font-size:12px;margin-top:3px}
    .visual{height:480px;position:relative;display:grid;place-items:center}.orbit{position:absolute;border:1px solid #7bbcb844;border-radius:50%;width:460px;aspect-ratio:1;animation:spin 48s linear infinite}.orbit:nth-child(2){width:360px;border-style:dashed;animation-direction:reverse;animation-duration:62s}.orbit:nth-child(3){width:555px;opacity:.36}.orbit:after{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:#8becdc;top:14%;left:15%;box-shadow:0 0 20px #8becdc}.chip{width:min(65%,310px);aspect-ratio:1;position:relative;border:1px solid #78d3ca99;background:linear-gradient(145deg,#224759,#142e40);border-radius:25px;transform:rotate(-13deg);box-shadow:0 0 0 12px #27717a18,0 35px 100px #0008,0 0 90px #5fdbd529;display:grid;place-items:center;animation:float 7s ease-in-out infinite}.chip:before{content:"";position:absolute;inset:14px;border:1px solid #69b2b077;border-radius:17px;background:repeating-linear-gradient(0deg,transparent 0 23px,#65c3bb13 24px 25px),repeating-linear-gradient(90deg,transparent 0 23px,#65c3bb13 24px 25px)}.chip:after{content:"";position:absolute;inset:-19px;background:repeating-linear-gradient(90deg,transparent 0 13px,#78c6bb 13px 17px,transparent 17px 28px) top/100% 8px no-repeat,repeating-linear-gradient(90deg,transparent 0 13px,#78c6bb 13px 17px,transparent 17px 28px) bottom/100% 8px no-repeat;opacity:.6;pointer-events:none}.chip-core{width:52%;aspect-ratio:1;border-radius:50%;border:1px solid #8ee8d6;display:grid;place-items:center;position:relative;box-shadow:0 0 45px #6bdbcd50,inset 0 0 45px #6bdbcd25}.chip-core:before,.chip-core:after{content:"";position:absolute;border:1px solid #a2eadb88;border-radius:50%;inset:18px}.chip-core:after{inset:38px;background:#b7f2dc;box-shadow:0 0 25px #b7f2dc}.visual-label{position:absolute;background:#173043df;border:1px solid #86cfc344;backdrop-filter:blur(10px);color:#bce9e0;padding:10px 14px;border-radius:9px;font:600 11px 'Manrope',sans-serif;letter-spacing:.035em}.v-one{top:48px;left:5%}.v-two{bottom:54px;right:0}.v-three{bottom:95px;left:0}.visual-label b{color:#7ce8d6;margin-right:8px}
    .ticker{background:#e8f1ef;border-bottom:1px solid var(--line)}.ticker .wrap{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:19px 0;flex-wrap:wrap}.ticker span{font-size:11px;font-weight:800;letter-spacing:.15em;color:#1a807e;text-transform:uppercase}.ticker p{margin:0;color:#475a67;font-size:13px}.ticker a{font-weight:800;border-bottom:1px solid #368c85}.section{padding:105px 0}.section-top{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:40px}.kicker{color:#008c85;font:800 11px 'Manrope',sans-serif;letter-spacing:.18em;text-transform:uppercase}.section h2{font:700 clamp(2.2rem,3.7vw,3.7rem)/1.13 'Manrope',sans-serif;letter-spacing:-.065em;margin:10px 0 0}.section-intro{max-width:410px;color:var(--muted);font-size:15px;margin:0}.arrow-link{font-weight:800;font-size:13px;color:#087e78;white-space:nowrap}.arrow-link:hover{text-decoration:underline;text-underline-offset:5px}
    .featured{display:grid;grid-template-columns:1.2fr .8fr;gap:20px}.feature-main,.feature-side{border-radius:19px;overflow:hidden;position:relative}.feature-main{min-height:460px;background:#13394a;color:#fff;display:flex;align-items:end;padding:40px}.feature-main:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 74% 38%,#55cbb177,transparent 29%),repeating-radial-gradient(circle at 71% 39%,transparent 0 18px,#8be2d323 19px 20px,transparent 21px 40px),linear-gradient(150deg,#152c43,#184b54)}.feature-main:after{content:"";position:absolute;right:15%;top:17%;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,#c5f5da 0 4%,#70bcaf 5% 7%,transparent 8% 100%);box-shadow:0 0 80px #8bdac565}.feature-content{position:relative;z-index:1;max-width:490px}.tag{display:inline-block;border:1px solid #a8d8d088;border-radius:100px;padding:5px 10px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:#d0f9e8}.feature-content h3{font:700 clamp(1.7rem,2.5vw,2.5rem)/1.2 'Manrope',sans-serif;letter-spacing:-.05em;margin:17px 0 12px}.feature-content p{font-size:14px;color:#d3e6e3;max-width:440px}.feature-content a{font-size:13px;font-weight:800;color:#acf2dd}.feature-side{background:#e5eceb;padding:38px;display:flex;flex-direction:column;justify-content:space-between;min-height:460px}.feature-side h3{font:700 28px/1.22 'Manrope',sans-serif;letter-spacing:-.05em;margin:15px 0}.feature-side p{color:#60717c;font-size:14px;margin:0 0 20px}.signal{height:155px;display:grid;place-items:center}.signal svg{width:100%;max-width:360px;height:130px;overflow:visible}.signal path{fill:none;stroke:#00a89b;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:620;stroke-dashoffset:620;animation:trace 3s 1s ease forwards}.signal .faint{stroke:#aac7c4;stroke-width:1;stroke-dasharray:none;stroke-dashoffset:0}.feature-side .arrow-link{align-self:flex-start}
    .about{background:#fff}.about-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw;align-items:start}.about h2{max-width:420px}.about-copy>p{font-size:18px;line-height:1.8;color:#3e5362;margin:0 0 22px}.about-copy>p+p{font-size:15px;color:var(--muted)}.pill-row{display:flex;flex-wrap:wrap;gap:8px;margin:25px 0 35px}.pill{border:1px solid #dce5e8;border-radius:100px;padding:7px 12px;color:#45606b;font-size:12px;font-weight:700}.mini-timeline{border-top:1px solid var(--line)}.mini-timeline div{display:grid;grid-template-columns:90px 1fr;gap:20px;padding:15px 0;border-bottom:1px solid var(--line);font-size:14px}.mini-timeline b{color:#09958b}.mini-timeline span{color:#485b66}
    .journal{background:#edf2f1}.journal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.entry{background:#fff;border:1px solid #e1e8e8;border-radius:15px;padding:29px;min-height:295px;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.entry:hover{transform:translateY(-5px);box-shadow:0 18px 30px #14243a12}.entry time{font-size:11px;color:#008c85;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.entry h3{font:700 20px/1.3 'Manrope',sans-serif;letter-spacing:-.045em;margin:20px 0 10px}.entry p{color:#637684;font-size:14px;margin:0}.entry a{margin-top:auto;font-size:12px;font-weight:800;color:#087f79;padding-top:25px}.entry a:hover{text-decoration:underline}.journal-note{font-size:12px;color:#778792;margin-top:19px}
    .contact{background:#101b29;color:#fff;padding:95px 0 44px;position:relative;overflow:hidden}.contact:after{content:"";position:absolute;right:-140px;top:-200px;width:540px;height:540px;border:1px solid #51ada555;border-radius:50%;box-shadow:0 0 0 85px #2b77731b,0 0 0 170px #2b777313}.contact .wrap{position:relative;z-index:1}.contact h2{font:700 clamp(2.5rem,4.5vw,4.8rem)/1.1 'Manrope',sans-serif;letter-spacing:-.075em;max-width:750px;margin:13px 0 20px}.contact p{color:#a8bdc9;max-width:550px;margin-bottom:28px}.contact-links{display:flex;gap:12px;flex-wrap:wrap}.foot{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff29;margin-top:110px;padding-top:26px;color:#9ab0bd;font-size:12px}.foot a:hover{color:#a3eadb}
    .reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}@keyframes spin{to{transform:rotate(360deg)}}@keyframes float{50%{transform:rotate(-10deg) translateY(-13px)}}@keyframes trace{to{stroke-dashoffset:0}}
    @media(max-width:900px){.hero .wrap{grid-template-columns:1fr}.hero{padding:140px 0 75px}.hero h1{max-width:680px}.visual{height:350px;max-width:550px;width:100%;margin:auto}.orbit{width:335px}.orbit:nth-child(2){width:265px}.orbit:nth-child(3){width:410px}.chip{max-width:210px}.hero-meta{margin-top:48px}.about-grid{gap:50px}.section{padding:80px 0}}
    @media(max-width:680px){.wrap{width:min(calc(100% - 36px),var(--max))}.nav{height:66px}.menu-toggle{display:block}.nav-links{display:none;position:absolute;top:66px;left:0;right:0;background:#101b29;padding:16px 18px 25px;box-shadow:0 20px 25px #0003;flex-direction:column;align-items:stretch;gap:0}.nav-links.open{display:flex}.nav-links a{padding:13px 6px}.nav-links .nav-cta{padding:11px 15px;margin-top:8px;text-align:center}.hero{min-height:auto;padding:123px 0 55px}.hero h1{font-size:clamp(2.8rem,11vw,4.3rem)}.hero p{font-size:16px}.visual{height:310px}.orbit{width:280px}.orbit:nth-child(2){width:230px}.orbit:nth-child(3){width:350px}.chip{max-width:185px}.v-one{top:16px}.v-two{bottom:17px}.v-three{display:none}.hero-meta{gap:20px;margin-top:42px}.hero-meta div{min-width:120px}.ticker .wrap{align-items:start;gap:4px}.section{padding:70px 0}.section-top{display:block}.section-intro{margin-top:17px}.featured,.about-grid,.journal-grid{grid-template-columns:1fr}.feature-main,.feature-side{min-height:370px}.feature-main,.feature-side{padding:27px}.about-grid{gap:25px}.mini-timeline div{grid-template-columns:67px 1fr}.contact{padding-top:70px}.foot{margin-top:75px}}
    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}.signal path{stroke-dashoffset:0}}

/* Portrait and interior pages */
.portrait-frame{width:min(72%,340px);height:390px;z-index:1;position:relative;border-radius:180px 180px 24px 24px;overflow:hidden;transform:rotate(-4deg);border:8px solid #c8eee084;box-shadow:0 28px 85px #0008;animation:floatPortrait 7s ease-in-out infinite;background:#31525d}.portrait-frame img{width:100%;height:100%;object-fit:cover;object-position:center 20%;display:block}.visual-label{z-index:2}@keyframes floatPortrait{50%{transform:rotate(-2deg) translateY(-11px)}}
.page-hero{background:#101b29;color:#fff;padding:160px 0 80px;position:relative;overflow:hidden}.page-hero:after{content:"";position:absolute;right:-80px;top:35px;width:450px;height:450px;border-radius:50%;border:1px solid #76cbb54d;box-shadow:0 0 0 65px #76cbb514,0 0 0 130px #76cbb50d}.page-hero .wrap{position:relative;z-index:1}.page-hero h1{font:700 clamp(2.9rem,5.1vw,5.4rem)/1.1 'Manrope',sans-serif;letter-spacing:-.075em;max-width:900px;margin:22px 0}.page-hero p{max-width:650px;color:#b7cbd3;font-size:17px;margin:0}.page-content{padding:80px 0 110px}.page-content h2{font:700 clamp(1.8rem,3vw,2.7rem)/1.2 'Manrope',sans-serif;letter-spacing:-.05em;margin:0 0 20px}.page-content p{color:#4b6170}.portrait-about{width:100%;max-height:580px;object-fit:cover;object-position:center 20%;border-radius:20px}.columns{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:start}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.info-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:29px}.info-card h2,.info-card h3{font:700 21px/1.3 'Manrope',sans-serif;letter-spacing:-.045em;margin:12px 0}.info-card p{font-size:14px;margin:0 0 20px}.info-card .kicker{font-size:10px}.info-card a{font-weight:800;color:#008b83;font-size:13px}.info-card img{max-width:100%;height:auto;max-height:160px;object-fit:contain;margin-bottom:15px}.stack{display:grid;gap:18px}.stack .info-card{padding:34px}.skill-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.skill-list{display:flex;gap:8px;flex-wrap:wrap}.skill-list span{background:#edf5f2;color:#2b5a5b;border-radius:100px;padding:7px 11px;font-size:12px;font-weight:700}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:55px}.contact-form{background:#fff;border:1px solid var(--line);padding:35px;border-radius:18px}.contact-form label{display:block;font-weight:700;font-size:12px;margin:0 0 7px}.contact-form input,.contact-form textarea{width:100%;border:1px solid #cbd8dc;border-radius:9px;background:#fff;padding:12px 13px;font:inherit;margin:0 0 17px;color:var(--ink)}.contact-form textarea{min-height:150px;resize:vertical}.contact-form button{border:0;cursor:pointer}.small-note{font-size:12px;color:#718290!important}.image-wide{width:100%;height:300px;object-fit:cover;border-radius:16px}.inline-links{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}.cert-card{min-height:250px}.cert-card img{height:140px;width:100%;object-fit:contain}.page-footer{background:#101b29;color:#9ab0bd;padding:35px 0;font-size:12px}.page-footer .wrap{display:flex;justify-content:space-between;gap:18px}.page-footer a{color:#c9f1e3}.muted-line{height:1px;background:var(--line);margin:35px 0}
@media(max-width:900px){.card-grid{grid-template-columns:repeat(2,1fr)}.columns,.contact-layout{gap:30px}}
@media(max-width:680px){.portrait-frame{height:280px;max-width:240px}.page-hero{padding:125px 0 60px}.page-content{padding:60px 0 80px}.columns,.contact-layout,.skill-grid,.card-grid{grid-template-columns:1fr}.contact-form{padding:22px}.page-footer .wrap{flex-direction:column}.image-wide{height:210px}}
@media(prefers-reduced-motion:reduce){.portrait-frame{animation:none}}

/* Personal and conference photography */
.research-figure{margin:28px 0 0}.research-figure img{display:block;width:100%;max-height:460px;object-fit:cover;object-position:center 42%;border-radius:12px}.research-figure figcaption{font-size:12px;color:#697e88;margin-top:9px}.journal-feature{display:grid;grid-template-columns:1fr 1fr;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;margin-bottom:24px;min-height:340px}.journal-feature img{width:100%;height:100%;min-height:340px;object-fit:cover;object-position:center 42%;display:block}.journal-feature-copy{padding:clamp(28px,4vw,56px);display:flex;flex-direction:column;justify-content:center}.journal-feature-copy h2{font:700 clamp(1.9rem,3vw,2.8rem)/1.15 'Manrope',sans-serif;letter-spacing:-.055em;margin:12px 0 16px}.journal-feature-copy p{margin:0 0 22px}.journal-feature-copy a{align-self:flex-start}@media(max-width:680px){.journal-feature{grid-template-columns:1fr}.journal-feature img{height:260px;min-height:260px}.research-figure img{max-height:280px}}
.diagram-figure img{max-height:none;object-fit:contain;background:#102534}.diagram-figure{max-width:720px}@media(max-width:680px){.diagram-figure img{max-height:none}}

.cv-download{margin-top:32px;padding:22px 24px;border-radius:15px;background:#edf5f2;border:1px solid #d2e5df;display:flex;justify-content:space-between;align-items:center;gap:22px}.cv-download strong,.cv-download span{display:block}.cv-download strong{font:700 17px 'Manrope',sans-serif}.cv-download span{font-size:12px;color:#657983;margin-top:4px}.cv-download .btn{white-space:nowrap}@media(max-width:860px){.menu-toggle{display:block}.nav-links{display:none;position:absolute;top:76px;left:0;right:0;background:#101b29;padding:16px 32px 25px;box-shadow:0 20px 25px #0003;flex-direction:column;align-items:stretch;gap:0}.nav-links.open{display:flex}.nav-links a{padding:12px 6px}.nav-links .nav-cta{padding:11px 15px;margin-top:8px;text-align:center}}@media(max-width:680px){.nav-links{top:66px;padding:16px 18px 25px}.cv-download{flex-direction:column;align-items:flex-start}}

/* Friday Notes */
.blog-hero{background:#101b29;color:#fff;padding:165px 0 105px;overflow:hidden;position:relative}.blog-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 82% 50%,#287f7650,transparent 37%),linear-gradient(120deg,#101b29,#142d3c)}.blog-hero-grid{position:relative;display:grid;grid-template-columns:1fr .85fr;align-items:center;gap:70px;min-height:455px}.blog-hero h1{font:700 clamp(3.6rem,6vw,7.2rem)/1.04 'Manrope',sans-serif;letter-spacing:-.078em;max-width:740px;margin:25px 0}.blog-hero h1 em{font-style:normal;color:#a3eadb}.blog-hero p{max-width:580px;color:#b6cbd1;font-size:18px;line-height:1.75;margin:0 0 29px}.blog-hero-art{height:410px;position:relative;border:1px solid #75c8ba55;border-radius:200px 200px 22px 22px;background:radial-gradient(circle at 50% 68%,#397c7355,transparent 53%),linear-gradient(150deg,#1b4350,#122838);box-shadow:0 35px 80px #0004;overflow:hidden}.blog-orbit{position:absolute;border:1px solid #91e3d55e;border-radius:50%;width:400px;height:400px;top:30px;left:calc(50% - 200px);transform:rotate(-22deg) scaleY(.62)}.blog-orbit-two{width:270px;height:270px;top:110px;left:calc(50% - 135px);border-style:dashed;opacity:.6;transform:rotate(25deg) scaleY(.62)}.blog-art-number{position:absolute;top:28px;left:33px;font:700 12px 'Manrope',sans-serif;letter-spacing:.18em;color:#b6e8da}.blog-art-caption{position:absolute;bottom:32px;left:33px;font:700 11px/1.7 'Manrope',sans-serif;letter-spacing:.17em;color:#b9e4de}.blog-art-dot{position:absolute;width:46px;height:46px;left:calc(50% - 23px);top:calc(50% - 23px);border-radius:50%;background:#b3f0d3;box-shadow:0 0 0 20px #9de8d32e,0 0 0 62px #9de8d317,0 0 100px 35px #9de8d365;animation:blogPulse 6s ease-in-out infinite}@keyframes blogPulse{50%{box-shadow:0 0 0 28px #9de8d330,0 0 0 78px #9de8d313,0 0 110px 45px #9de8d375}}
.blog-cadence{background:#dff0eb;border-bottom:1px solid #cce6df}.blog-cadence .wrap{display:flex;align-items:center;gap:17px;padding:17px 0}.blog-cadence-mark{font-size:25px;line-height:1;color:#088d80}.blog-cadence p{margin:0;flex:1;font-size:13px;color:#456068}.blog-cadence p strong{color:#133e47}.blog-cadence a{font-size:12px;font-weight:800;color:#087e78}.blog-intro{background:#fff}.blog-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(35px,8vw,115px);align-items:center}.blog-intro-photo{position:relative}.blog-intro-photo img{display:block;width:100%;height:500px;object-fit:cover;object-position:center 44%;border-radius:18px}.blog-intro-photo span{position:absolute;bottom:22px;left:22px;background:#112a38e8;color:#e3f6f1;padding:9px 13px;border-radius:7px;font-size:11px;font-weight:700;letter-spacing:.025em}.blog-intro-copy h2{font:700 clamp(2.3rem,4vw,4.3rem)/1.12 'Manrope',sans-serif;letter-spacing:-.065em;margin:16px 0 22px}.blog-intro-copy p{color:#526674;font-size:16px;line-height:1.85;margin:0 0 18px}.blog-intro-copy .arrow-link{display:inline-block;margin-top:12px}
.blog-archive{background:#edf3f1}.blog-section-head{display:flex;justify-content:space-between;align-items:end;gap:42px;margin-bottom:38px}.blog-section-head h2{font:700 clamp(2.4rem,4vw,4.4rem)/1.1 'Manrope',sans-serif;letter-spacing:-.07em;margin:12px 0 0}.accent-dot{color:#00a89b}.blog-section-head>p{font-size:14px;color:#677b82;max-width:385px;margin:0}.blog-empty{position:relative;overflow:hidden;border:1px solid #cde0da;background:#fff;border-radius:18px;min-height:260px;padding:37px 42px;display:flex;gap:45px;align-items:center}.blog-empty-num{font:800 11px 'Manrope',sans-serif;letter-spacing:.15em;color:#168e80;align-self:flex-start;white-space:nowrap}.blog-empty h3{font:700 clamp(1.6rem,3vw,2.65rem)/1.2 'Manrope',sans-serif;letter-spacing:-.05em;margin:0 0 8px}.blog-empty p{color:#63767d;margin:0}.blog-empty-spark{position:absolute;font-size:220px;color:#e6f5ed;right:33px;bottom:-85px;line-height:1;pointer-events:none}.blog-post-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.blog-post-card{display:flex;flex-direction:column;min-height:300px;padding:32px;background:#fff;border:1px solid #d6e4e2;border-radius:18px;transition:transform .25s,box-shadow .25s}.blog-post-card:hover{transform:translateY(-5px);box-shadow:0 18px 40px #143b3a15}.blog-post-card:first-child{grid-column:span 2;min-height:350px;background:#153443;color:#fff;padding:clamp(32px,5vw,58px);position:relative;overflow:hidden}.blog-post-card:first-child:after{content:"";position:absolute;right:-65px;top:-90px;width:380px;height:380px;border:1px solid #9be7d65b;border-radius:50%;box-shadow:0 0 0 55px #9be7d510,0 0 0 110px #9be7d50b;pointer-events:none}.blog-post-meta{font:800 11px 'Manrope',sans-serif;color:#168e80;letter-spacing:.12em;text-transform:uppercase}.blog-post-card:first-child .blog-post-meta{color:#9be8d6}.blog-post-card h3{font:700 clamp(1.5rem,2.4vw,2.25rem)/1.2 'Manrope',sans-serif;letter-spacing:-.045em;margin:22px 0 10px;max-width:710px;position:relative;z-index:1}.blog-post-card:first-child h3{font-size:clamp(2rem,4vw,3.65rem);letter-spacing:-.06em}.blog-post-card p{color:#63777e;font-size:15px;margin:0;max-width:670px;position:relative;z-index:1}.blog-post-card:first-child p{color:#bed3d6}.blog-post-card a{color:#087e78;font-size:13px;font-weight:800;margin-top:auto;padding-top:25px;position:relative;z-index:1}.blog-post-card:first-child a{color:#9be8d6}
.blog-moments{background:#fff}.blog-moment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.blog-moment{border-top:2px solid #bedbd4;padding:20px 5px 8px;display:flex;flex-direction:column;min-height:290px}.blog-moment-index{font:800 10px 'Manrope',sans-serif;letter-spacing:.13em;color:#008c85;margin-bottom:31px}.blog-moment time{font-size:12px;color:#778c94}.blog-moment h3{font:700 21px/1.3 'Manrope',sans-serif;letter-spacing:-.04em;margin:13px 0}.blog-moment p{font-size:14px;color:#61737d;margin:0}.blog-moment a{font-size:12px;font-weight:800;color:#087e78;margin-top:auto;padding-top:21px}.blog-end{background:#153443;color:#fff;text-align:center;padding:87px 0 100px}.blog-end .kicker{color:#86e4d2}.blog-end h2{font:700 clamp(2.4rem,4vw,4.3rem)/1.12 'Manrope',sans-serif;letter-spacing:-.065em;margin:15px 0}.blog-end p{color:#bad2d4;margin:0 auto 24px}
.blog-article{background:#fff}.blog-article-header{background:#101b29;color:#fff;padding:150px 0 75px}.blog-article-header .wrap{max-width:850px}.blog-article-header h1{font:700 clamp(2.8rem,5.5vw,5.3rem)/1.12 'Manrope',sans-serif;letter-spacing:-.065em;margin:18px 0}.blog-article-header p{font-size:18px;color:#b9ccd2;max-width:750px}.blog-article-body{max-width:760px;margin:auto;padding:75px 0 110px;color:#405665;font-size:17px;line-height:1.85}.blog-article-body h2,.blog-article-body h3{font-family:'Manrope',sans-serif;color:#14243a;letter-spacing:-.045em;line-height:1.25;margin:45px 0 17px}.blog-article-body h2{font-size:30px}.blog-article-body h3{font-size:23px}.blog-article-body p{margin:0 0 24px}.blog-article-body a{color:#008e83;text-decoration:underline;text-underline-offset:3px}.blog-article-body img{max-width:100%;height:auto;border-radius:12px}.blog-article-body blockquote{border-left:3px solid #00a89b;padding-left:22px;color:#546d73;margin:32px 0}.blog-article-body pre{overflow:auto;background:#102534;color:#ddf2ee;border-radius:10px;padding:20px;font-size:14px}.blog-article-body code{font-size:.9em}.blog-back{display:inline-block;margin-bottom:28px;font-size:13px;font-weight:800;color:#76ddce}.blog-article-footer{border-top:1px solid #dce4e7;padding-top:24px;margin-top:55px;font-size:13px}
@media(max-width:900px){.blog-hero-grid{gap:35px}.blog-intro-grid{gap:35px}.blog-intro-photo img{height:420px}}@media(max-width:680px){.blog-hero{padding:125px 0 65px}.blog-hero-grid{grid-template-columns:1fr;min-height:0}.blog-hero h1{font-size:clamp(3.4rem,12vw,5rem)}.blog-hero-art{height:260px;border-radius:135px 135px 18px 18px}.blog-art-caption{font-size:9px}.blog-cadence .wrap{flex-wrap:wrap}.blog-cadence p{flex-basis:80%}.blog-cadence a{margin-left:40px}.blog-intro-grid{grid-template-columns:1fr}.blog-intro-photo img{height:310px}.blog-section-head{display:block}.blog-section-head>p{margin-top:15px}.blog-empty{min-height:250px;padding:25px;gap:18px;align-items:flex-start;flex-direction:column}.blog-empty-spark{font-size:130px;right:9px;bottom:-48px}.blog-post-grid,.blog-moment-grid{grid-template-columns:1fr}.blog-post-card:first-child{grid-column:auto}.blog-post-card{min-height:260px}.blog-article-body{padding:48px 18px 70px}.blog-article-header{padding:125px 0 50px}}@media(prefers-reduced-motion:reduce){.blog-art-dot{animation:none}}
/* Homepage portrait */
.hero .portrait-frame{width:min(79%,385px);height:475px;border:5px solid #a5dccc88;border-radius:20px;transform:rotate(-3deg);box-shadow:0 24px 85px #0009,0 0 55px #7be1ce24}.hero .portrait-frame img{object-position:center 55%}@media(max-width:900px){.hero .portrait-frame{height:340px;width:min(66%,290px)}}@media(max-width:680px){.hero .portrait-frame{height:310px;width:min(68%,250px)}}
/* A little movement in the Friday Notes hero */
.blog-orbit-one{animation:blogOrbit 22s ease-in-out infinite alternate}.blog-orbit-two{animation:blogOrbitInner 17s ease-in-out infinite alternate}.blog-art-star{position:absolute;color:#bdf4dc;line-height:1;text-shadow:0 0 22px #99e9cb;animation:blogTwinkle 3.8s ease-in-out infinite}.star-one{font-size:26px;top:83px;right:73px}.star-two{font-size:17px;left:20%;top:49%;animation-delay:1.2s}.star-three{font-size:14px;right:21%;bottom:82px;animation-delay:2.1s}.blog-art-note{position:absolute;right:25px;bottom:35px;transform:rotate(7deg);background:#e0f2cf;color:#17414a;padding:13px 16px 17px;border-radius:3px 11px 8px 12px;box-shadow:0 13px 32px #07151c88;font:700 13px/1.3 'Manrope',sans-serif;letter-spacing:-.02em;animation:blogNoteFloat 6s ease-in-out infinite}.blog-art-note span{color:#008b83}.blog-art-caption{bottom:35px}.blog-hero:after{content:"";position:absolute;width:340px;height:340px;top:-230px;right:10%;border:1px dashed #81c5b540;border-radius:50%;pointer-events:none;animation:blogHalo 26s linear infinite}@keyframes blogOrbit{to{transform:rotate(21deg) scaleY(.66)}}@keyframes blogOrbitInner{to{transform:rotate(-25deg) scaleY(.68)}}@keyframes blogTwinkle{50%{opacity:.25;transform:scale(.72)}}@keyframes blogNoteFloat{50%{transform:rotate(4deg) translateY(-9px)}}@keyframes blogHalo{to{transform:rotate(360deg)}}@media(max-width:680px){.blog-art-note{right:17px;bottom:19px;padding:9px 11px;font-size:10px}.blog-art-caption{bottom:19px;left:20px;font-size:8px}.star-one{right:48px;top:38px}.star-two{top:46%}}@media(prefers-reduced-motion:reduce){.blog-orbit-one,.blog-orbit-two,.blog-art-star,.blog-art-note,.blog-hero:after{animation:none}}
/* Latest Friday Note on the homepage */
.home-latest{display:grid;grid-template-columns:1.25fr .55fr;min-height:310px;background:#153845;color:#fff;border-radius:18px;overflow:hidden;margin-bottom:20px;border:1px solid #69b9a860;transition:transform .25s,box-shadow .25s}.home-latest:hover{transform:translateY(-4px);box-shadow:0 20px 44px #14243a26}.home-latest-copy{padding:clamp(28px,4vw,49px);display:flex;flex-direction:column;align-items:flex-start;position:relative;z-index:1}.home-latest-label{color:#a6e8d5;font:800 11px 'Manrope',sans-serif;letter-spacing:.1em;text-transform:uppercase}.home-latest h3{font:700 clamp(2rem,3.1vw,3.3rem)/1.17 'Manrope',sans-serif;letter-spacing:-.06em;margin:22px 0 11px}.home-latest p{font-size:15px;line-height:1.7;color:#c2dad9;margin:0;max-width:650px}.home-latest-link{margin-top:auto;padding-top:24px;color:#aaebd8;font-size:13px;font-weight:800}.home-latest-art{position:relative;display:grid;place-content:center;overflow:hidden;background:radial-gradient(circle,#3a827788,transparent 57%),repeating-radial-gradient(circle at center,transparent 0 37px,#81c9b826 38px 39px,transparent 40px 74px)}.home-latest-art:before{content:"";position:absolute;width:280px;height:280px;border:1px solid #9fd8c885;border-radius:50%;top:calc(50% - 140px);left:calc(50% - 140px);animation:blogHalo 28s linear infinite}.home-latest-art span,.home-latest-art i{font:700 75px 'Manrope',sans-serif;line-height:.9;letter-spacing:-.09em;text-align:center;color:#a4e9d8;z-index:1}.home-latest-art i{font-style:normal;color:#e5f7ed}@media(max-width:680px){.home-latest{display:block}.home-latest-art{display:none}.home-latest h3{font-size:2rem}}@media(prefers-reduced-motion:reduce){.home-latest-art:before{animation:none}}
/* Discussion and reactions on Friday Notes */
.blog-discussion{background:#edf3f1;border-top:1px solid #d6e4e2;padding:75px 0 100px}.blog-discussion-inner{max-width:760px}.blog-discussion h2{font:700 clamp(2rem,3.5vw,3.15rem)/1.15 'Manrope',sans-serif;letter-spacing:-.06em;margin:12px 0}.blog-discussion p{color:#586f78;font-size:15px;margin:0 0 36px}.blog-discussion .giscus{min-height:180px}@media(max-width:680px){.blog-discussion{padding:55px 0 70px}}

/* Current research at Northeastern */
.current-research{border-top:3px solid #00a89b;background:linear-gradient(150deg,#f2faf7,#fff 60%)}.research-highlights{padding-left:21px;color:#5d6c7d;line-height:1.8;margin:20px 0 25px}.research-highlights li{padding-left:5px;margin:12px 0}.research-highlights li::marker{color:#008c85}.boston-sunset img{aspect-ratio:16/9;max-height:none;height:auto;object-fit:cover;object-position:center 75%}@media(max-width:680px){.boston-sunset img{aspect-ratio:4/3;max-height:none}}
