@font-face{font-family:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/newsreader-vietnamese-opsz-normal.BjhtXyW2.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/newsreader-latin-ext-opsz-normal.BQn1nviT.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/newsreader-latin-opsz-normal.s-izfB6B.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Newsreader Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/_astro/newsreader-vietnamese-opsz-italic.DTr-ymY4.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Newsreader Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/_astro/newsreader-latin-ext-opsz-italic.CSPGnFdO.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Newsreader Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/_astro/newsreader-latin-opsz-italic.kJKFiXvB.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-ext-wght-normal.BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-wght-normal.DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-ext-wght-normal.DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-wght-normal.CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-vietnamese-wght-normal.CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-ext-wght-normal.DO1Apj_S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-wght-normal.Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--paper: #faf8f4;--sheet: #ffffff;--ink: #1a1a1a;--muted: #6b6b6b;--rule: #e2ddd3;--rule-strong: #cfc8bb;--accent: #2f5d50;--on-accent: #ffffff;--serif: "Newsreader Variable", Georgia, "Times New Roman", serif;--sans: "Inter Variable", system-ui, -apple-system, "Segoe UI", sans-serif;color-scheme:light}[data-variant=hotel]{--accent: #2f5d50}[data-variant=real-estate]{--accent: #1f3a5f}[data-variant=support]{--accent: #2b6777}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--paper: #121821;--sheet: #182029;--ink: #e8e6e1;--muted: #9a9fa6;--rule: #262f3a;--rule-strong: #34404d;--accent: #8cc0ae;--on-accent: #10171f;color-scheme:dark}:root:not([data-theme=light])[data-variant=real-estate]{--accent: #9db7da}:root:not([data-theme=light])[data-variant=support]{--accent: #8fc3cf}}:root[data-theme=dark]{--paper: #121821;--sheet: #182029;--ink: #e8e6e1;--muted: #9a9fa6;--rule: #262f3a;--rule-strong: #34404d;--accent: #8cc0ae;--on-accent: #10171f;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font:400 18px/1.6 var(--serif);font-optical-sizing:auto;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4,p{margin:0}h1,h2,h3{font-weight:500;letter-spacing:-.01em;line-height:1.2}em{font-style:italic;color:var(--accent)}a{color:inherit}button,input,select{font:inherit;color:inherit}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}ul{margin:0;padding:0}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}::selection{background:color-mix(in srgb,var(--accent) 22%,transparent)}.wrap{max-width:1040px;margin-inline:auto;padding-inline:32px}.skip-link{position:fixed;left:16px;top:-100px;z-index:50;padding:8px 16px;background:var(--ink);color:var(--paper);font:500 14px var(--sans)}.skip-link:focus{top:16px}.small-label,.eyebrow{font:600 12px/1.4 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px 20px;border:1px solid var(--accent);border-radius:3px;font:500 15px/1.2 var(--sans);text-decoration:none;transition:background .15s,color .15s}.primary{background:var(--accent);color:var(--on-accent)}.primary:hover{background:color-mix(in srgb,var(--accent) 85%,#000)}.secondary{background:transparent;color:var(--accent)}.secondary:hover{background:color-mix(in srgb,var(--accent) 8%,transparent)}.text-link{font:500 15px var(--sans);color:var(--accent);text-decoration:none}.text-link:hover{text-decoration:underline}.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:64px;border-bottom:1px solid var(--rule)}.topbar-name{font:500 17px var(--serif);text-decoration:none}.topbar nav{display:flex;gap:28px;font:500 14px var(--sans)}.topbar nav a{color:var(--muted);text-decoration:none}.topbar nav a:hover{color:var(--accent)}.letterhead{display:flex;gap:40px;align-items:flex-end;padding:72px 0 36px;border-bottom:2px solid var(--accent)}.portrait{width:160px;height:200px;object-fit:cover;border-radius:2px;flex-shrink:0}.role-line{font:600 13px/1.4 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}.letterhead h1{font-size:clamp(44px,7vw,76px);font-weight:450;letter-spacing:-.025em;line-height:1.02;margin:12px 0 16px}.standfirst{font-size:clamp(19px,2.2vw,23px);font-style:italic;color:var(--muted);max-width:640px;line-height:1.45}.contact-line{display:flex;flex-wrap:wrap;gap:6px 22px;margin-top:22px;font:400 15px var(--sans);color:var(--muted)}.contact-line a{text-decoration:none}.contact-line a:hover{color:var(--accent);text-decoration:underline}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.facts{display:grid;grid-template-columns:repeat(4,1fr);margin:0;border-bottom:1px solid var(--rule)}.facts>div{padding:20px 20px 22px 0}.facts>div+div{padding-left:20px;border-left:1px solid var(--rule)}.facts dt{font:500 13px/1.4 var(--sans);color:var(--muted)}.facts dd{margin:4px 0 0;font-size:23px;font-weight:500;line-height:1.25}.row{display:grid;grid-template-columns:200px 1fr;gap:40px;padding:56px 0;border-bottom:1px solid var(--rule)}.row>h2{font-size:26px;font-weight:500;color:var(--accent)}.lead{font-size:21px;line-height:1.55;max-width:680px}.focus{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:36px;padding-top:24px;border-top:1px solid var(--rule)}.focus h3{font:600 15px/1.35 var(--sans)}.focus p{margin-top:8px;font-size:16.5px;color:var(--muted);line-height:1.5}.entries{display:grid;gap:36px}.entry-head{display:flex;justify-content:space-between;align-items:baseline;gap:20px}.entry h3{font-size:23px;font-weight:550}.entry-date{font:400 14.5px var(--sans);font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap}.entry-org{margin-top:3px;font:500 15.5px var(--sans)}.entry-cat{font-weight:400;color:var(--muted)}.entry ul{margin-top:12px;padding-left:20px}.entry li{margin-top:6px;padding-left:4px}.entry li::marker{color:var(--accent)}.entries .compact h3{font-size:19px}.entries:has(.compact){gap:20px}.key-skills{font-size:20px;line-height:1.6;max-width:700px}.skill-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:32px;padding-top:24px;border-top:1px solid var(--rule)}.skill-columns h3{font:600 15px var(--sans);margin-bottom:10px}.skill-columns ul{list-style:none}.skill-columns li{font-size:17px;padding:3px 0;color:var(--muted)}.languages{margin-top:28px;font-size:18px}.languages .small-label{margin-right:12px}.sub-heading{font:600 15px var(--sans);margin-top:40px;padding-top:24px;border-top:1px solid var(--rule)}.note{margin-top:6px;font-size:16px;color:var(--muted);font-style:italic}.cert-list{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:0 28px;margin-top:14px}.cert-list li{padding:9px 0;border-bottom:1px solid var(--rule);font-size:17px}.contact-list{margin:28px 0 0;display:grid;gap:0;max-width:560px}.contact-list>div{display:grid;grid-template-columns:120px 1fr;gap:16px;padding:12px 0;border-bottom:1px solid var(--rule)}.contact-list dt{font:500 14px/1.9 var(--sans);color:var(--muted)}.contact-list dd{margin:0;font-size:19px;overflow-wrap:anywhere}.contact-list a{color:var(--accent);text-decoration:none}.contact-list a:hover{text-decoration:underline}.site-footer{display:flex;align-items:center;gap:16px;padding-block:32px;font:400 14px var(--sans);color:var(--muted)}.footer-mark{border:1px solid var(--rule-strong);background:transparent;color:var(--accent);width:34px;height:34px;border-radius:2px;font:600 12px var(--sans);letter-spacing:.04em}.site-footer>a{margin-left:auto;color:var(--accent);text-decoration:none;font-weight:500}.mobile-bar{display:none}.resume-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:24px auto;font:500 15px var(--sans)}.resume-toolbar>a{color:var(--accent);text-decoration:none}.resume-toolbar>div{display:flex;gap:16px;align-items:center}.resume-sheet{background:var(--sheet);max-width:820px;margin:0 auto 72px;padding:60px 68px;border:1px solid var(--rule);font-size:15.5px;line-height:1.55}.resume-header{border-bottom:2px solid var(--accent);padding-bottom:20px}.resume-header h1{font-size:40px;font-weight:500;letter-spacing:-.02em;margin:8px 0 4px}.resume-role{font:600 13px var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-bottom:10px}.resume-header>p:last-child{font:400 13.5px var(--sans);color:var(--muted)}.resume-header a{text-decoration:none}.resume-sheet section{margin-top:26px}.resume-sheet h2{font:600 12.5px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);border-bottom:1px solid var(--rule);padding-bottom:6px;margin-bottom:12px}.resume-sheet h3{font-size:17px;font-weight:600}.resume-job{margin-top:16px;break-inside:avoid}.resume-job-heading{display:flex;justify-content:space-between;gap:20px;align-items:baseline}.resume-job-heading>span,.resume-education>span{font:400 13px var(--sans);font-variant-numeric:tabular-nums;color:var(--muted);flex-shrink:0}.resume-employer{font:500 14px var(--sans)}.resume-job ul{margin-top:6px;padding-left:18px}.resume-education{display:flex;justify-content:space-between;gap:20px;margin-top:10px;break-inside:avoid}.resume-education p{font:400 14px var(--sans);color:var(--muted)}.owner-page{max-width:820px;padding-top:32px;padding-bottom:72px;font-family:var(--sans);font-size:16px}.owner-page>.eyebrow,.admin-head .eyebrow{margin-top:0}.owner-page h1,.error-page h1{font:450 clamp(36px,6vw,56px)/1.08 var(--serif);letter-spacing:-.02em;margin:10px 0 16px}.owner-intro{color:var(--muted);max-width:560px;font-size:18px}.current-profile{border-left:3px solid var(--accent);background:var(--sheet);padding:12px 16px;margin:28px 0;font:400 15px var(--sans)}fieldset{border:none;padding:0;margin:0}legend{font-weight:600;margin-bottom:12px}.profile-choices{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.profile-choice{background:var(--sheet);border:1px solid var(--rule);border-radius:3px;padding:16px}.profile-choice:has(input:checked){border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.profile-choice label{display:flex;gap:10px;cursor:pointer}.profile-choice input{accent-color:var(--accent);margin-top:4px;width:16px;height:16px;flex-shrink:0}.profile-choice strong{display:block;font-weight:600}.profile-choice small{display:block;color:var(--muted);font-size:14px;margin-top:4px;line-height:1.45}.profile-choice>a{display:inline-block;margin:10px 0 0 26px;color:var(--accent);font-weight:500;font-size:14px;text-decoration:none}.owner-key{display:block;margin-top:24px;font-weight:600}.owner-key input{display:block;width:100%;margin-top:8px;padding:12px 14px;border:1px solid var(--rule-strong);border-radius:3px;background:var(--sheet)}.field-help{color:var(--muted);font-size:14.5px;margin-top:8px}.error-page{padding-top:120px;padding-bottom:120px}.error-page .button{margin-top:12px}.admin-head{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-top:32px;padding-bottom:20px;border-bottom:2px solid var(--accent)}.admin-head h1{margin-bottom:0}.admin-card{background:var(--sheet);border:1px solid var(--rule);border-radius:3px;padding:24px;margin-top:24px}.admin-card .owner-key{margin-top:0}#login-form .button{margin-top:18px}.admin-title{font:500 22px var(--serif);margin:0}.admin-card .field-help{margin:4px 0 18px}.form-status{margin-top:12px;min-height:22px;font-size:15px;overflow-wrap:anywhere}.link-form{display:grid;grid-template-columns:1fr 1.4fr 1fr auto;gap:12px;align-items:end}.link-form label{display:grid;gap:6px;font-size:14px;font-weight:600}.link-form input,.link-form select{width:100%;min-height:46px;padding:9px 12px;border:1px solid var(--rule-strong);border-radius:3px;background:var(--paper)}.link-list{display:grid;gap:0}.link-row{border-bottom:1px solid var(--rule);padding:16px 0;display:grid;gap:8px}.link-row:first-child{padding-top:0}.link-row.inactive{opacity:.55}.link-main{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.link-main strong{margin-right:4px}.pill{font-size:12.5px;font-weight:500;padding:2px 8px;border:1px solid var(--rule-strong);border-radius:2px;color:var(--muted)}.status-active{border-color:#2e7d4f;color:#2e7d4f}.status-expired,.status-revoked{color:var(--muted)}.link-row code{font-size:13.5px;color:var(--muted);overflow-wrap:anywhere}.link-meta{font-size:13.5px;color:var(--muted)}.link-actions{display:flex;flex-wrap:wrap;gap:8px}.button.small{min-height:36px;padding:6px 12px;font-size:14px}.button.danger{color:#a3261e;border-color:color-mix(in srgb,#a3261e 45%,transparent);background:transparent}.button.danger:hover{background:#a3261e12}@media(max-width:860px){.row{grid-template-columns:1fr;gap:20px;padding:44px 0}.facts{grid-template-columns:repeat(2,1fr)}.facts>div:nth-child(3){padding-left:0;border-left:none}.facts>div:nth-child(n+3){border-top:1px solid var(--rule)}.profile-choices{grid-template-columns:1fr}}@media(max-width:640px){body{font-size:17px;padding-bottom:72px}.wrap{padding-inline:16px}.topbar nav{display:none}.letterhead{flex-direction:column;align-items:flex-start;gap:24px;padding:40px 0 28px}.portrait{width:120px;height:150px}.contact-line{flex-direction:column;gap:4px}.actions .button{flex:1 1 100%}.facts dd{font-size:20px}.facts>div{padding-right:12px}.facts>div+div{padding-left:12px}.facts>div:nth-child(3){padding-left:0}.lead{font-size:19px}.focus,.skill-columns,.cert-list{grid-template-columns:1fr;gap:18px}.cert-list{gap:0}.entry-head{flex-direction:column;gap:2px}.entry h3{font-size:21px}.contact-list>div{grid-template-columns:90px 1fr}.contact-list dd{font-size:17px}.site-footer{padding-bottom:20px}.mobile-bar{display:grid;grid-template-columns:1fr 1.3fr 1fr;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:30;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--rule-strong)}.mobile-bar a{display:flex;align-items:center;justify-content:center;min-height:44px;border:1px solid var(--accent);border-radius:3px;font:500 15px var(--sans);color:var(--accent);text-decoration:none}.mobile-bar .wa{background:var(--accent);color:var(--on-accent)}.resume-sheet{padding:28px 20px;margin-inline:12px}.resume-header h1{font-size:30px}.resume-job-heading,.resume-education{flex-direction:column;gap:2px}.link-form{grid-template-columns:1fr}.admin-head{align-items:start;flex-direction:column}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}@media print{@page{size:A4;margin:14mm}:root{--paper: #fff;--sheet: #fff;--ink: #000;--muted: #444;--rule: #ccc}body{background:#fff;color:#000;font-size:10.5pt;padding:0}.resume-toolbar,.mobile-bar{display:none}.resume-sheet{max-width:none;margin:0;padding:0;border:none;font-size:10.5pt}.resume-header h1{font-size:26pt}.resume-sheet section{margin-top:14px}.resume-sheet h2{break-after:avoid}.resume-job-heading,.resume-education{flex-direction:row}.resume-sheet a{color:inherit}}
