.cv-page-wrap{padding:32px 16px 64px}.cv-page{width:210mm;min-height:297mm;max-width:100%;margin:0 auto;background:#fffcf5;box-shadow:0 30px 80px -30px rgba(15,21,48,.3),0 4px 12px rgba(15,21,48,.06);border-radius:6px;padding:22mm 18mm 18mm;position:relative;overflow:hidden}.cv-page:before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(27,42,78,.03) 1px,transparent 1.2px),radial-gradient(rgba(212,169,58,.04) 1px,transparent 0);background-size:14px 14px,22px 22px;background-position:0 0,7px 11px;pointer-events:none}.cv-page-inner{position:relative;z-index:1}.cv-download-bar{max-width:210mm;margin:0 auto 16px;display:flex;justify-content:flex-end}.cv-download-link{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-inter),sans-serif;font-weight:600;font-size:13.5px;letter-spacing:-.005em;border-radius:999px;padding:9px 16px;text-decoration:none;background:var(--gold);color:var(--navy-deep);transition:background .2s ease,transform .2s ease}.cv-download-link:hover{background:var(--gold-deep);transform:translateY(-1px)}.cv-header{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:flex-end;padding-bottom:22px;border-bottom:1px solid var(--line)}.cv-h-name{font-family:var(--font-fraunces),serif;font-weight:500;font-size:50px;line-height:.98;letter-spacing:-.035em;color:var(--navy);margin:0}.cv-h-name .cv-accent{font-style:italic;font-weight:300;color:var(--gold-deep);letter-spacing:-.028em}.cv-h-role{font-family:var(--font-fraunces),serif;font-style:italic;font-weight:400;color:var(--muted);font-size:17px;margin-top:8px}.cv-h-tags{display:flex;flex-wrap:wrap;gap:6px 10px;margin-top:14px;font-size:11px;color:var(--muted);font-family:var(--font-mono),monospace;letter-spacing:.04em;text-transform:uppercase}.cv-h-tags span{display:inline-flex;align-items:center;gap:6px}.cv-h-tags .cv-dot{width:4px;height:4px;border-radius:999px;background:var(--gold)}.cv-h-contact{text-align:right;font-size:12.5px;color:var(--muted);line-height:1.55}.cv-h-contact a{color:var(--navy);font-weight:500;text-decoration:none}.cv-h-contact a:hover{color:var(--gold-deep)}.cv-h-contact .cv-mono{font-family:var(--font-mono),monospace;font-size:11px}.cv-h-stamp{font-family:var(--font-caveat),cursive;color:var(--gold-deep);font-size:18px;margin-top:6px;display:inline-block;transform:rotate(-3deg)}.cv-body{display:grid;grid-template-columns:1fr 2.1fr;gap:28px;margin-top:22px}.cv-sec-h{font-size:10px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:var(--gold-deep);font-family:var(--font-inter),sans-serif;margin:0 0 10px;display:flex;align-items:center;gap:10px}.cv-sec-h:after{content:"";flex:1;height:1px;background:var(--line)}.cv-left .cv-block{margin-bottom:22px}.cv-left li,.cv-left p{font-size:12px;line-height:1.55;color:var(--ink)}.cv-left ul{list-style:none;padding:0;margin:0}.cv-left li{padding:3.5px 0;display:flex;gap:8px;align-items:baseline}.cv-left li .cv-bullet{width:4px;height:4px;border-radius:999px;background:var(--gold);flex-shrink:0;margin-top:6px}.cv-kv{display:flex;justify-content:space-between;gap:8px;padding:3.5px 0;font-size:12px}.cv-kv .cv-k{color:var(--muted)}.cv-kv .cv-v{color:var(--navy);font-weight:500;font-family:var(--font-mono),monospace;font-size:11px}.cv-stack-grid{display:grid;grid-template-columns:1fr;gap:0}.cv-stack-row{display:grid;grid-template-columns:75px 1fr;gap:10px;padding:5px 0;font-size:11.5px;line-height:1.5;border-bottom:1px dotted var(--line)}.cv-stack-row:last-child{border-bottom:none}.cv-stack-label{color:var(--muted);font-family:var(--font-mono),monospace;font-size:10px;text-transform:uppercase;letter-spacing:.06em;padding-top:1px}.cv-stack-val{color:var(--ink)}.cv-stack-val em{color:var(--gold-deep);font-style:normal;font-weight:600}.cv-right .cv-summary{font-size:13.5px;line-height:1.6;color:var(--ink);margin:0 0 6px}.cv-right .cv-summary strong{color:var(--navy);font-weight:600}.cv-right .cv-summary em{font-family:var(--font-fraunces),serif;font-style:italic;color:var(--gold-deep);font-weight:400}.cv-exp{padding:12px 0;border-bottom:1px solid var(--line)}.cv-exp:last-child{border-bottom:none}.cv-exp-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:4px}.cv-exp-title{font-family:var(--font-fraunces),serif;font-weight:500;color:var(--navy);font-size:15px;line-height:1.25;letter-spacing:-.012em;margin:0}.cv-exp-title .cv-org{color:var(--gold-deep);font-style:italic;font-weight:400}.cv-exp-meta{font-family:var(--font-mono),monospace;font-size:10.5px;color:var(--muted);white-space:nowrap;letter-spacing:.02em;flex-shrink:0}.cv-exp-sub{font-size:11.5px;color:var(--muted);font-style:italic;margin:0 0 5px}.cv-exp-desc{font-size:12px;line-height:1.55;color:var(--ink);margin:5px 0 0}.cv-exp-list{list-style:none;padding:0;margin:6px 0 0}.cv-exp-list li{font-size:11.5px;line-height:1.5;color:var(--ink);padding:1.5px 0 1.5px 14px;position:relative}.cv-exp-list li:before{content:"—";position:absolute;left:0;top:1px;color:var(--gold);font-weight:700}.cv-exp-tags{margin-top:6px;display:flex;flex-wrap:wrap;gap:4px 6px}.cv-exp-tag{font-size:9.5px;padding:2px 7px;border-radius:999px;background:var(--cream-warm);color:var(--navy);border:1px solid var(--line);letter-spacing:.02em;line-height:1.4}.cv-exp-tag,.cv-now-pill{font-family:var(--font-mono),monospace}.cv-now-pill{display:inline-block;background:var(--gold);color:var(--navy-deep);font-size:9px;font-weight:700;padding:1px 6px;border-radius:999px;letter-spacing:.08em;text-transform:uppercase;vertical-align:middle;margin-left:6px}.cv-mini-footer{margin-top:22px;padding-top:14px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;font-size:10.5px;color:var(--muted);font-family:var(--font-mono),monospace;letter-spacing:.04em;text-transform:uppercase}.cv-mini-footer a{color:var(--navy);font-weight:500}@media screen and (max-width:820px){.cv-page{padding:24px 22px;border-radius:0;box-shadow:none}.cv-header{grid-template-columns:1fr}.cv-h-contact{text-align:left}.cv-h-name{font-size:36px}.cv-body{grid-template-columns:1fr}}@media print{@page{size:A4;margin:12mm}.no-print{display:none!important}.cv-page-wrap{padding:0}.cv-page{width:auto;min-height:0;max-width:none;margin:0;padding:4mm 5mm;box-shadow:none;border-radius:0}.cv-exp,.cv-mini-footer{page-break-inside:avoid}a{text-decoration:none}}