@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;0,700;0,800;1,400&display=swap";:root{--color-primary:#0c1222;--color-primary-soft:#151d2e;--color-bg:#f4f7fb;--color-bg-alt:#eef2f8;--color-surface:#fff;--color-surface-glass:#ffffffb8;--color-accent:#4a8fd4;--color-accent-bright:#6eb3f7;--color-accent-hover:#3a7bc0;--color-accent-glow:#4a8fd459;--color-text:#0f172a;--color-text-muted:#5c6b82;--color-text-on-dark:#e8edf5;--color-text-muted-on-dark:#94a3b8;--color-border:#0f172a14;--color-border-strong:#0f172a1f;--font-family:"Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--radius:14px;--radius-lg:22px;--radius-xl:28px;--radius-pill:999px;--shadow-sm:0 2px 8px #0c12220a;--shadow:0 8px 32px #0c122214;--shadow-lg:0 20px 60px #0c12221f;--shadow-glow:0 0 40px var(--color-accent-glow);--max-width:1140px;--nav-height:72px;--transition:.25s cubic-bezier(.4, 0, .2, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-family);color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;font-size:1rem;line-height:1.65;overflow-x:hidden}.skip-link{z-index:200;background:var(--color-accent);color:#fff;border-radius:var(--radius);transition:top var(--transition);padding:.75rem 1.25rem;font-weight:600;position:absolute;top:-100%;left:1rem}.skip-link:focus{color:#fff;top:1rem}::selection{color:var(--color-primary);background:#4a8fd433}a{color:var(--color-accent);transition:color var(--transition);text-decoration:none}a:hover{color:var(--color-accent-hover)}img{max-width:100%;display:block}ul{list-style:none}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 1.5rem}.btn{border-radius:var(--radius-pill);letter-spacing:-.01em;transition:transform var(--transition), background-color var(--transition), box-shadow var(--transition), color var(--transition), border-color var(--transition);cursor:pointer;border:1.5px solid #0000;justify-content:center;align-items:center;padding:.85rem 1.75rem;font-size:.95rem;font-weight:600;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn--primary{background:linear-gradient(135deg, var(--color-accent) 0%, #3d7ab8 100%);color:#fff;box-shadow:0 4px 20px #4a8fd459}.btn--primary:hover{background:linear-gradient(135deg, var(--color-accent-bright) 0%, var(--color-accent) 100%);color:#fff;box-shadow:0 8px 28px #4a8fd473}.btn--ghost{color:var(--color-text-on-dark);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff14;border-color:#fff3}.btn--ghost:hover{color:#fff;background:#ffffff24;border-color:#ffffff59}.section-header{max-width:640px;margin-bottom:3rem}.section-header--light .section-header__eyebrow,.section-header--light .section-header__title,.section-header--light .section-header__description{color:var(--color-text-on-dark)}.section-header--light .section-header__eyebrow{color:var(--color-accent-bright)}.section-header--light .section-header__description{color:var(--color-text-muted-on-dark)}.section-header__eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent);margin-bottom:.75rem;font-size:.8rem;font-weight:700;display:inline-block}.section-header__title{letter-spacing:-.03em;color:var(--color-primary);margin-bottom:.75rem;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:800;line-height:1.15}.section-header__description{color:var(--color-text-muted);font-size:1.05rem;line-height:1.7}.section{padding:6rem 0;position:relative}.section--alt{background:var(--color-bg-alt)}.section--contact{background:linear-gradient(160deg, var(--color-primary) 0%, #1a2744 50%, #0f1a2e 100%);color:var(--color-text-on-dark)}.navbar{z-index:100;height:var(--nav-height);transition:background var(--transition), box-shadow var(--transition);position:fixed;top:0;left:0;right:0}.navbar--scrolled{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0c1222d9;box-shadow:0 4px 24px #00000026}.navbar__inner{justify-content:space-between;align-items:center;height:100%;display:flex}.navbar__logo,.navbar__logo:visited{color:var(--color-text-on-dark);align-items:center;gap:.75rem;font-weight:700;text-decoration:none;display:flex}.navbar__logo:hover{color:#fff}.navbar__logo-mark{background:linear-gradient(135deg, var(--color-accent), #3d7ab8);color:#fff;letter-spacing:-.02em;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;font-size:.8rem;font-weight:800;display:flex}.navbar__logo-text{letter-spacing:-.02em;font-size:.95rem}.navbar__toggle{cursor:pointer;background:#ffffff14;border:1px solid #ffffff1f;border-radius:10px;flex-direction:column;justify-content:center;gap:6px;width:40px;height:40px;padding:10px;display:none}.navbar__toggle span{width:100%;height:2px;transition:transform var(--transition), opacity var(--transition);background-color:#fff;border-radius:2px;display:block}.navbar__toggle--open span:first-child{transform:translateY(8px)rotate(45deg)}.navbar__toggle--open span:last-child{transform:translateY(-8px)rotate(-45deg)}.navbar__links{align-items:center;gap:2rem;display:flex}.navbar__links a,.navbar__links a:visited{color:var(--color-text-muted-on-dark);letter-spacing:-.01em;font-size:.9rem;font-weight:500;text-decoration:none}.navbar__links a:hover{color:#fff}.navbar__cta{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff!important;border-radius:var(--radius-pill)!important;background:#ffffff1a!important;border:1px solid #ffffff2e!important;padding:.55rem 1.25rem!important}.navbar__cta:hover{background:var(--color-accent)!important;border-color:var(--color-accent)!important;color:#fff!important}.hero{min-height:100vh;padding:calc(var(--nav-height) + 3rem) 0 5rem;color:var(--color-text-on-dark);background:linear-gradient(165deg,#0c1222 0%,#141e33 40%,#1a2a45 100%);align-items:center;display:flex;position:relative;overflow:hidden}.hero__bg{pointer-events:none;position:absolute;inset:0}.hero__orb{filter:blur(80px);opacity:.5;border-radius:50%;position:absolute}.hero__orb--1{background:radial-gradient(circle,#4a8fd466 0%,#0000 70%);width:500px;height:500px;top:-10%;right:-5%}.hero__orb--2{background:radial-gradient(circle,#64a0dc40 0%,#0000 70%);width:400px;height:400px;bottom:10%;left:-10%}.hero__grid{background-image:linear-gradient(#ffffff08 1px,#0000 1px),linear-gradient(90deg,#ffffff08 1px,#0000 1px);background-size:64px 64px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 70%,#000 20%,#0000 80%);mask-image:radial-gradient(80% 70%,#000 20%,#0000 80%)}.hero__inner{grid-template-columns:auto 1fr;align-items:center;gap:4rem;display:grid;position:relative}.hero__photo-wrapper{flex-shrink:0;position:relative}.hero__photo-ring{background:conic-gradient(from 180deg, var(--color-accent), transparent 30%, transparent 70%, var(--color-accent-bright));opacity:.6;border-radius:50%;animation:12s linear infinite spin;position:absolute;inset:-12px}@keyframes spin{to{transform:rotate(360deg)}}.hero__photo{object-fit:cover;object-position:center top;width:300px;height:300px;box-shadow:var(--shadow-lg), var(--shadow-glow);border:3px solid #ffffff26;border-radius:50%;position:relative}.hero__badge{border-radius:var(--radius-pill);color:var(--color-accent-bright);letter-spacing:.02em;background:#4a8fd426;border:1px solid #4a8fd44d;align-items:center;gap:.5rem;margin-bottom:1.25rem;padding:.4rem 1rem;font-size:.8rem;font-weight:600;display:inline-flex}.hero__badge:before{content:"";background:#4ade80;border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite pulse;box-shadow:0 0 8px #4ade8099}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.hero__greeting{color:var(--color-text-muted-on-dark);margin-bottom:.35rem;font-size:1rem;font-weight:500}.hero__name{letter-spacing:-.04em;background:linear-gradient(135deg,#fff 0%,#c8d8ec 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:.75rem;font-size:clamp(2.5rem,5vw,3.75rem);font-weight:800;line-height:1.05}.hero__headline{color:var(--color-accent-bright);letter-spacing:-.02em;margin-bottom:.75rem;font-size:clamp(1.15rem,2.5vw,1.45rem);font-weight:600}.hero__subheadline{color:var(--color-text-muted-on-dark);max-width:520px;margin-bottom:.5rem;font-size:1.05rem;line-height:1.7}.hero__location{color:var(--color-text-muted-on-dark);opacity:.85;margin-bottom:1.75rem;font-size:.9rem}.hero__stack{flex-wrap:wrap;gap:.5rem;margin-bottom:2rem;display:flex}.hero__pill{border-radius:var(--radius-pill);color:var(--color-text-on-dark);letter-spacing:-.01em;transition:background var(--transition), border-color var(--transition);background:#ffffff0f;border:1px solid #ffffff1a;padding:.35rem .85rem;font-size:.8rem;font-weight:500}.hero__pill:hover{background:#4a8fd426;border-color:#4a8fd44d}.hero__actions{flex-wrap:wrap;gap:1rem;display:flex}.about__layout{grid-template-columns:1.4fr 1fr;align-items:start;gap:3rem;display:grid}.about__text{color:var(--color-text-muted);font-size:1.1rem;line-height:1.85}.stats{flex-direction:column;gap:1rem;display:flex}.stats__item{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);transition:transform var(--transition), box-shadow var(--transition);padding:1.5rem}.stats__item:hover{box-shadow:var(--shadow);transform:translateY(-3px)}.stats__value{letter-spacing:-.03em;color:var(--color-primary);margin-bottom:.25rem;font-size:1.75rem;font-weight:800;display:block}.stats__label{color:var(--color-text-muted);font-size:.85rem;font-weight:500}.skills__grid{grid-template-rows:auto auto;grid-template-columns:repeat(3,1fr);gap:1.25rem;display:grid}.skills__card{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);transition:transform var(--transition), box-shadow var(--transition), border-color var(--transition);padding:1.75rem}.skills__card:hover{box-shadow:var(--shadow);border-color:#4a8fd433;transform:translateY(-4px)}.skills__card--featured{background:linear-gradient(145deg, var(--color-primary) 0%, #1a2744 100%);border-color:#ffffff14;grid-row:span 2}.skills__card--featured .skills__category{color:var(--color-accent-bright)}.skills__card--featured .skills__item{color:var(--color-text-on-dark);background:#ffffff14;border-color:#ffffff1a}.skills__category{text-transform:uppercase;letter-spacing:.1em;color:var(--color-accent);margin-bottom:1.25rem;font-size:.75rem;font-weight:700}.skills__list{flex-wrap:wrap;gap:.5rem;display:flex}.skills__item{border-radius:var(--radius-pill);background:var(--color-bg);color:var(--color-primary);letter-spacing:-.01em;border:1px solid var(--color-border);padding:.45rem .9rem;font-size:.85rem;font-weight:600}.timeline{flex-direction:column;gap:1.5rem;display:flex;position:relative}.timeline__item{grid-template-columns:56px 1fr;align-items:start;gap:1.5rem;display:grid}.timeline__marker{background:linear-gradient(135deg, var(--color-accent), #3d7ab8);color:#fff;letter-spacing:-.02em;border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;font-size:.8rem;font-weight:800;display:flex;box-shadow:0 4px 16px #4a8fd44d}.timeline__card{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);transition:transform var(--transition), box-shadow var(--transition);padding:1.75rem}.timeline__card:hover{box-shadow:var(--shadow);transform:translate(4px)}.timeline__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.timeline__title{letter-spacing:-.02em;color:var(--color-primary);font-size:1.15rem;font-weight:700}.timeline__company{color:var(--color-accent);margin-top:.15rem;font-size:.95rem;font-weight:600}.timeline__meta{text-align:right;flex-shrink:0}.timeline__period{color:var(--color-text-muted);background:var(--color-bg);border-radius:var(--radius-pill);padding:.3rem .75rem;font-size:.8rem;font-weight:700;display:block}.timeline__location{color:var(--color-text-muted);margin-top:.35rem;font-size:.8rem;display:block}.timeline__bullets{flex-direction:column;gap:.5rem;list-style:none;display:flex}.timeline__bullets li{color:var(--color-text-muted);padding-left:1.25rem;font-size:.95rem;line-height:1.65;position:relative}.timeline__bullets li:before{content:"";background:var(--color-accent);border-radius:50%;width:6px;height:6px;position:absolute;top:.55em;left:0}.education{background:linear-gradient(135deg, var(--color-bg-alt) 0%, var(--color-surface) 100%);border-radius:var(--radius-lg);border:1px solid var(--color-border);margin-top:3rem;padding:2rem}.education__title{text-transform:uppercase;letter-spacing:.1em;color:var(--color-accent);margin-bottom:.5rem;font-size:.75rem;font-weight:700}.education__degree{letter-spacing:-.02em;color:var(--color-primary);font-size:1.1rem;font-weight:700}.education__school{color:var(--color-text-muted);margin-top:.25rem;font-size:.95rem}.projects__grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;display:grid}.projects__card{background:var(--color-surface);border-radius:var(--radius-xl);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);color:inherit;transition:transform var(--transition), box-shadow var(--transition), border-color var(--transition);flex-direction:column;gap:1rem;min-height:100%;padding:2rem;display:flex}.projects__card:hover{box-shadow:var(--shadow-lg);color:inherit;border-color:#4a8fd459;transform:translateY(-6px)}.projects__header{justify-content:space-between;align-items:center;display:flex}.projects__type{border-radius:var(--radius-pill);text-transform:uppercase;letter-spacing:.08em;padding:.3rem .75rem;font-size:.72rem;font-weight:700;display:inline-flex}.projects__type--web{color:var(--color-accent);background:#4a8fd41f}.projects__type--mobile{color:var(--color-primary);background:#1e2a3a14}.projects__arrow{color:var(--color-accent);opacity:0;transition:opacity var(--transition), transform var(--transition);font-size:1.25rem;transform:translate(-4px,4px)}.projects__card:hover .projects__arrow{opacity:1;transform:translate(0)}.projects__name{letter-spacing:-.03em;color:var(--color-primary);font-size:1.5rem;font-weight:800}.projects__description{color:var(--color-text-muted);flex:1;font-size:.95rem;line-height:1.7}.projects__tags{flex-wrap:wrap;gap:.5rem;display:flex}.projects__tag{border-radius:var(--radius-pill);background:var(--color-bg);color:var(--color-primary);border:1px solid var(--color-border);padding:.35rem .8rem;font-size:.8rem;font-weight:600}.projects__link{color:var(--color-accent);margin-top:.25rem;font-size:.9rem;font-weight:700}.projects__card:hover .projects__link{color:var(--color-accent-hover)}.highlights__grid{grid-template-columns:repeat(3,1fr);gap:1.25rem;display:grid}.highlights__card{background:var(--color-surface);border-radius:var(--radius-xl);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);transition:transform var(--transition), box-shadow var(--transition);padding:2rem;position:relative;overflow:hidden}.highlights__card:before{content:"";background:linear-gradient(90deg, var(--color-accent), var(--color-accent-bright));height:3px;position:absolute;top:0;left:0;right:0}.highlights__card:hover{box-shadow:var(--shadow-lg);transform:translateY(-6px)}.highlights__index{letter-spacing:-.04em;color:#4a8fd426;margin-bottom:1rem;font-size:2.5rem;font-weight:800;line-height:1;display:block}.highlights__title{letter-spacing:-.02em;color:var(--color-primary);margin-bottom:.75rem;font-size:1.1rem;font-weight:700}.highlights__description{color:var(--color-text-muted);font-size:.95rem;line-height:1.7}.testimonial{background:var(--color-surface);border-radius:var(--radius-xl);border:1px solid var(--color-border);box-shadow:var(--shadow);max-width:820px;padding:3rem;position:relative}.testimonial__mark{color:#4a8fd41f;font-family:Georgia,serif;font-size:5rem;font-weight:800;line-height:1;position:absolute;top:1.5rem;left:2rem}.testimonial__quote{color:var(--color-text);letter-spacing:-.01em;margin-bottom:2rem;padding-top:1rem;font-size:1.2rem;font-weight:500;line-height:1.85;position:relative}.testimonial__footer{align-items:center;display:flex}.testimonial__profile{color:inherit;transition:opacity var(--transition);align-items:center;gap:1rem;display:flex}.testimonial__profile:hover{color:inherit;opacity:.85}.testimonial__avatar{object-fit:cover;object-position:center top;border:2px solid var(--color-border);width:56px;height:56px;box-shadow:var(--shadow-sm);border-radius:50%;flex-shrink:0}.testimonial__author{color:var(--color-primary);letter-spacing:-.02em;transition:color var(--transition);font-size:1rem;font-style:normal;font-weight:700;display:block}.testimonial__profile:hover .testimonial__author{color:var(--color-accent)}.testimonial__role{color:var(--color-text-muted);margin-top:.1rem;font-size:.9rem;display:block}.resume__card{background:var(--color-surface);border-radius:var(--radius-xl);border:1px solid var(--color-border);max-width:720px;box-shadow:var(--shadow);grid-template-rows:auto auto;grid-template-columns:auto 1fr;align-items:center;gap:1.5rem 2rem;padding:2.5rem;display:grid}.resume__icon{width:72px;height:72px;color:var(--color-accent);background:linear-gradient(135deg,#4a8fd426,#4a8fd40d);border-radius:18px;grid-row:span 2;justify-content:center;align-items:center;display:flex}.resume__icon svg{width:36px;height:36px}.resume__content{grid-column:2}.resume__name{letter-spacing:-.03em;color:var(--color-primary);margin-bottom:.25rem;font-size:1.35rem;font-weight:800}.resume__label{color:var(--color-accent);margin-bottom:.75rem;font-size:.95rem;font-weight:600}.resume__description{color:var(--color-text-muted);font-size:.95rem;line-height:1.7}.resume__actions{flex-wrap:wrap;grid-column:1/-1;gap:1rem;display:flex}.contact__grid{grid-template-columns:repeat(3,1fr);gap:1.25rem;display:grid}.contact__card{border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:transform var(--transition), background var(--transition), border-color var(--transition);color:inherit;background:#ffffff0f;border:1px solid #ffffff1a;flex-direction:column;gap:.5rem;padding:1.75rem;display:flex;position:relative;overflow:hidden}.contact__card:hover{color:inherit;background:#ffffff1a;border-color:#4a8fd466;transform:translateY(-4px)}.contact__icon{width:44px;height:44px;color:var(--color-accent-bright);background:#4a8fd433;border-radius:12px;justify-content:center;align-items:center;margin-bottom:.5rem;display:flex}.contact__icon svg{width:20px;height:20px}.contact__label{text-transform:uppercase;letter-spacing:.1em;color:var(--color-accent-bright);font-size:.75rem;font-weight:700}.contact__value{color:var(--color-text-on-dark);letter-spacing:-.01em;font-size:1rem;font-weight:600}.contact__arrow{color:var(--color-accent-bright);opacity:0;transition:opacity var(--transition), transform var(--transition);font-size:1.25rem;position:absolute;top:1.75rem;right:1.75rem;transform:translate(-8px)}.contact__card:hover .contact__arrow{opacity:1;transform:translate(0)}.footer{color:#ffffff8c;background-color:#080d18;border-top:1px solid #ffffff0f;padding:2.5rem 0}.footer__inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.footer__brand{align-items:center;gap:1rem;display:flex}.footer__logo{color:#fff;background:#ffffff14;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;font-size:.7rem;font-weight:800;display:flex}.footer__copy{font-size:.9rem}.footer__links{gap:2rem;display:flex}.footer__links a{color:#ffffffa6;font-size:.9rem;font-weight:500}.footer__links a:hover{color:#fff}@media (width<=1024px){.skills__grid{grid-template-columns:repeat(2,1fr)}.skills__card--featured{grid-row:span 1}.highlights__grid{grid-template-columns:1fr}}@media (width<=768px){.navbar__toggle{display:flex}.navbar__logo-text{display:none}.navbar__links{top:var(--nav-height);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);background:#0c1222f2;border:1px solid #ffffff1a;flex-direction:column;align-items:stretch;gap:0;padding:.75rem;display:none;position:absolute;left:1rem;right:1rem}.navbar__links--open{display:flex}.navbar__links li a{border-radius:10px;padding:.85rem 1rem;display:block}.navbar__links li a:hover{background:#ffffff0f}.navbar__cta{text-align:center;margin-top:.5rem!important}.hero__inner{text-align:center;grid-template-columns:1fr;gap:2.5rem}.hero__photo-wrapper{margin:0 auto}.hero__photo{width:240px;height:240px}.hero__subheadline{margin-left:auto;margin-right:auto}.hero__stack,.hero__actions{justify-content:center}.about__layout{grid-template-columns:1fr}.stats{flex-flow:wrap}.stats__item{flex:1;min-width:140px}.skills__grid,.projects__grid{grid-template-columns:1fr}.timeline__item{grid-template-columns:44px 1fr;gap:1rem}.timeline__marker{border-radius:12px;width:44px;height:44px;font-size:.7rem}.timeline__header{flex-direction:column}.timeline__meta{text-align:left}.contact__grid{grid-template-columns:1fr}.resume__card{text-align:center;grid-template-rows:auto;grid-template-columns:1fr;padding:2rem}.resume__icon{grid-row:auto;margin:0 auto}.resume__content{grid-column:1}.resume__actions{grid-column:1;justify-content:center}.section{padding:4rem 0}.footer__inner{text-align:center;flex-direction:column}.footer__brand{flex-direction:column}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.resume-page{background:#e8edf2;min-height:100vh;padding:1rem 1rem 3rem}.resume-page__toolbar{justify-content:space-between;align-items:center;gap:1rem;max-width:850px;margin:0 auto 1.5rem;padding:.75rem 0;display:flex}.resume-page__back{color:#1e2a3a;font-size:.95rem;font-weight:600}.resume-page__back:hover{color:#3b6ea5}.resume-page__download{color:#fff;cursor:pointer;background:linear-gradient(135deg,#4a8fd4 0%,#3d7ab8 100%);border:none;border-radius:999px;padding:.65rem 1.25rem;font-family:inherit;font-size:.9rem;font-weight:600;transition:opacity .2s}.resume-page__download:hover{opacity:.9}.resume-page__container{background:#fff;border-radius:4px;max-width:850px;margin:0 auto;box-shadow:0 8px 32px #0c12221a}.resume-doc{color:#1a1a2e;padding:2.5rem 2.75rem;font-size:10.5pt;line-height:1.5}.resume-doc__header{border-bottom:2px solid #1e2a3a;margin-bottom:1.25rem;padding-bottom:1rem}.resume-doc__name{letter-spacing:-.03em;color:#0c1222;margin-bottom:.25rem;font-size:22pt;font-weight:800}.resume-doc__headline{color:#3b6ea5;margin-bottom:.6rem;font-size:11pt;font-weight:600}.resume-doc__contact{color:#5c6b82;flex-wrap:wrap;gap:.35rem 1rem;font-size:9.5pt;list-style:none;display:flex}.resume-doc__contact a{color:#3b6ea5;text-decoration:none}.resume-doc__section{margin-bottom:1.1rem}.resume-doc__section-title{text-transform:uppercase;letter-spacing:.08em;color:#0c1222;border-bottom:1px solid #d0d8e0;margin-bottom:.5rem;padding-bottom:.2rem;font-size:10.5pt;font-weight:800}.resume-doc__summary{color:#1a1a2e;font-size:10pt;line-height:1.55}.resume-doc__skill-row{margin-bottom:.25rem;font-size:9.5pt;line-height:1.45}.resume-doc__role{break-inside:avoid;page-break-inside:avoid;margin-bottom:.85rem}.resume-doc__role-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.3rem;display:flex}.resume-doc__role-title{color:#0c1222;font-size:10.5pt;font-weight:700}.resume-doc__role-location{color:#5c6b82;font-size:9pt}.resume-doc__role-period{color:#5c6b82;white-space:nowrap;flex-shrink:0;font-size:9pt;font-weight:600}.resume-doc__bullets{margin:0;padding-left:1.15rem;list-style:outside}.resume-doc__bullets li{color:#1a1a2e;margin-bottom:.2rem;font-size:9.5pt;line-height:1.45}.resume-doc__early-career,.resume-doc__education-line,.resume-doc__cert-line{color:#1a1a2e;font-size:9.5pt;line-height:1.45}.resume-doc__early-career{color:#5c6b82;margin-top:.5rem;font-style:italic}.resume-doc__quote{color:#1a1a2e;margin:0;font-size:9.5pt;font-style:italic;line-height:1.5}@media print{@page{margin:.6in .65in;size:letter}body{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#fff!important}.resume-page{background:#fff;padding:0}.resume-page__toolbar{display:none!important}.resume-page__container{max-width:none;box-shadow:none;border-radius:0;margin:0}.resume-doc{padding:0;font-size:10pt}.resume-doc__contact a{color:#1a1a2e;text-decoration:none}.resume-doc__role{break-inside:avoid;page-break-inside:avoid}}@media (width<=768px){.resume-doc{padding:1.5rem 1.25rem}.resume-doc__role-header{flex-direction:column;gap:.15rem}.resume-page__toolbar{text-align:center;flex-direction:column;align-items:stretch}}
