@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(../media/bdc7e24a509eb931-s.0ynx40_3oa9rk.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(../media/0da9c7f357bd9d4d-s.1975l3y3401x_.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:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(../media/8e6fa89aa22d24ec-s.p.2o7m9ogm38dql.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:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(../media/0a7740363b4d4863-s.3ji57o093q1kd.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(../media/5f9d24ebef5d5292-s.19xuq3td7fwu_.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:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(../media/e2334d715941921e-s.p.3o_v2fun1jzxk.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:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(../media/b53057dbf91a7acf-s.11ypmpdlzqdb_.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(../media/798ea22d9983e047-s.3go-kn2r40gie.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:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(../media/47fe1b7cd6e6ed85-s.p.3bh2vc0w-r-ll.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:Poppins;font-style:normal;font-weight:800;font-display:swap;src:url(../media/99ce71e74c11bc20-s.1jc1xb-qv_87z.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:800;font-display:swap;src:url(../media/8cf1ea7b03cdeb83-s.3dbq0oou7i_24.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:Poppins;font-style:normal;font-weight:800;font-display:swap;src:url(../media/829ba4228c966254-s.p.2mm3nq9i83l-m.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:Poppins Fallback;src:local(Arial);ascent-override:93.62%;descent-override:31.21%;line-gap-override:8.92%;size-adjust:112.16%}.poppins_532ff010-module__7U-9KG__className{font-family:Poppins,Poppins Fallback;font-style:normal}.poppins_532ff010-module__7U-9KG__variable{--font-poppins:"Poppins", "Poppins Fallback"}
@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(../media/224e262ef877bfa4-s.1zkvd_innyig_.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:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(../media/7f11d98043fdedc9-s.2c8-7nzo1jf9r.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e6d00ff86ef9e699-s.1vcas2uk12q5a.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:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(../media/d8cb5ab3660140cd-s.2demiz2t05dx4.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:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(../media/07454f8ad8aaac57-s.p.2kjei9psvcorz.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:Nunito;font-style:normal;font-weight:500;font-display:swap;src:url(../media/224e262ef877bfa4-s.1zkvd_innyig_.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:Nunito;font-style:normal;font-weight:500;font-display:swap;src:url(../media/7f11d98043fdedc9-s.2c8-7nzo1jf9r.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:500;font-display:swap;src:url(../media/e6d00ff86ef9e699-s.1vcas2uk12q5a.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:Nunito;font-style:normal;font-weight:500;font-display:swap;src:url(../media/d8cb5ab3660140cd-s.2demiz2t05dx4.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:Nunito;font-style:normal;font-weight:500;font-display:swap;src:url(../media/07454f8ad8aaac57-s.p.2kjei9psvcorz.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:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(../media/224e262ef877bfa4-s.1zkvd_innyig_.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:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(../media/7f11d98043fdedc9-s.2c8-7nzo1jf9r.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(../media/e6d00ff86ef9e699-s.1vcas2uk12q5a.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:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(../media/d8cb5ab3660140cd-s.2demiz2t05dx4.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:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(../media/07454f8ad8aaac57-s.p.2kjei9psvcorz.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:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(../media/224e262ef877bfa4-s.1zkvd_innyig_.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:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(../media/7f11d98043fdedc9-s.2c8-7nzo1jf9r.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(../media/e6d00ff86ef9e699-s.1vcas2uk12q5a.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:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(../media/d8cb5ab3660140cd-s.2demiz2t05dx4.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:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(../media/07454f8ad8aaac57-s.p.2kjei9psvcorz.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:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(../media/224e262ef877bfa4-s.1zkvd_innyig_.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:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(../media/7f11d98043fdedc9-s.2c8-7nzo1jf9r.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(../media/e6d00ff86ef9e699-s.1vcas2uk12q5a.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:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(../media/d8cb5ab3660140cd-s.2demiz2t05dx4.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:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(../media/07454f8ad8aaac57-s.p.2kjei9psvcorz.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:Nunito Fallback;src:local(Arial);ascent-override:99.71%;descent-override:34.82%;line-gap-override:0.0%;size-adjust:101.39%}.nunito_497dede1-module__PyQb3q__className{font-family:Nunito,Nunito Fallback;font-style:normal}.nunito_497dede1-module__PyQb3q__variable{--font-nunito:"Nunito", "Nunito Fallback"}
:root{--bg:#f5f9fd;--bg-elevated:#fff;--panel:#fff;--panel-border:#144a8c1a;--ink:#16324f;--ink-dim:#46617f;--muted:#7a93ae;--blue:#1d5fb0;--blue-2:#5b9ae8;--accent:#ff7a59;--accent-2:#ffb199;--accent-soft:#ff7a5921;--blue-soft:#1d5fb01a;--line:#144a8c1a;--shadow:0 22px 50px -26px #144a8c47;--font-display:var(--font-poppins), "Segoe UI", system-ui, -apple-system, sans-serif;--font-body:var(--font-nunito), "Segoe UI", system-ui, -apple-system, sans-serif;--radius-s:12px;--radius-m:20px;--radius-l:30px;--ease:cubic-bezier(.22, 1, .36, 1)}:root[data-theme=dark]{--bg:#142944;--bg-elevated:#1b3557;--panel:#1b3557;--panel-border:#ffffff1a;--ink:#f4f7fb;--ink-dim:#c6d6e8;--muted:#90a8c4;--blue:#6fb1ff;--blue-2:#a8d0ff;--accent:#ff9270;--accent-2:#ffc1a8;--accent-soft:#ff927029;--blue-soft:#6fb1ff24;--line:#ffffff1f;--shadow:0 22px 55px -24px #00000080}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-gutter:stable}body{margin:0}img,svg,canvas{max-width:100%;display:block}a{color:inherit;text-decoration:none}ul{margin:0;padding:0;list-style:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none}h1,h2,h3,p{margin:0}::selection{background:var(--accent);color:#fff}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;transition:background .4s var(--ease), color .4s var(--ease);font-size:16px;line-height:1.65;overflow-x:hidden}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}.wrap{max-width:1120px;margin:0 auto;padding:0 clamp(1.25rem,4vw,2.5rem)}section{padding:clamp(2.75rem,5.5vw,4.5rem) 0;position:relative}.section-tight{padding-bottom:clamp(1rem,2vw,1.5rem)}.hero{-webkit-user-select:none;user-select:none}.eyebrow{font-family:var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:var(--blue);align-items:center;gap:.6em;margin-bottom:1rem;font-size:.84rem;font-weight:800;display:flex}.eyebrow:before{content:"";background:var(--accent);border-radius:3px;width:24px;height:3px;display:inline-block}h2.section-title{font-family:var(--font-display);letter-spacing:-.01em;text-wrap:balance;color:var(--ink);max-width:20ch;font-size:clamp(1.9rem,3.6vw,2.7rem);font-weight:700}.scroll-progress{z-index:200;background:linear-gradient(90deg, var(--blue), var(--accent));transform-origin:0;width:100%;height:3px;transition:transform .12s linear;position:fixed;top:0;left:0;transform:scaleX(0)}.nav{z-index:100;transition:background .35s var(--ease), border-color .35s var(--ease), padding .35s var(--ease), backdrop-filter .35s;border-bottom:1px solid #0000;justify-content:space-between;align-items:center;padding:1.15rem clamp(1.25rem,4vw,2.5rem);display:flex;position:fixed;top:0;left:0;right:0}.nav.scrolled{background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:blur(14px)saturate(140%);backdrop-filter:blur(14px)saturate(140%);border-bottom-color:var(--line);padding-block:.75rem}.nav-mark{font-family:var(--font-display);letter-spacing:-.01em;align-items:center;gap:.65rem;font-size:1.02rem;font-weight:700;display:flex}.nav-mark .badge{background:linear-gradient(145deg, var(--blue), var(--accent));color:#fff;width:36px;height:36px;font-family:var(--font-display);border-radius:12px;justify-content:center;align-items:center;font-size:.95rem;font-weight:700;display:flex;box-shadow:0 8px 18px -8px #1d5fb073}.nav-links{align-items:center;gap:2.1rem;display:flex}.nav-links a{color:var(--ink-dim);transition:color .25s var(--ease);padding:.3rem 0;font-size:.92rem;font-weight:700;position:relative}.nav-links a:after{content:"";background:var(--accent);height:3px;transition:right .3s var(--ease);border-radius:3px;position:absolute;bottom:-2px;left:0;right:100%}.nav-links a:hover,.nav-links a.active{color:var(--blue)}.nav-links a:hover:after,.nav-links a.active:after{right:0}.nav-cta{align-items:center;gap:.9rem;display:flex}.theme-toggle{border:1px solid var(--panel-border);width:40px;height:40px;color:var(--ink-dim);border-radius:12px;justify-content:center;align-items:center;transition:border-color .25s,color .25s,transform .25s;display:flex}.theme-toggle:hover{color:var(--accent);border-color:var(--accent);transform:translateY(-2px)rotate(-8deg)}.theme-toggle svg{width:18px;height:18px}.nav-toggle{z-index:101;border:1px solid var(--panel-border);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:40px;height:40px;display:none;position:relative}.nav-toggle span{background:var(--ink);width:17px;height:2px;transition:.3s var(--ease);border-radius:3px}.btn{isolation:isolate;transition:transform .25s var(--ease), box-shadow .25s var(--ease), background .25s var(--ease), border-color .25s var(--ease), color .25s var(--ease);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:.55rem;padding:.9rem 1.6rem;font-size:.92rem;font-weight:800;display:inline-flex;position:relative;overflow:hidden;transform:translateY(0)scale(1)}.btn:hover{transform:translateY(-2px)scale(1.03)}.btn:active{transform:translateY(0)scale(.98)}.btn-primary{background:linear-gradient(135deg, var(--accent), #ff8f72);color:#fff;box-shadow:0 14px 30px -12px #ff7a598c}.btn-primary:hover{box-shadow:0 18px 34px -12px #ff7a59a6}.btn-ghost{color:var(--ink);border:1px solid var(--panel-border);background:0 0}.btn-ghost:hover{border-color:var(--blue);color:var(--blue)}.btn-light{color:var(--blue);border:1px solid var(--panel-border);background:#fff}.btn-light:hover{box-shadow:0 14px 28px -14px #144a8c47}.btn-small{padding:.6rem 1.1rem;font-size:.82rem}.ripple{pointer-events:none;border-radius:50%;animation:.65s ease-out forwards rippleAnim;position:absolute;transform:scale(0)}@keyframes rippleAnim{to{opacity:0;transform:scale(3)}}.hero{flex-direction:column;justify-content:center;min-height:100svh;padding-top:6rem;display:flex;position:relative;overflow:hidden}.hero-bg{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.blob{filter:blur(60px);pointer-events:none;border-radius:50%;position:absolute}.blob-1{background:radial-gradient(circle at 30% 30%, var(--accent), transparent 70%);opacity:.4;width:42vw;max-width:600px;height:42vw;max-height:600px;animation:24s ease-in-out infinite drift1;top:-16%;right:-8%}.blob-2{background:radial-gradient(circle at 60% 40%, var(--blue), transparent 70%);opacity:.35;width:36vw;max-width:520px;height:36vw;max-height:520px;animation:28s ease-in-out infinite drift2;bottom:-18%;left:-10%}.blob-3{background:radial-gradient(circle at 50% 50%, var(--blue-2), transparent 70%);opacity:.25;width:24vw;max-width:340px;height:24vw;max-height:340px;animation:20s ease-in-out infinite drift3;top:38%;left:44%}@keyframes drift1{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-5%,6%)scale(1.1)}}@keyframes drift2{0%,to{transform:translate(0)scale(1)}50%{transform:translate(6%,-5%)scale(1.12)}}@keyframes drift3{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-8%,-8%)scale(1.15)}}.bubble{pointer-events:auto;cursor:pointer;background:radial-gradient(circle at 32% 30%,#ffffffbf,#5b9ae81f 70%);border:1px solid #5b9ae840;border-radius:50%;transition:transform .15s;animation:linear infinite rise;position:absolute;bottom:-40px}.bubble:hover{transform:scale(1.12)}.bubble-splash{pointer-events:none;border:2px solid #ffffffd9;border-radius:50%;animation:.55s ease-out forwards splashRing;position:absolute}:root[data-theme=dark] .bubble-splash{border-color:#6fb1ffb3}@keyframes splashRing{0%{opacity:.9;transform:scale(.3)}to{opacity:0;transform:scale(2.2)}}.bubble-particle{background:var(--accent);pointer-events:none;border-radius:50%;width:5px;height:5px;animation:.45s ease-out forwards particleFly;position:absolute}@keyframes particleFly{to{transform:translate(var(--dx), var(--dy));opacity:0}}:root[data-theme=dark] .bubble{background:radial-gradient(circle at 32% 30%,#ffffff38,#6fb1ff14 70%);border-color:#6fb1ff33}@keyframes rise{0%{opacity:0;transform:translateY(0)translate(0)}10%{opacity:.8}90%{opacity:.5}to{transform:translateY(-115vh) translateX(var(--drift,20px));opacity:0}}.hero-inner{z-index:2;position:relative}.hero-grid{grid-template-columns:1.15fr .85fr;align-items:center;gap:clamp(2rem,5vw,4rem);display:grid}.status-pill{background:var(--accent-soft);color:var(--accent);opacity:0;animation:fadeUp .8s var(--ease) 50ms both;border:1px solid #ff7a5959;border-radius:999px;align-items:center;gap:.6rem;margin-bottom:1.75rem;padding:.5rem .95rem .5rem .7rem;font-size:.82rem;font-weight:800;display:inline-flex}.status-dot{background:var(--accent);border-radius:50%;width:8px;height:8px;position:relative}.status-dot:after{content:"";border:1px solid var(--accent);border-radius:50%;animation:2.2s ease-out infinite pulse;position:absolute;inset:-4px}@keyframes pulse{0%{opacity:.9;transform:scale(.6)}to{opacity:0;transform:scale(2.1)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeUpBlur{0%{opacity:0;filter:blur(6px);transform:translateY(18px)}to{opacity:1;filter:blur();transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}.hero h1{font-family:var(--font-display);letter-spacing:-.02em;text-wrap:balance;font-size:clamp(2.5rem,6.4vw,4.6rem);font-weight:700;line-height:1.04}.hero h1 .letters .l{opacity:0;animation:fadeUpBlur .7s var(--ease) both;animation-delay:calc(.12s + var(--i,0) * 45ms);display:inline-block}.hero h1 .line{display:block;overflow:hidden}.hero h1 .grad-word{opacity:0;animation:fadeUp .9s var(--ease) .5s both;background:linear-gradient(100deg, var(--blue) 0%, var(--accent) 40%, var(--blue) 75%, var(--accent) 100%);color:#0000;animation:fadeUp .9s var(--ease) .5s both, shimmer 8s linear 1.4s infinite alternate;background-position:0%;background-repeat:no-repeat;background-size:280%;-webkit-background-clip:text;background-clip:text;display:inline-block}@keyframes shimmer{to{background-position:100%}}.hero-role{color:var(--ink-dim);opacity:0;max-width:44ch;animation:fadeUp .8s var(--ease) .65s both;margin-top:1.5rem;font-size:clamp(1.05rem,1.8vw,1.3rem);font-weight:600}.hero-role strong{color:var(--blue);font-weight:800}.hero-meta{color:var(--muted);opacity:0;animation:fadeUp .8s var(--ease) .8s both;flex-wrap:wrap;gap:1.6rem;margin-top:2.1rem;font-size:.9rem;font-weight:700;display:flex}.hero-meta li{align-items:center;gap:.5rem;display:flex}.hero-meta svg{width:16px;height:16px;color:var(--accent);flex:none}.hero-actions{opacity:0;animation:fadeUp .8s var(--ease) .95s both;flex-wrap:wrap;gap:1rem;margin-top:2.6rem;display:flex}.hero-photo-wrap{opacity:0;animation:scaleIn 1s var(--ease) .35s both;justify-content:center;align-items:center;display:flex;position:relative}.hero-photo-halo{background:conic-gradient(from 0deg, var(--blue), var(--accent), var(--blue-2), var(--blue));filter:blur(2px);opacity:.55;border-radius:50%;animation:16s linear infinite spinHalo;position:absolute;inset:-6%}@keyframes spinHalo{to{transform:rotate(360deg)}}.hero-photo{aspect-ratio:1;background:linear-gradient(160deg, var(--bg-elevated), var(--blue-soft));border:6px solid var(--bg-elevated);border-radius:50%;justify-content:center;align-items:center;width:min(320px,74vw);animation:7s ease-in-out infinite floatPhoto;display:flex;position:relative;overflow:hidden;box-shadow:0 30px 60px -24px #144a8c59}@keyframes floatPhoto{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}.hero-photo svg{width:56%;height:56%;color:var(--blue);opacity:.55}.hero-photo img{object-fit:cover;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;-webkit-touch-callout:none;pointer-events:none;width:100%;height:100%}.scroll-cue{z-index:2;color:var(--muted);opacity:0;animation:fadeUp .8s var(--ease) 1.2s both;flex-direction:column;align-items:center;gap:.5rem;font-size:.82rem;font-weight:700;display:flex;position:absolute;bottom:2.4rem;left:clamp(1.25rem,4vw,2.5rem)}.scroll-cue svg{width:20px;height:20px;color:var(--accent);animation:1.8s ease-in-out infinite bounceArrow}@keyframes bounceArrow{0%,to{transform:translateY(0)}50%{transform:translateY(8px)}}.reveal{opacity:0;transition:opacity .8s var(--ease), transform .8s var(--ease);transform:translateY(28px)}.reveal.in{opacity:1;transform:translateY(0)}.reveal-scale{opacity:0;transition:opacity .7s var(--ease), transform .7s var(--ease);transform:scale(.94)}.reveal-scale.in{opacity:1;transform:scale(1)}.about-grid{grid-template-columns:.85fr 1.15fr;align-items:start;gap:clamp(2rem,5vw,4.5rem);margin-top:2.75rem;display:grid}.about-lead{font-family:var(--font-display);color:var(--ink);text-wrap:balance;font-size:clamp(1.2rem,2vw,1.5rem);font-weight:600;line-height:1.5}.about-lead strong{color:var(--accent);font-weight:700}.about-para{color:var(--ink-dim);font-size:1rem;line-height:1.8}.fact-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.1rem;margin-top:2.5rem;display:grid}.fact{border:1px solid var(--panel-border);border-radius:var(--radius-m);background:var(--panel);transition:transform .3s var(--ease), border-color .3s var(--ease), box-shadow .3s var(--ease);gap:1rem;padding:1.15rem 1.25rem;display:flex}.fact:hover{border-color:var(--blue);box-shadow:var(--shadow);transform:translate(3px)}.fact svg{width:20px;height:20px;color:var(--accent);flex:none;margin-top:2px}.fact b{color:var(--blue);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.2rem;font-size:.72rem;font-weight:800;display:block}.fact span{color:var(--ink);font-size:.95rem;font-weight:600}.timeline{margin-top:3.2rem;position:relative}.timeline-item{perspective:1000px;grid-template-columns:112px 32px 1fr;column-gap:1.4rem;padding-bottom:2.6rem;display:grid;position:relative}.timeline-item:last-child{padding-bottom:0}.t-date{color:var(--muted);text-align:right;font-variant-numeric:tabular-nums;padding-top:.35rem;font-size:.86rem;font-weight:700;line-height:1.5}.t-rail{flex-direction:column;align-items:center;display:flex}.t-dot{background:var(--bg);border:3px solid var(--blue);z-index:2;width:15px;height:15px;transition:background .3s var(--ease), transform .4s var(--ease);border-radius:50%;flex:none;margin-top:.4rem;position:relative}.timeline-item.in .t-dot{background:var(--accent);border-color:var(--accent);transform:scale(1.2)}.t-line{background:linear-gradient(var(--blue), var(--accent));transform-origin:top;width:2px;transition:transform 1.1s var(--ease) .1s;opacity:.4;border-radius:2px;flex:1;margin-top:2px;transform:scaleY(0)}.timeline-item.in .t-line{transform:scaleY(1)}.t-card{background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius-m);transform-style:preserve-3d;will-change:transform;transition:transform .45s var(--ease), box-shadow .35s var(--ease), border-color .35s var(--ease);text-align:left;width:100%;padding:1.7rem 1.8rem;transform:perspective(1000px)rotateX(0)rotateY(0)translateY(0)}.t-card:hover{box-shadow:var(--shadow);border-color:#ff7a5966}.t-head{flex-wrap:wrap;align-items:baseline;gap:.6rem;margin-bottom:.3rem;display:flex}.t-role{font-family:var(--font-display);color:var(--ink);font-size:1.1rem;font-weight:700}.t-company-row{align-items:center;gap:.7rem;margin-top:.15rem;display:flex}.company-logo{object-fit:contain;border-radius:10px;flex:none;width:38px;height:38px}.company-logo-placeholder{background:linear-gradient(145deg, var(--blue), var(--accent));color:#fff;width:38px;height:38px;font-family:var(--font-display);border-radius:10px;flex:none;justify-content:center;align-items:center;font-size:.86rem;font-weight:700;display:flex}.t-company{color:var(--blue);z-index:3;font-weight:800;position:relative}.t-company:hover{text-decoration:underline}.t-tags-row{flex-wrap:wrap;gap:.5rem;margin:.6rem 0 .9rem;display:flex}.pill{letter-spacing:.03em;text-transform:uppercase;border:1px solid var(--panel-border);color:var(--muted);border-radius:999px;padding:.3rem .65rem;font-size:.72rem;font-weight:800}.pill.accent{color:var(--accent);background:var(--accent-soft);border-color:#ff7a5959}.t-desc{color:var(--ink-dim);max-width:62ch;font-size:.96rem;line-height:1.7}.t-skills{flex-wrap:wrap;gap:.5rem;margin-top:1.1rem;display:flex}.t-skill{background:var(--blue-soft);border:1px solid var(--panel-border);color:var(--blue);border-radius:8px;padding:.34rem .7rem;font-size:.78rem;font-weight:700}.modal-backdrop{z-index:300;-webkit-backdrop-filter:blur();backdrop-filter:blur();transition:background .26s var(--ease), backdrop-filter .26s var(--ease);background:#0f233c00;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.modal-backdrop.is-visible{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0f233c80}.modal-panel{background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius-l);opacity:0;width:100%;max-width:760px;max-height:88vh;transition:transform .3s var(--ease), opacity .22s ease;padding:clamp(2rem,4.5vw,3.25rem);overflow-y:auto;transform:scale(.94)translateY(14px);box-shadow:0 50px 100px -30px #0f233c80}.modal-panel.is-visible{opacity:1;transform:scale(1)translateY(0)}@media (max-width:640px){.modal-backdrop{padding:0}.modal-panel{border-radius:0;width:100%;max-width:none;height:100%;max-height:100%;transform:translateY(24px)}.modal-panel.is-visible{transform:translateY(0)}}.modal-close{border:1px solid var(--panel-border);width:36px;height:36px;color:var(--ink-dim);border-radius:10px;justify-content:center;align-items:center;transition:color .25s,border-color .25s,transform .25s;display:flex;position:absolute;top:1.25rem;right:1.25rem}.modal-close:hover{color:var(--accent);border-color:var(--accent);transform:rotate(90deg)}.modal-panel{position:relative}.skills-cloud{flex-wrap:wrap;gap:.9rem;margin-top:2.75rem;display:flex}.chip{border-radius:var(--radius-s);background:var(--panel);border:1px solid var(--panel-border);color:var(--ink);transition:transform .22s var(--ease), border-color .22s var(--ease), box-shadow .22s var(--ease), background .22s var(--ease);cursor:default;align-items:center;gap:.55rem;padding:.8rem 1.2rem;font-size:.94rem;font-weight:700;display:inline-flex}.chip:before{content:"";background:var(--accent);width:7px;height:7px;transition:transform .3s var(--ease);border-radius:50%;flex:none}.chip:hover{border-color:var(--blue);background:var(--blue-soft);transform:translateY(-2px)scale(1.03);box-shadow:0 12px 22px -14px #1d5fb059}.chip:hover:before{background:var(--accent);transform:scale(1.4)}.skills-sub-block{margin-top:3.5rem}.subsection-title{font-family:var(--font-display);color:var(--ink);margin-bottom:1.6rem;font-size:1.15rem;font-weight:700}.progress-track{background:var(--blue-soft);border-radius:999px;width:100%;height:8px;margin-top:.55rem;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--blue), var(--accent));width:0%;height:100%;transition:width 1.1s var(--ease);border-radius:999px}.tool-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1.1rem;display:grid}.tool-card{border-radius:var(--radius-m);border:1px solid var(--panel-border);background:var(--panel);cursor:pointer;height:96px;transition:border-color .25s var(--ease), box-shadow .25s var(--ease), transform .25s var(--ease);align-items:center;gap:1rem;padding:1.1rem 1.3rem;display:flex;position:relative}.tool-card:hover,.tool-card:focus-visible{box-shadow:var(--shadow);border-color:#1d5fb04d;transform:translateY(-2px)}.tool-card-cue{width:20px;height:20px;color:var(--blue);background:var(--blue-soft);opacity:.55;transition:opacity .25s var(--ease), transform .25s var(--ease);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:.7rem;right:.7rem}.tool-card-cue svg{width:12px;height:12px}.tool-card:hover .tool-card-cue,.tool-card:focus-visible .tool-card-cue{opacity:1;transform:translate(2px)}.tool-modal-head{align-items:center;gap:1rem;display:flex}.tool-icon-img{object-fit:contain;border-radius:10px;flex:none;width:48px;height:48px}.tool-icon-placeholder{background:var(--blue-soft);width:48px;height:48px;color:var(--blue);border-radius:10px;flex:none;justify-content:center;align-items:center;display:flex}.tool-icon-placeholder svg{width:24px;height:24px}.tool-body{flex:1;min-width:0}.tool-name{color:var(--ink);font-size:.92rem;font-weight:700}.tool-card .tool-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tool-desc{color:var(--ink-dim);font-size:.84rem;line-height:1.5}.lang-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1.1rem;display:grid}.lang-card{background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius-m);transition:transform .25s var(--ease), box-shadow .25s var(--ease), border-color .25s var(--ease);align-items:center;gap:1rem;padding:1.1rem 1.3rem;display:flex}.lang-card:hover{box-shadow:var(--shadow);border-color:#1d5fb04d;transform:translateY(-2px)}.lang-flag{flex:none;font-size:1.8rem;line-height:1}.lang-flag-img{object-fit:cover;border-radius:50%;flex:none;width:34px;height:34px}.lang-name-row{justify-content:space-between;align-items:baseline;gap:.6rem;display:flex}.lang-level{color:var(--muted);white-space:nowrap;font-size:.78rem;font-weight:700}.edu-list{flex-direction:column;gap:1.3rem;margin-top:2.75rem;display:flex}.edu-card{background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius-l);transition:transform .35s var(--ease), box-shadow .35s var(--ease);align-items:center;gap:1.6rem;padding:2rem clamp(1.5rem,4vw,2.6rem);display:flex}.edu-body{flex:auto;min-width:0}.edu-card:hover{box-shadow:var(--shadow);transform:translateY(-4px)}.edu-mark{background:linear-gradient(145deg, var(--blue), var(--accent));color:#fff;width:66px;height:66px;font-family:var(--font-display);border-radius:18px;flex:none;justify-content:center;align-items:center;font-size:1.3rem;font-weight:700;display:flex;box-shadow:0 12px 26px -10px #1d5fb073}.edu-logo-img{object-fit:contain;border-radius:18px;flex:none;width:66px;height:66px}.edu-body h3{font-family:var(--font-display);margin-bottom:.3rem;font-size:1.18rem;font-weight:700}.edu-body p{color:var(--ink-dim);font-size:.94rem}.portfolio-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-top:2.75rem;display:grid}.portfolio-card{background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius-m);transition:transform .35s var(--ease), box-shadow .35s var(--ease), border-color .35s var(--ease);flex-direction:column;display:flex;overflow:hidden}.portfolio-card:hover{box-shadow:var(--shadow);border-color:#1d5fb059;transform:translateY(-3px)}.portfolio-media{aspect-ratio:16/10;background:var(--blue-soft);justify-content:center;align-items:center;display:flex;overflow:hidden}.portfolio-media img{object-fit:cover;width:100%;height:100%}.portfolio-media svg{width:34%;height:34%;color:var(--blue);opacity:.45}.portfolio-body{flex-direction:column;flex:1;gap:.6rem;padding:1.4rem 1.5rem 1.6rem;display:flex}.portfolio-body h3{font-family:var(--font-display);color:var(--ink);font-size:1.05rem;font-weight:700}.portfolio-body p{color:var(--ink-dim);flex:1;font-size:.9rem;line-height:1.6}.portfolio-link{color:var(--blue);transition:gap .25s var(--ease), color .25s var(--ease);align-self:flex-start;align-items:center;gap:.4rem;font-size:.86rem;font-weight:800;display:inline-flex}.portfolio-link:hover{color:var(--accent);gap:.65rem}.recommend-grid{grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:1.5rem;margin-top:2.75rem;display:grid}.recommend-card{background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius-m);cursor:pointer;transition:transform .25s var(--ease), box-shadow .25s var(--ease), border-color .25s var(--ease);padding:1.6rem 1.7rem}.recommend-card:hover{box-shadow:var(--shadow);border-color:#1d5fb059;transform:translateY(-3px)scale(1.01)}.recommend-head{align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.recommend-name{font-family:var(--font-display);color:var(--ink);font-size:.98rem;font-weight:700}.recommend-role{color:var(--muted);font-size:.82rem;font-weight:600}.recommend-excerpt{color:var(--ink-dim);margin-bottom:1.1rem;font-size:.94rem;font-style:italic;line-height:1.65}.recommend-pdf-frame{border-radius:var(--radius-s);border:1px solid var(--panel-border);background:var(--bg);width:100%;height:min(70vh,640px);overflow:hidden}.recommend-pdf-frame iframe{border:none;width:100%;height:100%}.recommend-pdf-placeholder{text-align:center;color:var(--muted);background:var(--blue-soft);border-radius:var(--radius-s);padding:2.5rem;font-weight:700}.contact{background:linear-gradient(150deg, var(--blue) 0%, #164a8a 100%);color:#f4f8fc;text-align:center;border-radius:clamp(20px,4vw,40px);margin:0 clamp(1.25rem,4vw,2.5rem);padding:clamp(3.5rem,8vw,6rem) clamp(1.5rem,6vw,4rem);position:relative;overflow:hidden}.contact:before{content:"";pointer-events:none;background:radial-gradient(circle at 18% 20%,#ff7a5959,#0000 45%),radial-gradient(circle at 85% 75%,#ffffff2e,#0000 50%);position:absolute;inset:0}.contact-inner{z-index:1;max-width:640px;margin:0 auto;position:relative}.contact .eyebrow{color:var(--accent-2);justify-content:center}.contact .eyebrow:before{background:var(--accent-2)}.contact h2{font-family:var(--font-display);letter-spacing:-.02em;text-wrap:balance;margin-bottom:1.1rem;font-size:clamp(2rem,4.4vw,3.1rem);font-weight:700}.contact p.sub{color:#f4f8fcd9;max-width:52ch;margin:0 auto 2.4rem;font-size:1.04rem}.contact-actions{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.contact .btn-ghost{color:#fff;border-color:#ffffff4d}.contact .btn-ghost:hover{border-color:var(--accent-2);color:var(--accent-2)}.contact .btn-light{color:var(--blue)}footer{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:2.6rem clamp(1.25rem,4vw,2.5rem) 3rem;font-size:.85rem;font-weight:700;display:flex}footer a{color:var(--muted);transition:color .25s}footer a:hover{color:var(--accent)}@media (max-width:880px){.nav-links{background:var(--bg-elevated);width:min(78vw,320px);height:100svh;transition:transform .4s var(--ease);border-left:1px solid var(--panel-border);z-index:99;flex-direction:column;justify-content:center;align-items:flex-start;gap:1.6rem;padding:2rem;position:fixed;top:0;right:0;transform:translate(100%)}.nav-links.open{transform:translate(0)}.nav-links a{font-size:1.1rem}.nav-toggle{display:flex}.nav-cta{gap:.5rem}.nav-cta .btn-primary{padding:.6rem 1rem;font-size:.82rem}.hero-grid{text-align:center;grid-template-columns:1fr}.hero-photo-wrap{margin-top:2.2rem}.hero-meta,.hero-actions{justify-content:center}.about-grid{grid-template-columns:1fr}.timeline-item{grid-template-columns:26px 1fr}.t-date{display:none}.t-date-mobile{color:var(--accent);letter-spacing:.02em;margin-bottom:.5rem;font-size:.8rem;font-weight:800;display:block}.t-card{padding:1.4rem}.contact{margin:0 .9rem}.contact-actions{flex-direction:column;align-items:stretch}.contact-actions .btn{width:100%}}.t-date-mobile{display:none}@media (max-width:480px){.nav-name{display:none}}@media (max-width:520px){.hero{padding-top:5.5rem}.hero h1{font-size:clamp(2.1rem,9vw,4.6rem)}.hero-meta{gap:1rem}.hero-role{max-width:none}section{padding:2.25rem 0}.modal-panel{padding:1.5rem 1.25rem}.recommend-pdf-frame{height:55vh}}@media (hover:none){.btn:active{transform:translateY(0)scale(.97)}.chip:active{transform:scale(.96)}.t-card:active,.recommend-card:active,.portfolio-card:active,.tool-card:active,.lang-card:active,.fact:active,.edu-card:active{transform:scale(.98)}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.hero h1 .letters .l,.status-pill,.hero-role,.hero-meta,.hero-actions,.hero-photo-wrap,.scroll-cue,.hero h1 .grad-word{opacity:1!important;filter:none!important;transform:none!important}}
