@import "https://fonts.googleapis.com/css2?family=Quicksand:wght@300;400;500;600;700&display=swap";
@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.3p2_lha1f2xer.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.1qq4vpdcun5oj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.390ncx5urfkfu.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.21jp631_3pja2.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.0wgildi0cnwt9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.31988l_ccedte.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.2tuy5pz7dlieh.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.2dbetqa9o8jxf.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.1uyisp29ctx0d.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.1rgnod-3esatf.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.0r6juujl39pe6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
:root{--teal:#0a7b5c;--teal-light:#12a97e;--teal-pale:#e6f7f2;--teal-mid:#c2ead9;--gold:#f5a623;--gold-pale:#fff5e0;--ink:#1a1f36;--ink-mid:#3d4461;--ink-muted:#7b8199;--bg:#f4f6f8;--white:#fff;--border:#e4e8ef;--card-radius:14px;--pill-radius:100px;--shadow-xs:0 1px 4px #0000000f;--shadow-sm:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001c;--shadow-lg:0 20px 60px #00000024;--ease:cubic-bezier(.22, 1, .36, 1);--t:.38s}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:Quicksand,sans-serif;font-size:15px;line-height:1.65;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font-family:Quicksand,sans-serif}.sr{opacity:0;transition:opacity .65s var(--ease), transform .65s var(--ease);transform:translateY(28px)}.sr.up{opacity:1;transform:none}.sr-l{opacity:0;transition:opacity .65s var(--ease), transform .65s var(--ease);transform:translate(-30px)}.sr-r{opacity:0;transition:opacity .65s var(--ease), transform .65s var(--ease);transform:translate(30px)}.sr-l.up,.sr-r.up{opacity:1;transform:none}.d1{transition-delay:80ms}.d2{transition-delay:.16s}.d3{transition-delay:.24s}.d4{transition-delay:.32s}.d5{transition-delay:.4s}.d6{transition-delay:.48s}.topbar{background:var(--ink);color:#ffffffa6;justify-content:space-between;align-items:center;padding:.45rem 5vw;font-size:.78rem;font-weight:500;display:flex}.topbar a{color:#ffffffa6}.topbar-right{gap:1.4rem;display:flex}.topbar-right span{align-items:center;gap:.35rem;display:flex}.navbar{z-index:200;background:var(--white);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;height:68px;padding:0 5vw;transition:box-shadow .3s;display:flex;position:sticky;top:0}.navbar.shadow{box-shadow:var(--shadow-sm)}.nav-logo{color:var(--teal);letter-spacing:-.03em;align-items:center;gap:.1rem;font-size:1.55rem;font-weight:700;display:flex}.nav-logo span{color:var(--ink)}.nav-menu{align-items:center;gap:.2rem;list-style:none;display:flex}.nav-menu a{color:var(--ink-mid);border-radius:var(--pill-radius);align-items:center;gap:.25rem;padding:.45rem .9rem;font-size:.875rem;font-weight:600;transition:background .2s,color .2s;display:flex}.nav-menu a:hover{background:var(--teal-pale);color:var(--teal)}.nav-menu a.active{color:var(--teal)}.nav-actions{align-items:center;gap:.7rem;display:flex}.btn{border-radius:var(--pill-radius);cursor:pointer;transition:all var(--t) var(--ease);border:none;align-items:center;gap:.4rem;font-family:Quicksand,sans-serif;font-weight:700;display:inline-flex}.btn-sm{padding:.45rem 1rem;font-size:.82rem}.btn-md{padding:.6rem 1.4rem;font-size:.9rem}.btn-lg{padding:.75rem 1.8rem;font-size:.95rem}.btn-teal{background:var(--teal);color:#fff}.btn-teal:hover{background:var(--teal-light);transform:translateY(-1px);box-shadow:0 6px 20px #0a7b5c47}.btn-outline{color:var(--ink);border:1.5px solid var(--border);background:0 0}.btn-outline:hover{border-color:var(--teal);color:var(--teal)}.btn-gold{background:var(--gold);color:#fff}.btn-gold:hover{background:#e09400;transform:translateY(-1px)}.btn-white{background:var(--white);color:var(--teal)}.btn-white:hover{background:var(--teal-pale)}.hamburger{cursor:pointer;background:0 0;border:none;flex-direction:column;gap:5px;padding:4px;display:none}.hamburger span{background:var(--ink);border-radius:2px;width:22px;height:2px;transition:all .3s;display:block}.hero{background:#ebf5f1;align-items:flex-end;min-height:540px;padding:72px 5vw 0;display:flex;position:relative;overflow:hidden}.hero-inner{grid-template-columns:1fr 480px;align-items:flex-end;gap:2rem;width:100%;max-width:1200px;margin:0 auto;display:grid}.hero-text{padding-bottom:64px}.hero-eyebrow{background:var(--white);border:1px solid var(--border);border-radius:var(--pill-radius);color:var(--teal);box-shadow:var(--shadow-xs);align-items:center;gap:.5rem;margin-bottom:1.3rem;padding:.3rem .9rem;font-size:.78rem;font-weight:700;display:inline-flex}.hero-eyebrow .dot{background:var(--teal);border-radius:50%;width:6px;height:6px}.hero-h1{letter-spacing:-.02em;color:var(--ink);margin-bottom:.8rem;font-size:clamp(2.4rem,4.5vw,3.8rem);font-weight:700;line-height:1.12}.hero-h1 em{color:var(--teal);font-style:normal}.hero-sub{color:var(--ink-muted);max-width:440px;margin-bottom:2rem;font-size:1.02rem;font-weight:500}.hero-btns{flex-wrap:wrap;gap:.8rem;margin-bottom:2.5rem;display:flex}.hero-trusted{color:var(--ink-muted);align-items:center;gap:.8rem;font-size:.78rem;font-weight:600;display:flex}.trusted-logos{align-items:center;gap:1rem;display:flex}.trusted-logo{background:var(--white);border:1px solid var(--border);color:var(--ink-mid);box-shadow:var(--shadow-xs);border-radius:8px;padding:.3rem .7rem;font-size:.75rem;font-weight:700}.hero-visual{align-self:flex-end;position:relative}.hero-img-wrap{border-radius:20px 20px 0 0;width:100%;max-width:420px;margin:0 auto;position:relative;overflow:hidden}.hero-avatar-circle{background:linear-gradient(160deg, var(--teal-mid) 0%, #a8e6cf 100%);border-radius:50% 50% 0 0;justify-content:center;align-items:flex-end;width:340px;height:340px;margin:0 auto;display:flex;position:relative;overflow:hidden}.hero-avatar-letter{color:var(--teal);opacity:.22;-webkit-user-select:none;user-select:none;padding-bottom:.2em;font-size:9rem;font-weight:700;line-height:1}.hero-avatar-photo{object-fit:cover;width:100%;height:100%;display:none;position:absolute;inset:0}.hero-avatar-upload-hint{cursor:pointer;color:var(--white);opacity:0;background:#0a7b5c00;flex-direction:column;justify-content:center;align-items:center;gap:.4rem;font-size:.78rem;font-weight:700;transition:all .3s;display:flex;position:absolute;inset:0}.hero-avatar-circle:hover .hero-avatar-upload-hint{opacity:1;background:#0a7b5c73}.float-chip{background:var(--white);border:1px solid var(--border);box-shadow:var(--shadow-md);color:var(--ink);white-space:nowrap;border-radius:12px;align-items:center;gap:.6rem;padding:.7rem 1rem;font-size:.82rem;font-weight:700;animation:4s ease-in-out infinite chipFloat;display:flex;position:absolute}.float-chip.fc1{animation-delay:0s;top:20px;left:-30px}.float-chip.fc2{animation-delay:-2s;top:50%;right:-20px}.float-chip.fc3{animation-delay:-1s;bottom:40px;left:10px}@keyframes chipFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.chip-icon{font-size:1.2rem}.chip-sub{color:var(--ink-muted);font-size:.68rem;font-weight:600}.section{padding:80px 5vw}.section-alt{background:var(--white)}.section-dark{background:var(--ink)}.container{max-width:1200px;margin:0 auto}.sec-tag{letter-spacing:.12em;text-transform:uppercase;color:var(--teal);align-items:center;gap:.4rem;margin-bottom:.6rem;font-size:.72rem;font-weight:700;display:inline-flex}.sec-tag:before{content:"";background:var(--teal);border-radius:2px;width:16px;height:2px;display:block}.sec-h2{letter-spacing:-.02em;color:var(--ink);font-size:clamp(1.7rem,3vw,2.4rem);font-weight:700;line-height:1.2}.sec-h2.light{color:var(--white)}.sec-lead{color:var(--ink-muted);margin-top:.4rem;font-size:.95rem;font-weight:500}.sec-lead.light{color:#ffffff8c}.sec-head{margin-bottom:2.5rem}.sec-head-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.view-all{color:var(--teal);align-items:center;gap:.3rem;font-size:.82rem;font-weight:700;transition:gap .2s;display:flex}.view-all:hover{gap:.6rem}.stat-band{background:var(--white);border-bottom:1px solid var(--border);padding:0 5vw}.stat-band-inner{grid-template-columns:repeat(4,1fr);max-width:1200px;margin:0 auto;display:grid}.stat-item{text-align:center;border-right:1px solid var(--border);padding:1.6rem 1rem;transition:background .2s}.stat-item:last-child{border-right:none}.stat-item:hover{background:var(--teal-pale)}.stat-num{color:var(--teal);font-size:2rem;font-weight:700;line-height:1}.stat-lbl{color:var(--ink-muted);margin-top:.3rem;font-size:.8rem;font-weight:600}.about-grid{grid-template-columns:1fr 1fr;align-items:center;gap:4rem;display:grid}.about-text p{color:var(--ink-mid);margin-bottom:1rem;font-weight:500;line-height:1.8}.about-skills{flex-wrap:wrap;gap:.5rem;margin-top:1.4rem;display:flex}.skill-pill{background:var(--teal-pale);color:var(--teal);border:1px solid var(--teal-mid);border-radius:var(--pill-radius);padding:.3rem .85rem;font-size:.78rem;font-weight:700}.about-cards{flex-direction:column;gap:1rem;display:flex}.info-panel{background:var(--bg);border:1px solid var(--border);border-radius:var(--card-radius);padding:1.4rem 1.6rem}.info-panel h4{letter-spacing:.1em;text-transform:uppercase;color:var(--teal);margin-bottom:.9rem;font-size:.72rem;font-weight:700}.info-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;padding:.4rem 0;font-size:.85rem;display:flex}.info-row:last-child{border-bottom:none}.info-row .k{color:var(--ink-muted);font-weight:500}.info-row .v{color:var(--ink);text-align:right;font-weight:700}.timeline-wrap{padding-left:1.5rem;position:relative}.timeline-wrap:before{content:"";background:linear-gradient(180deg,var(--teal),var(--teal-mid),transparent);width:2px;position:absolute;top:10px;bottom:10px;left:0}.tl-item{margin-bottom:2.2rem;padding-left:2rem;position:relative}.tl-item:before{content:"";background:var(--teal);border:3px solid var(--white);width:11px;height:11px;box-shadow:0 0 0 2px var(--teal);border-radius:50%;position:absolute;top:7px;left:-2.15rem}.tl-item.alt:before{background:var(--gold);box-shadow:0 0 0 2px var(--gold)}.tl-card{background:var(--white);border:1px solid var(--border);border-radius:var(--card-radius);box-shadow:var(--shadow-xs);transition:box-shadow var(--t) var(--ease), transform var(--t) var(--ease);padding:1.5rem 1.8rem}.tl-card:hover{box-shadow:var(--shadow-md);transform:translate(4px)}.tl-year{color:var(--teal);letter-spacing:.08em;margin-bottom:.3rem;font-family:Quicksand,monospace;font-size:.72rem;font-weight:700}.tl-degree{color:var(--ink);margin-bottom:.15rem;font-size:1.05rem;font-weight:700}.tl-inst{color:var(--ink-muted);margin-bottom:.6rem;font-size:.85rem;font-weight:600}.tl-desc{color:var(--ink-mid);font-size:.85rem;font-weight:500;line-height:1.7}.tl-badge{background:var(--teal-pale);color:var(--teal);border:1px solid var(--teal-mid);border-radius:var(--pill-radius);margin-top:.7rem;padding:.18rem .7rem;font-size:.72rem;font-weight:700;display:inline-block}.tl-badge.gold{background:var(--gold-pale);color:var(--gold);border-color:#f5a6234d}.awards-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.2rem;display:grid}.award-card{border-radius:var(--card-radius);transition:all var(--t) var(--ease);background:#ffffff0d;border:1px solid #ffffff1a;padding:1.8rem;position:relative;overflow:hidden}.award-card:after{content:"";background:linear-gradient(90deg,var(--teal-light),var(--gold));transform-origin:0;height:3px;transition:transform .4s var(--ease);position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.award-card:hover{background:#ffffff17;border-color:#fff3;transform:translateY(-4px);box-shadow:0 16px 40px #0000004d}.award-card:hover:after{transform:scaleX(1)}.award-icon-wrap{background:#ffffff0f;border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:1rem;font-size:1.5rem;display:flex}.award-title{color:var(--white);margin-bottom:.2rem;font-size:1rem;font-weight:700}.award-org{color:var(--teal-light);margin-bottom:.4rem;font-size:.78rem;font-weight:700}.award-year{color:#ffffff59;font-size:.7rem;font-weight:600}.award-desc{color:#ffffff8c;margin-top:.6rem;font-size:.82rem;font-weight:500;line-height:1.65}.ach-grid{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:1.2rem;display:grid}.ach-card{background:var(--white);border:1px solid var(--border);border-radius:var(--card-radius);box-shadow:var(--shadow-xs);transition:all var(--t) var(--ease);align-items:flex-start;gap:1rem;padding:1.5rem 1.7rem;display:flex}.ach-card:hover{box-shadow:var(--shadow-md);border-color:var(--teal-mid);transform:translateY(-3px)}.ach-ico{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.3rem;display:flex}.ach-ico.t{background:var(--teal-pale)}.ach-ico.g{background:var(--gold-pale)}.ach-ico.i{background:#eef2ff}.ach-body h4{color:var(--ink);margin-bottom:.25rem;font-size:.92rem;font-weight:700}.ach-body p{color:var(--ink-muted);font-size:.8rem;font-weight:500;line-height:1.6}.work-filters{flex-wrap:wrap;gap:.5rem;margin-bottom:2rem;display:flex}.wf-btn{border-radius:var(--pill-radius);border:1.5px solid var(--border);color:var(--ink-muted);cursor:pointer;background:0 0;padding:.4rem 1rem;font-family:Quicksand,sans-serif;font-size:.8rem;font-weight:700;transition:all .2s}.wf-btn.on,.wf-btn:hover{background:var(--teal);color:var(--white);border-color:var(--teal)}.work-grid{grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:1.2rem;display:grid}.work-card{background:var(--white);border:1px solid var(--border);border-radius:var(--card-radius);box-shadow:var(--shadow-xs);transition:all var(--t) var(--ease);cursor:pointer;overflow:hidden}.work-card:hover{box-shadow:var(--shadow-lg);border-color:var(--teal-mid);transform:translateY(-5px)}.wc-thumb{justify-content:center;align-items:center;height:190px;display:flex;position:relative;overflow:hidden}.wc-thumb-bg{transition:transform .5s var(--ease);position:absolute;inset:0}.work-card:hover .wc-thumb-bg{transform:scale(1.05)}.wc-emoji{z-index:1;opacity:.5;font-size:3.5rem;position:relative}.wc-cat{z-index:2;background:var(--white);border-radius:var(--pill-radius);color:var(--ink);box-shadow:var(--shadow-xs);padding:.15rem .6rem;font-size:.68rem;font-weight:700;position:absolute;top:12px;left:12px}.wc-hover-overlay{z-index:3;background:#0a7b5c00;justify-content:center;align-items:center;transition:background .3s;display:flex;position:absolute;inset:0}.work-card:hover .wc-hover-overlay{background:#0a7b5c66}.wc-view{opacity:0;background:var(--white);color:var(--teal);border-radius:var(--pill-radius);transition:all .3s var(--ease);padding:.5rem 1.2rem;font-size:.8rem;font-weight:700;transform:scale(.85)}.work-card:hover .wc-view{opacity:1;transform:scale(1)}.wc-body{padding:1.2rem 1.4rem}.wc-title{color:var(--ink);margin-bottom:.25rem;font-size:.98rem;font-weight:700}.wc-desc{color:var(--ink-muted);margin-bottom:.7rem;font-size:.8rem;font-weight:500;line-height:1.6}.wc-tags{flex-wrap:wrap;gap:.3rem;display:flex}.wc-tag{background:var(--bg);color:var(--ink-muted);border-radius:var(--pill-radius);border:1px solid var(--border);padding:.15rem .55rem;font-size:.68rem;font-weight:700}.upload-zone{border:2px dashed var(--teal-mid);border-radius:var(--card-radius);text-align:center;background:var(--teal-pale);cursor:pointer;margin-top:2rem;padding:2rem;transition:all .25s}.upload-zone:hover{border-color:var(--teal);background:var(--teal-mid)}.upload-zone p{color:var(--teal);margin-top:.4rem;font-size:.85rem;font-weight:600}.ticker-wrap{padding:1.2rem 0;position:relative;overflow:hidden}.ticker-wrap:before,.ticker-wrap:after{content:"";z-index:2;width:100px;position:absolute;top:0;bottom:0}.ticker-wrap:before{background:linear-gradient(90deg,var(--white),transparent);left:0}.ticker-wrap:after{background:linear-gradient(-90deg,var(--white),transparent);right:0}.ticker-track{gap:1.2rem;width:max-content;animation:32s linear infinite tick;display:flex}.ticker-track:hover{animation-play-state:paused}@keyframes tick{0%{transform:translate(0)}to{transform:translate(-50%)}}.tq-pill{background:var(--bg);border:1px solid var(--border);border-radius:var(--card-radius);flex-shrink:0;min-width:300px;max-width:360px;padding:1.1rem 1.5rem}.tq-pill blockquote{color:var(--ink-mid);margin-bottom:.6rem;font-size:.88rem;font-style:italic;font-weight:500;line-height:1.65}.tq-pill cite{color:var(--ink-muted);align-items:center;gap:.35rem;font-size:.72rem;font-style:normal;font-weight:700;display:flex}.tq-pill cite:before{content:"—";color:var(--teal)}.prof-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.2rem;display:grid}.prof-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--card-radius);transition:all var(--t) var(--ease);padding:1.6rem 1.8rem}.prof-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.prof-av{background:linear-gradient(135deg,var(--teal-mid),#a8e6cf);width:52px;height:52px;color:var(--teal);border-radius:50%;justify-content:center;align-items:center;margin-bottom:.9rem;font-size:1.1rem;font-weight:700;display:flex}.prof-name{color:var(--ink);font-size:.95rem;font-weight:700}.prof-title{color:var(--teal);margin-bottom:.7rem;font-size:.75rem;font-weight:700}.prof-quote{color:var(--ink-muted);border-left:2px solid var(--teal);padding-left:.8rem;font-size:.82rem;font-style:italic;font-weight:500;line-height:1.7}.contact-grid{grid-template-columns:1fr 1fr;align-items:start;gap:3.5rem;display:grid}.contact-form-wrap{background:var(--white);border:1px solid var(--border);border-radius:var(--card-radius);padding:2rem 2.2rem}.form-title{color:var(--ink);margin-bottom:1.4rem;font-size:1.1rem;font-weight:700}.form-row{grid-template-columns:1fr 1fr;gap:.9rem;display:grid}.fg{flex-direction:column;gap:.35rem;margin-bottom:1rem;display:flex}.fg label{color:var(--ink);font-size:.78rem;font-weight:700}.fg input,.fg textarea,.fg select{background:var(--bg);border:1.5px solid var(--border);color:var(--ink);border-radius:10px;padding:.72rem 1rem;font-family:Quicksand,sans-serif;font-size:.9rem;font-weight:500;transition:border-color .25s}.fg input:focus,.fg textarea:focus,.fg select:focus{border-color:var(--teal);outline:none;box-shadow:0 0 0 3px #0a7b5c1a}.fg textarea{resize:vertical}.contact-info-wrap{flex-direction:column;gap:1rem;display:flex}.ci-card{background:var(--white);border:1px solid var(--border);border-radius:var(--card-radius);align-items:flex-start;gap:.9rem;padding:1.2rem 1.4rem;transition:all .25s;display:flex}.ci-card:hover{border-color:var(--teal-mid);transform:translate(4px)}.ci-icon{background:var(--teal-pale);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.1rem;display:flex}.ci-label{color:var(--ink-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;font-weight:700}.ci-val{color:var(--ink);margin-top:.1rem;font-size:.9rem;font-weight:700}.social-row{gap:.6rem;margin-top:.9rem;display:flex}.soc-btn{background:var(--bg);border:1.5px solid var(--border);width:38px;height:38px;color:var(--ink);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:.9rem;font-weight:700;transition:all .25s;display:flex}.soc-btn:hover{background:var(--teal);color:var(--white);border-color:var(--teal);transform:translateY(-2px)}footer{background:var(--ink);color:#ffffff80;text-align:center;padding:2rem 5vw;font-size:.82rem;font-weight:500}footer strong{color:var(--teal-light)}.footer-logo{color:var(--teal-light);font-size:1.2rem;font-weight:700}.footer-links{gap:1.4rem;display:flex}.footer-links a{color:#ffffff73;font-size:.8rem;font-weight:600;transition:color .2s}.modal-bg{z-index:500;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;pointer-events:none;background:#0009;justify-content:center;align-items:center;transition:opacity .3s;display:flex;position:fixed;inset:0}.modal-bg.show{opacity:1;pointer-events:all}.modal-box{background:var(--white);width:90%;max-width:520px;box-shadow:var(--shadow-lg);transition:transform .35s var(--ease);border-radius:20px;padding:2.2rem;transform:scale(.92)}.modal-bg.show .modal-box{transform:scale(1)}.modal-close{float:right;background:var(--bg);cursor:pointer;width:30px;height:30px;color:var(--ink);border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1rem;transition:background .2s;display:flex}.modal-close:hover{background:var(--border)}.toast{z-index:999;background:var(--teal);color:var(--white);border-radius:var(--pill-radius);box-shadow:var(--shadow-lg);opacity:0;transition:all .4s var(--ease);padding:.75rem 1.4rem;font-size:.85rem;font-weight:700;position:fixed;bottom:2rem;right:2rem;transform:translateY(80px)}.toast.show{opacity:1;transform:translateY(0)}.mobile-nav{z-index:300;background:var(--white);transition:transform .4s var(--ease);flex-direction:column;justify-content:center;align-items:center;gap:2rem;display:flex;position:fixed;inset:0;transform:translate(100%)}.mobile-nav.open{transform:translate(0)}.mobile-nav a{color:var(--ink);font-size:1.4rem;font-weight:700}.mobile-nav a:hover{color:var(--teal)}.mobile-nav-close{background:var(--bg);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.2rem;display:flex;position:absolute;top:1.5rem;right:1.5rem}@media (max-width:960px){.hero-inner{grid-template-columns:1fr}.hero-visual{display:none}.about-grid,.contact-grid{grid-template-columns:1fr;gap:2rem}.stat-band-inner{grid-template-columns:repeat(2,1fr)}.stat-item:nth-child(2){border-right:none}.nav-menu,.nav-actions{display:none}.hamburger{display:flex}}@media (max-width:600px){.section{padding:55px 5vw}.awards-grid,.ach-grid,.work-grid,.prof-grid,.form-row{grid-template-columns:1fr}.topbar,.float-chip{display:none}}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}}.about-modern{grid-template-columns:380px 1fr;align-items:start;gap:3rem;display:grid}.profile-card{border:1px solid var(--border);text-align:center;box-shadow:var(--shadow-sm);background:#fff;border-radius:20px;margin-bottom:1.2rem;padding:2rem}.profile-avatar{background:linear-gradient(135deg, var(--teal-mid), var(--teal));color:#fff;border-radius:50%;justify-content:center;align-items:center;width:110px;height:110px;margin:auto auto 1rem;font-size:3rem;font-weight:700;display:flex}.profile-card h3{margin-bottom:.3rem}.profile-card p{color:var(--teal);font-weight:700}.profile-card span{color:var(--ink-muted);font-size:.85rem}.highlight-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.highlight-card{border:1px solid var(--border);text-align:center;background:#fff;border-radius:16px;padding:1rem;transition:all .3s}.highlight-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.highlight-icon{margin-bottom:.5rem;font-size:1.8rem}.highlight-card h4{margin-bottom:.25rem;font-size:.85rem}.highlight-card p{color:var(--ink-muted);font-size:.75rem}.about-content{border:1px solid var(--border);background:#fff;border-radius:20px;padding:2rem}.about-content p{color:var(--ink-mid);margin-bottom:1rem;line-height:1.9}.skill-section{margin-top:2rem}.skill-section h3{margin-bottom:1rem}@media (max-width:960px){.about-modern{grid-template-columns:1fr}}@media (max-width:960px){.memory-masonry{columns:2}}@media (max-width:600px){.memory-masonry{columns:1}}.memory-masonry{columns:3;column-gap:1rem}.memory-card{break-inside:avoid;cursor:pointer;box-shadow:var(--shadow-sm);border-radius:18px;margin-bottom:1rem;position:relative;overflow:hidden}.memory-card img{width:100%;transition:all .5s;display:block}.memory-card:hover img{transform:scale(1.05)}.memory-overlay{color:#fff;background:linear-gradient(#0000,#000000bf);flex-direction:column;justify-content:flex-end;padding:1rem;display:flex;position:absolute;inset:0}.memory-badge{color:var(--teal);background:#fff;border-radius:100px;align-self:flex-start;margin-bottom:.5rem;padding:.25rem .7rem;font-size:.7rem;font-weight:700}.memory-modal{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:999;background:#000c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.memory-modal-content{background:#fff;border-radius:24px;width:90%;max-width:900px;position:relative;overflow:hidden}.memory-modal-content img{object-fit:cover;width:100%;max-height:500px}.memory-info{padding:2rem}.memory-close{cursor:pointer;background:#fff;border:none;border-radius:50%;width:40px;height:40px;position:absolute;top:15px;right:15px}@media (max-width:960px){.memory-masonry{columns:2}}@media (max-width:600px){.memory-masonry{columns:1}}.footer{color:#a0a0a0;background:#111;border-top:1px solid #222;padding:40px 24px 28px;font-size:14px}.footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;max-width:960px;margin:0 auto;display:flex}.footer-logo{color:#fff;letter-spacing:-.3px;white-space:nowrap;font-size:18px;font-weight:700}.footer-links{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 18px;display:flex}.footer-links a{color:#a0a0a0;text-decoration:none;transition:color .2s}.footer-links a:hover{color:#fff}.footer-resume{border:1px solid #333;border-radius:6px;padding:4px 12px;font-size:13px;transition:background .2s,border-color .2s;color:#fff!important}.footer-resume:hover{background:#1e1e1e;border-color:#555!important}.footer-copy{color:#555;white-space:nowrap;font-size:13px}.footer-copy strong{color:#888;font-weight:500}@media (max-width:640px){.footer{padding:32px 20px 24px}.footer-inner{text-align:center;flex-direction:column;align-items:center;gap:20px}.footer-links{justify-content:center;gap:8px 16px}.footer-copy{font-size:12px}}
