@import url("https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap");@import url("https://fonts.googleapis.com/css2?family=Fira+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&display=swap");@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap");:root{--paper:#fff;--ink:#000;--ink-soft:#3a3a3a;--ink-muted:#555;--accent:#a8232a;--line:#888;--line-light:#ccc}*{box-sizing:border-box;padding:0}*,body{margin:0}body{color:var(--ink);font-family:Manrope,Segoe UI,sans-serif;font-size:10.5pt;line-height:1.45;background:#e8e4df}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.main{min-height:100vh;display:flex;justify-content:center;padding:2rem 1rem 3rem}.sheet{width:min(8.5in,100%);background:var(--paper);box-shadow:0 4px 24px rgba(0,0,0,.12);padding:.55in .6in .5in;position:relative}.header-module{display:grid;grid-template-columns:auto 1fr;grid-gap:1rem;gap:1rem;align-items:start}.header-module:not(:has(.header-aside)){grid-template-columns:1fr}.header-controls{grid-column:1/-1;display:flex;gap:.75rem;align-items:center}.identity-column{min-width:0}.name{font-size:22pt;font-weight:800;line-height:1.1;color:var(--ink);margin:0}.contact-list{list-style:none;margin:.35rem 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;grid-gap:.15rem 1.5rem;gap:.15rem 1.5rem}.contact-line{display:flex;align-items:center;gap:.45rem;font-size:9.5pt;color:var(--ink)}.contact-icon{width:14px;display:inline-flex;justify-content:center;flex-shrink:0}.contact-icon svg{width:14px;height:14px;fill:var(--accent,#555)}.contact-icon.icon-github svg{fill:#333}.contact-icon.icon-linkedin svg{fill:#0077b5}.contact-value,a.contact-value{color:var(--ink);text-decoration:none}.contact-value:hover{text-decoration:underline}.summary{margin:.55rem 0 0;font-size:10pt;font-weight:700;font-style:italic;line-height:1.5;color:var(--ink);grid-column:1/-1}.header-aside{display:flex;flex-direction:column;align-items:stretch;gap:.75rem}.headshot-frame{width:150px;overflow:hidden;border-radius:2px}.header-module.photo-right{grid-template-columns:1fr auto}.headshot{width:100%;height:auto;display:block}.toolbar{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:flex-end}.button{border:1px solid var(--ink);background:var(--ink);color:#fff;padding:.3rem .7rem;border-radius:4px;font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:opacity .15s ease}.button:hover:not(:disabled){opacity:.85}.button:disabled{opacity:.6;cursor:wait}.button.secondary{background:#fff;color:var(--ink);border-color:var(--line-light)}.profile-selector{display:flex;align-items:center;gap:.4rem;margin-top:.5rem}.profile-label{text-transform:uppercase;letter-spacing:.04em}.profile-dropdown,.profile-label{font-size:.7rem;font-weight:600;color:var(--ink)}.profile-dropdown{border:1px solid var(--line-light);background:#fff;padding:.25rem .5rem;border-radius:4px;cursor:pointer}.resume-section{margin-top:.7rem}.section-title{font-size:13pt;font-weight:800;color:var(--ink);padding-bottom:.2rem;border-bottom:1px solid var(--ink);margin-bottom:.4rem}.entry{margin-top:.35rem;padding:0}.entry+.entry{margin-top:.5rem}.entry-topline{justify-content:space-between;gap:.5rem}.entry-title-group,.entry-topline{display:flex;align-items:baseline;flex-wrap:wrap}.entry-title-group{gap:.3rem;min-width:0}.entry-title{font-size:11pt;font-weight:800;color:var(--ink);margin:0}.entry-right{font-size:10pt;color:var(--ink);text-align:right;white-space:nowrap;flex-shrink:0}.entry-company{margin:0}.entry-company,.entry-subtitle{font-size:10pt;color:var(--ink-soft)}.entry-subtitle{margin:.1rem 0 0;font-style:italic;line-height:1.45}.entry-details{margin:.2rem 0 0}.stack-bullets{list-style:none;margin:0;padding:0 0 0 1.4rem;display:flex;flex-direction:column;gap:.12rem}.stack-bullets li{position:relative;padding-left:0;font-size:10pt;line-height:1.45;color:var(--ink-soft);font-style:italic}.stack-bullets li:before{content:"\2022";position:absolute;left:-1.2rem;color:var(--accent);font-style:normal;font-size:9pt}.projects-list{list-style:none;padding:0 0 0 1.4rem;margin:0;display:flex;flex-direction:column;gap:.3rem}.projects-list li{position:relative;font-size:10pt;line-height:1.5;color:var(--ink-soft);font-style:italic}.projects-list li:before{content:"\2022";position:absolute;left:-1.2rem;color:var(--accent);font-style:normal;font-size:9pt}.project-name{font-weight:700;font-style:italic;color:var(--ink)}.project-name a{color:var(--accent)}.skills-block{margin-top:.3rem;display:flex;flex-direction:column;gap:.15rem}.skill-row{font-size:9pt;line-height:1.45}.skill-level{display:inline-flex;gap:2px;margin-left:.35em;vertical-align:baseline}.skill-level i{width:5px;height:5px;border-radius:50%;background:var(--line-light)}.skill-level i.on{background:var(--accent)}.skill-category{font-weight:800;margin-right:.4em}.skill-items{color:var(--ink-soft)}.edu-detail{font-size:10pt;color:var(--ink-muted);font-style:italic}.landing{min-height:100vh;background:#e8e4df;font-family:Inter,sans-serif}.landing,.landing-card{display:flex;align-items:center;justify-content:center}.landing-card{position:relative;background:#fff;padding:2.5rem 3rem 2rem;border-radius:0;box-shadow:none;text-align:center;max-width:680px;width:90%;aspect-ratio:5/4;flex-direction:column}.landing-card:after{top:-4px;bottom:-4px;left:-11px;right:-8px;background-image:url(/negative-holder-frame.png);z-index:20}.landing-card:after,.landing-card:before{content:"";position:absolute;background-size:100% 100%;background-repeat:no-repeat;pointer-events:none}.landing-card:before{top:4px;left:4px;right:4px;bottom:4px;background-image:url(/film-frame.png);z-index:15}.landing-name{font-size:3.4rem;font-weight:400;color:#1a1a1a;margin:0 0 .4rem;padding:0;line-height:1.1;display:inline-block;letter-spacing:.08em;font-family:Bebas Neue,sans-serif;background:none}.landing-subtitle{font-size:.7rem;color:#888;margin:0 0 1.2rem;letter-spacing:.15em;font-family:Inter,sans-serif;font-style:normal;font-weight:400;text-transform:uppercase}.landing-blurb{font-size:.78rem;color:#b0b0b0;margin:0 0 1.5rem;line-height:1.5;max-width:420px;font-family:Inter,sans-serif;font-weight:300}.landing-input-group{display:flex;flex-direction:column;align-items:center;gap:.6rem;width:100%}.landing-desc-toggle{background:none;border:none;color:#888;font-size:.75rem;cursor:pointer;font-family:EB Garamond,serif;font-style:italic;padding:0}.landing-desc-toggle:hover{color:#555}.landing-textarea{width:100%;border:1px solid #ddd;border-radius:8px;padding:.75rem 1rem;font-size:.8rem;font-family:inherit;resize:vertical;min-height:80px;max-height:200px;color:#333}.landing-textarea:focus{outline:none;border-color:#999}.landing-btn-inline{padding:.5rem .7rem;background:rgba(0,0,0,.5);color:#fff;border:1px solid hsla(0,0%,100%,.4);font-size:1rem;font-weight:700;cursor:pointer;line-height:1}.landing-btn-inline:disabled{opacity:.4;cursor:default}.landing-btn-inline:hover:not(:disabled){opacity:.85;margin-bottom:1.25rem}.landing-input{border:1px solid #ddd;border-radius:8px;padding:.75rem 1rem;font-size:.95rem;font-family:inherit;color:#1a1a1a;background:#fff;outline:none;transition:border-color .15s;width:100%}.landing-input:focus{border-color:#999}.landing-input::placeholder{color:#aaa}.landing-btn{border:none;border-radius:6px;padding:.6rem 2rem;font-size:.8rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;font-family:inherit;transition:opacity .15s;width:auto}.landing-btn:disabled{opacity:.4;cursor:default}.landing-btn--primary{background:#1a1a1a;color:#fff}.landing-btn--primary:hover:not(:disabled){opacity:.85}.landing-btn--ghost{background:transparent;border:none;border-radius:0;color:#888;position:relative}.landing-btn--ghost:hover{color:#333}.landing-divider{margin:1rem 0;color:#aaa;font-size:.75rem;font-weight:400;font-family:Inter,sans-serif;font-style:normal;text-transform:lowercase;letter-spacing:.05em}.landing-picks{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem 1.2rem;margin-bottom:1rem}.landing-pick-btn{border:1px solid rgba(217,161,52,.3);border-right:none;border-left:none;border-radius:0;padding:.35rem .2rem;font-size:10px;font-weight:600;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;color:#d9a134;text-transform:uppercase;letter-spacing:.22em;background:transparent;cursor:pointer;transition:all .15s ease;text-shadow:0 0 .6px rgba(217,161,52,.5)}.landing-pick-btn:hover{color:#efc06c;border-color:hsla(38,80%,68%,.4);background:transparent}.landing-pick-btn--ghost{border:none;color:#888;font-size:10px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;text-transform:uppercase;letter-spacing:.22em;font-weight:600;text-shadow:none}.landing-pick-btn--ghost:hover{color:#d9a134;background:none}.hamburger-btn{position:fixed;top:1rem;right:1rem;z-index:1001;width:44px;height:44px;border-radius:8px;border:1px solid #ddd;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(0,0,0,.1);transition:box-shadow .15s}.hamburger-btn:hover{box-shadow:0 2px 12px rgba(0,0,0,.18)}.hamburger-icon{display:flex;flex-direction:column;gap:4px;width:20px}.hamburger-icon span{display:block;height:2px;background:var(--ink);border-radius:1px}.menu-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.3);z-index:999}.menu-panel{position:fixed;top:0;right:-320px;width:300px;height:100vh;background:#f9f9f9;z-index:1000;padding:3.5rem 1.25rem 1.25rem;overflow-y:auto;box-shadow:-4px 0 24px rgba(0,0,0,.12);transition:right .25s ease}.menu-panel--open{right:0}.menu-close{position:absolute;top:.75rem;right:.75rem;background:none;border:none;font-size:1.5rem;color:#888;cursor:pointer;line-height:1;padding:.25rem}.menu-close:hover{color:var(--ink)}.menu-panel .toolbar{flex-direction:column;justify-content:stretch}.menu-panel .toolbar .button{width:100%;text-align:center}.viewer-layout{display:grid;grid-template-columns:220px 1fr 260px;min-height:100vh;background:#e8e4df}.viewer-layout--full{grid-template-columns:1fr}.viewer-sidebar{background:#f5f5f5;border-color:#ddd;padding:1.25rem 1rem;position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow-y:auto;font-size:.8rem}.viewer-sidebar-left{border-right:1px solid #ddd}.viewer-sidebar-right{border-left:1px solid #ddd}.sidebar-section{margin-bottom:1.5rem}.sidebar-heading{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#555;margin:0 0 .6rem;padding-bottom:.35rem;border-bottom:1px solid #ddd}.theme-cards{display:flex;flex-direction:column;gap:.5rem}.theme-card{display:flex;align-items:center;gap:.6rem;padding:.45rem .5rem;border:1px solid #ccc;border-radius:6px;background:#fff;cursor:pointer;transition:border-color .15s,box-shadow .15s;text-align:left;font-family:inherit;font-size:.75rem;color:var(--ink)}.theme-card:hover:not(:disabled){border-color:#999}.theme-card--active{border-color:var(--accent);box-shadow:0 0 0 2px rgba(168,35,42,.15)}.theme-card:disabled{opacity:.45;cursor:default}.theme-card-preview{width:32px;height:40px;border-radius:3px;border:1px solid #ddd;flex-shrink:0}.theme-card-preview--classic{background:linear-gradient(135deg,#fff 60%,#f0e8e4);border-color:#bbb}.theme-card-preview--modern{background:linear-gradient(135deg,#e8edf5 30%,#d0dae8);border-color:#b0bec5}.theme-card-preview--minimal{background:#fafafa;border-color:#ccc}.theme-card-label{font-weight:600}.profile-radios{display:flex;flex-direction:column;gap:.35rem}.profile-radio{display:flex;align-items:center;gap:.4rem;cursor:pointer;font-size:.8rem;color:var(--ink);padding:.2rem 0}.profile-radio input[type=radio]{accent-color:var(--accent);margin:0}.role-input-group{display:flex;flex-direction:column;gap:.4rem}.role-input{border:1px solid #ccc;border-radius:4px;padding:.4rem .5rem;font-size:.8rem;font-family:inherit;color:var(--ink);background:#fff;outline:none;transition:border-color .15s}.role-input:focus{border-color:var(--accent)}.role-input::placeholder{color:#999}.role-description-input{border:1px solid #ccc;border-radius:4px;padding:.4rem .5rem;font-size:.75rem;font-family:inherit;color:var(--ink);background:#fff;outline:none;resize:vertical;min-height:60px;max-height:150px;transition:border-color .15s}.role-description-input:focus{border-color:var(--accent)}.role-description-input::placeholder{color:#999}.role-match-btn{border:1px solid var(--accent);background:var(--accent);color:#fff;padding:.35rem .7rem;border-radius:4px;font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;font-family:inherit;transition:opacity .15s}.role-match-btn:hover:not(:disabled){opacity:.85}.role-match-btn:disabled{opacity:.5;cursor:default}.matched-tags-info{font-size:.7rem;color:#666;margin-top:.3rem;font-style:italic}.download-btn{width:100%;border:1px solid var(--ink);background:var(--ink);color:#fff;padding:.45rem .7rem;border-radius:4px;font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;font-family:inherit;transition:opacity .15s}.download-btn:hover{opacity:.85}.compact .entry-details,.compact .entry-subtitle,.compact .summary{display:none}@media (max-width:1100px){.viewer-layout{grid-template-columns:1fr}.viewer-sidebar{position:static;height:auto;border:none}.viewer-sidebar-left{border-right:none;border-bottom:1px solid #ddd}.viewer-sidebar-right{border-left:none;border-top:1px solid #ddd}.viewer-sidebar-left .theme-cards{flex-direction:row}.viewer-sidebar-right .sidebar-section{margin-bottom:1rem}.profile-radios{flex-direction:row;flex-wrap:wrap;gap:.5rem 1rem}}@media (max-width:760px){.tailor-bar .tailor-field,.tailor-bar button,.tailor-bar select{min-height:44px;font-size:16px;flex-basis:100%}.main{padding:.5rem}.sheet{padding:1.2rem 1rem}.header-module{grid-template-columns:1fr}.header-aside{flex-direction:row;align-items:flex-end;justify-content:space-between}.headshot-frame{width:100px}.entry-topline{flex-direction:column;gap:.1rem}.entry-right{text-align:left}.contact-list{grid-template-columns:1fr}}[data-theme=modern]{--accent:#0f6faa;--ink-soft:#404040;--ink-muted:#666;font-family:Manrope,Segoe UI,sans-serif}[data-theme=modern] .name{font-weight:700;letter-spacing:-.02em;color:#0f6faa}[data-theme=modern] .section-title{font-size:11pt;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:#0f6faa;border-bottom:2px solid #0f6faa;padding-bottom:.15rem}[data-theme=modern] .projects-list li:before,[data-theme=modern] .stack-bullets li:before{content:"\2022";color:#0f6faa}[data-theme=modern] .entry-subtitle,[data-theme=modern] .projects-list li,[data-theme=modern] .stack-bullets li{font-style:normal}[data-theme=modern] .summary{font-style:normal;font-weight:500;border-left:3px solid #0f6faa;padding-left:.6rem}[data-theme=modern] .headshot-frame{border-radius:0}[data-theme=modern] .contact-icon svg{fill:#0f6faa}[data-theme=modern] .project-name a{color:#0f6faa}.main:has([data-theme=card]){background:#f0eeeb;padding:0}[data-theme=card]{--accent:#2d6a4f;--ink-soft:#404040;--ink-muted:#666;font-family:Inter,Manrope,sans-serif;width:100%;max-width:720px;margin:0 auto;background:transparent;box-shadow:none;padding:2rem 1rem;display:flex;flex-direction:column;gap:1.2rem}[data-theme=card] .header-module{padding:1.5rem}[data-theme=card] .header-module,[data-theme=card] .resume-section{background:#fff;border-radius:12px;box-shadow:0 2px 12px rgba(0,0,0,.06)}[data-theme=card] .resume-section{padding:1.25rem 1.5rem;margin-top:0}[data-theme=card] .name{font-family:Inter,sans-serif;font-weight:800;font-size:24pt;color:#1a1a1a}[data-theme=card] .section-title{font-family:Inter,sans-serif;font-size:10pt;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#2d6a4f;border-bottom:none;padding-bottom:.3rem;margin-bottom:.5rem;position:relative}[data-theme=card] .section-title:after{content:"";position:absolute;bottom:0;left:0;width:40px;height:3px;background:#2d6a4f;border-radius:2px}[data-theme=card] .summary{font-style:normal;font-weight:400;color:var(--ink-soft);line-height:1.6}[data-theme=card] .headshot-frame{border-radius:12px}[data-theme=card] .entry-subtitle,[data-theme=card] .projects-list li,[data-theme=card] .stack-bullets li{font-style:normal}[data-theme=card] .projects-list li:before,[data-theme=card] .stack-bullets li:before{content:"\2022";color:#2d6a4f}[data-theme=card] .contact-icon svg{fill:#2d6a4f}[data-theme=card] .project-name a{color:#2d6a4f}[data-theme=card] .entry-title{font-family:Inter,sans-serif}[data-theme=card] .skill-row{font-size:10pt}.main:has([data-theme=dark]){background:#111;padding:0}[data-theme=dark]{--paper:#1a1a2e;--ink:#e8e8e8;--ink-soft:#b0b0b0;--ink-muted:#888;--accent:#e94560;font-family:Inter,Manrope,sans-serif;width:100%;max-width:760px;margin:0 auto;background:transparent;box-shadow:none;padding:2.5rem 1.5rem;color:#e8e8e8}[data-theme=dark] .name{font-family:Inter,sans-serif;font-weight:800;font-size:28pt;color:#fff;letter-spacing:-.02em}[data-theme=dark] .contact-list{flex-direction:row;flex-wrap:wrap;gap:.3rem 1rem}[data-theme=dark] .contact-line,[data-theme=dark] .contact-value,[data-theme=dark] a.contact-value{color:#b0b0b0}[data-theme=dark] .contact-value:hover,[data-theme=dark] a.contact-value:hover{color:#e94560}[data-theme=dark] .summary{font-style:normal;font-weight:400;color:#b0b0b0;border-left:3px solid #e94560;padding-left:.8rem;line-height:1.6}[data-theme=dark] .section-title{font-family:Inter,sans-serif;font-size:11pt;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:#e94560;border-bottom:1px solid rgba(233,69,96,.3);padding-bottom:.3rem;margin-bottom:.6rem}[data-theme=dark] .resume-section{margin-top:1.5rem;padding-bottom:.5rem}[data-theme=dark] .entry-title{font-family:Inter,sans-serif;color:#fff}[data-theme=dark] .entry-company,[data-theme=dark] .entry-right{color:#888}[data-theme=dark] .projects-list li,[data-theme=dark] .stack-bullets li{font-style:normal;color:#b0b0b0}[data-theme=dark] .projects-list li:before,[data-theme=dark] .stack-bullets li:before{content:"\2022";color:#e94560}[data-theme=dark] .entry-subtitle{font-style:normal;color:#888}[data-theme=dark] .headshot-frame{border-radius:50%;border:3px solid #e94560}[data-theme=dark] .contact-icon svg{fill:#e94560}[data-theme=dark] .project-name{color:#fff}[data-theme=dark] .project-name a{color:#e94560}[data-theme=dark] .skill-category{color:#fff}[data-theme=dark] .skill-items{color:#b0b0b0}[data-theme=dark] .skill-row{font-size:10pt}[data-theme=dark] .edu-detail{color:#888}@page{size:letter;margin:.5in .787in}@media print{body{background:#fff;font-family:Fira Sans,sans-serif;font-size:10pt;line-height:1.25;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;margin:0;padding:0}a{color:inherit;text-decoration:none}.main{padding:0;min-height:auto}.sheet{width:100%;box-shadow:none;padding:0}.header-aside .button,.header-controls,.profile-dropdown,.profile-label,.profile-selector,.toolbar,.viewer-sidebar{display:none!important}.viewer-layout{display:block;background:#fff;min-height:auto}.header-module{display:grid;grid-template-columns:auto 1fr;align-items:start;grid-gap:.8rem;gap:.8rem}.header-module:not(:has(.header-aside)){grid-template-columns:1fr}.header-aside{align-items:flex-start}.name{font-family:Fira Sans,sans-serif;font-size:25pt;font-weight:700;line-height:1.1}.contact-list{display:grid;grid-template-columns:1fr 1fr;margin-top:.5em;grid-gap:.2em 1.5rem;gap:.2em 1.5rem}.contact-line{font-size:9pt;gap:.4rem}.contact-icon{width:1.8em}.contact-icon svg{width:12px;height:12px;fill:#b6073f}.contact-value,a.contact-value{color:var(--ink)}.summary{font-family:Fira Sans,sans-serif;font-size:9pt;font-weight:700;font-style:normal;margin-top:.5em;line-height:1.3}.resume-section{margin-top:1em}.section-title{font-family:Fira Sans,sans-serif;font-size:14.4pt;font-weight:700;color:var(--ink);border-bottom:none;padding-bottom:6pt;margin-bottom:6pt;position:relative}.section-title:after{content:"";position:absolute;bottom:0;left:0;width:12cm;height:2.5pt;background:linear-gradient(90deg,rgba(122,29,10,.6),transparent)}.entry{page-break-inside:avoid;break-inside:avoid;margin-top:.3em}.entry+.entry{margin-top:.5em}.entry-topline{gap:.3rem}.entry-title{font-family:Fira Sans,sans-serif;font-size:12pt;font-weight:700}.entry-right{color:var(--ink)}.entry-right,.entry-subtitle{font-family:Fira Sans,sans-serif;font-size:9pt}.entry-subtitle{font-style:italic;margin-top:.1em;line-height:1.25;color:var(--ink-soft)}.entry-details{margin-top:.15em}.stack-bullets{gap:0;padding-left:1.5em}.stack-bullets li{font-family:Fira Sans,sans-serif;font-size:9pt;line-height:1.3;font-style:italic;color:var(--ink-soft);margin-top:.25em}.stack-bullets li:first-child{margin-top:0}.stack-bullets li:before{content:"\f0da";font-family:Fira Sans,sans-serif;content:"\2022";font-size:8pt;left:-1.1rem;color:#922d3e;font-style:normal}.projects-list{padding-left:1.5em;gap:0}.projects-list li{font-family:Fira Sans,sans-serif;font-size:9pt;line-height:1.3;font-style:italic;color:var(--ink-soft);margin-top:.25em}.projects-list li:first-child{margin-top:0}.projects-list li:before{font-size:8pt;left:-1.1rem;color:#922d3e;font-style:normal}.project-name{font-weight:700;color:#922d3e}.project-name a{color:#922d3e}.skills-block{margin-top:.3em;gap:.3em}.skill-row{font-family:Fira Sans,sans-serif;font-size:9pt;line-height:1.25}.skill-category{font-weight:700}.skill-items{color:var(--ink-soft)}.edu-detail{font-size:9pt;font-style:italic;color:var(--ink-muted)}.section-title{page-break-after:avoid;break-after:avoid}.resume-section[data-module=education],.resume-section[data-module=projects],.resume-section[data-module=skills]{page-break-inside:avoid;break-inside:avoid}}.print-preview{background:#fff;font-family:Fira Sans,sans-serif;font-size:10pt;line-height:1.25;& a{color:inherit;text-decoration:none}& .main{padding:0;min-height:auto}& .sheet{width:100%;box-shadow:none;padding:0}& .header-aside .button,& .profile-dropdown,& .profile-label,& .profile-selector,& .toolbar,& .viewer-sidebar{display:none!important}& .viewer-layout{display:block;background:#fff;min-height:auto}& .header-module{display:grid;grid-template-columns:auto 1fr;align-items:start;grid-gap:.8rem;gap:.8rem}& .header-module:not(:has(.header-aside)){grid-template-columns:1fr}& .header-aside{align-items:flex-start}& .header-controls{display:none!important}& .name{font-family:Fira Sans,sans-serif;font-size:25pt;font-weight:700;line-height:1.1}& .contact-list{display:grid;grid-template-columns:1fr 1fr;margin-top:.5em;grid-gap:.2em 1.5rem;gap:.2em 1.5rem}& .contact-line{font-size:9pt;gap:.4rem}& .contact-icon{width:1.8em}& .contact-icon svg{width:12px;height:12px;fill:#b6073f}& .contact-value,& a.contact-value{color:var(--ink)}& .summary{font-family:Fira Sans,sans-serif;font-size:9pt;font-weight:700;font-style:normal;margin-top:.5em;line-height:1.3}& .resume-section{margin-top:1em}& .section-title{font-family:Fira Sans,sans-serif;font-size:14.4pt;font-weight:700;color:var(--ink);border-bottom:none;padding-bottom:6pt;margin-bottom:6pt;position:relative}& .section-title:after{content:"";position:absolute;bottom:0;left:0;width:12cm;height:2.5pt;background:linear-gradient(90deg,rgba(122,29,10,.6),transparent)}& .entry{margin-top:.3em}& .entry+.entry{margin-top:.5em}& .entry-topline{gap:.3rem}& .entry-title{font-family:Fira Sans,sans-serif;font-size:12pt;font-weight:700}& .entry-right{color:var(--ink)}& .entry-right,& .entry-subtitle{font-family:Fira Sans,sans-serif;font-size:9pt}& .entry-subtitle{font-style:italic;margin-top:.1em;line-height:1.25;color:var(--ink-soft)}& .entry-details{margin-top:.15em}& .stack-bullets{gap:0;padding-left:1.5em}& .stack-bullets li{font-family:Fira Sans,sans-serif;font-size:9pt;line-height:1.3;font-style:italic;color:var(--ink-soft);margin-top:.25em}& .stack-bullets li:first-child{margin-top:0}& .stack-bullets li:before{font-family:Fira Sans,sans-serif;content:"\2022";font-size:8pt;left:-1.1rem;color:#922d3e;font-style:normal}& .projects-list{padding-left:1.5em;gap:0}& .projects-list li{font-family:Fira Sans,sans-serif;font-size:9pt;line-height:1.3;font-style:italic;color:var(--ink-soft);margin-top:.25em}& .projects-list li:first-child{margin-top:0}& .projects-list li:before{font-size:8pt;left:-1.1rem;color:#922d3e;font-style:normal}& .project-name{font-weight:700;color:#922d3e}& .project-name a{color:#922d3e}& .skills-block{margin-top:.3em;gap:.3em}& .skill-row{font-family:Fira Sans,sans-serif;font-size:9pt;line-height:1.25}& .skill-category{font-weight:700}& .skill-items{color:var(--ink-soft)}& .edu-detail{font-size:9pt;font-style:italic;color:var(--ink-muted)}& .resume-section[data-module=education],& .resume-section[data-module=projects],& .resume-section[data-module=skills]{page-break-inside:avoid;break-inside:avoid}& [data-theme=modern] .name{font-family:Fira Sans,sans-serif;color:#0f6faa;font-weight:700;letter-spacing:-.02em}& [data-theme=modern] .section-title{font-family:Fira Sans,sans-serif;font-size:10pt;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:#0f6faa;border-bottom:2px solid #0f6faa;padding-bottom:3pt;margin-bottom:6pt}& [data-theme=modern] .section-title:after{display:none}& [data-theme=modern] .summary{font-style:normal;font-weight:500;border-left:3px solid #0f6faa;padding-left:.6rem}& [data-theme=modern] .projects-list li:before,& [data-theme=modern] .stack-bullets li:before{content:"\2022";color:#0f6faa}& [data-theme=modern] .entry-subtitle,& [data-theme=modern] .projects-list li,& [data-theme=modern] .stack-bullets li{font-style:normal}& [data-theme=modern] .contact-icon svg{fill:#0f6faa!important}& [data-theme=modern] .project-name,& [data-theme=modern] .project-name a{color:#0f6faa}& [data-theme=modern] .headshot-frame{border-radius:0}& [data-theme=card] .section-title:after,& [data-theme=dark] .section-title:after{display:none}& [data-theme=card] .section-title,& [data-theme=dark] .section-title{font-family:Fira Sans,sans-serif;font-size:10pt;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:#0f6faa;border-bottom:2px solid #0f6faa;padding-bottom:3pt;margin-bottom:6pt}& [data-theme=card] .name,& [data-theme=dark] .name{font-family:Fira Sans,sans-serif;color:#0f6faa;font-weight:700}& [data-theme=card] .summary,& [data-theme=dark] .summary{font-style:normal;font-weight:500}& [data-theme=card] .projects-list li:before,& [data-theme=card] .stack-bullets li:before,& [data-theme=dark] .projects-list li:before,& [data-theme=dark] .stack-bullets li:before{content:"\2022";color:#0f6faa}& [data-theme=card] .entry-subtitle,& [data-theme=card] .projects-list li,& [data-theme=card] .stack-bullets li,& [data-theme=dark] .entry-subtitle,& [data-theme=dark] .projects-list li,& [data-theme=dark] .stack-bullets li{font-style:normal;color:var(--ink-soft)}& [data-theme=card] .contact-icon svg,& [data-theme=dark] .contact-icon svg{fill:#0f6faa!important}& [data-theme=card] .project-name,& [data-theme=card] .project-name a,& [data-theme=dark] .project-name,& [data-theme=dark] .project-name a{color:#0f6faa}& [data-theme=card] .headshot-frame{border-radius:12px}& [data-theme=dark] .headshot-frame{border-radius:50%}}@media print{.sheet[data-theme=dark]{padding:.3in .35in}.main:has([data-theme=card]){background:#fff}[data-theme=card] .entry,[data-theme=card] .header-module{break-inside:avoid;page-break-inside:avoid}[data-theme=card] .header-module,[data-theme=card] .resume-section{box-shadow:none;border:1px solid #e4e4e4}}.print-preview .sheet[data-theme=dark]{padding:.3in .35in}.print-preview .main:has([data-theme=card]){background:#fff}.print-preview [data-theme=card] .entry,.print-preview [data-theme=card] .header-module{break-inside:avoid;page-break-inside:avoid}.print-preview [data-theme=card] .header-module,.print-preview [data-theme=card] .resume-section{box-shadow:none;border:1px solid #e4e4e4}[data-theme=editorial]{--accent:#1a1a1a;font-family:EB Garamond,Georgia,serif;font-size:11pt}[data-theme=editorial] .name{font-family:EB Garamond,Georgia,serif;font-weight:600;font-size:26pt;letter-spacing:.01em}[data-theme=editorial] .section-title{font-feature-settings:"smcp";font-variant:small-caps;text-transform:lowercase;font-size:13pt;font-weight:600;letter-spacing:.14em;border-bottom:1px solid #1a1a1a;padding-bottom:.1rem}[data-theme=editorial] .summary{font-style:italic}[data-theme=editorial] .stack-bullets li:before{content:"–";color:#1a1a1a}[data-theme=editorial] .headshot-frame{border-radius:0}[data-theme=editorial] .skill-level i{border-radius:0;width:6px;height:3px}[data-theme=typewriter]{--accent:#3d3a34;--ink:#2b2925;font-family:Special Elite,Courier New,monospace;font-size:10pt}[data-theme=typewriter] .name{font-family:Special Elite,monospace;font-size:22pt;font-weight:400}[data-theme=typewriter] .section-title{font-size:12pt;text-transform:uppercase;letter-spacing:.1em;border-bottom:2px dashed #3d3a34;padding-bottom:.15rem}[data-theme=typewriter] .stack-bullets li:before{content:"*"}[data-theme=typewriter] .summary{font-style:normal}[data-theme=typewriter] .headshot-frame{border-radius:0;filter:grayscale(1) contrast(1.05)}[data-theme=typewriter] .skill-level{display:none}[data-theme=poster]{--accent:#d97706;font-family:Inter,sans-serif}[data-theme=poster] .name{font-family:Bebas Neue,Antonio,sans-serif;font-size:34pt;letter-spacing:.02em;line-height:.95}[data-theme=poster] .section-title{font-family:Bebas Neue,Antonio,sans-serif;font-size:14pt;letter-spacing:.06em;color:#d97706}[data-theme=poster] .stack-bullets li:before{content:"\2013";color:#d97706}[data-theme=poster] .summary{border-left:4px solid #d97706;padding-left:.6rem;font-style:normal}[data-theme=poster] .skill-level i{width:12px;height:4px;border-radius:1px}[data-theme=slate]{--accent:#44566b;--ink-soft:#3c4756;font-family:Fira Sans,sans-serif;font-size:10pt}[data-theme=slate] .name{font-family:Antonio,sans-serif;font-weight:600;font-size:27pt;color:#2c3a4a;letter-spacing:.01em}[data-theme=slate] .section-title{font-family:Antonio,sans-serif;font-weight:500;font-size:12.5pt;text-transform:uppercase;letter-spacing:.08em;color:#44566b;border-bottom:1px solid #b6c0cc}[data-theme=slate] .stack-bullets li:before{content:"\25AA";color:#44566b}[data-theme=slate] .skill-level i{width:10px;height:4px;border-radius:1px}[data-theme=terracotta]{--accent:#b3532e;font-family:Manrope,sans-serif}[data-theme=terracotta] .name{font-weight:800;color:#b3532e;letter-spacing:-.01em}[data-theme=terracotta] .section-title{font-weight:700;font-size:11pt;text-transform:uppercase;letter-spacing:.1em;color:#b3532e;border-bottom:2px solid #ead5cb}[data-theme=terracotta] .stack-bullets li:before{content:"\2022";color:#b3532e}[data-theme=terracotta] .headshot-frame{border-radius:50%}[data-theme=terracotta] .summary{background:#faf3ef;padding:.5rem .7rem;border-radius:6px;font-style:normal}[data-theme=forest]{--accent:#1b4332;font-family:Fira Sans,sans-serif;font-size:10pt}[data-theme=forest] .name{font-family:EB Garamond,serif;font-weight:600;font-size:25pt;color:#1b4332}[data-theme=forest] .section-title{font-family:EB Garamond,serif;font-weight:600;font-size:13pt;color:#1b4332;border-bottom:1px solid #1b4332}[data-theme=forest] .stack-bullets li:before{content:"\2022";color:#1b4332}[data-theme=forest] .summary{font-style:italic;color:#33473d}[data-theme=plum]{--accent:#703d78;font-family:Inter,sans-serif;font-size:10pt}[data-theme=plum] .name{font-weight:700;color:#4c2952;letter-spacing:-.015em}[data-theme=plum] .section-title{font-weight:600;font-size:10.5pt;text-transform:uppercase;letter-spacing:.14em;color:#703d78}[data-theme=plum] .stack-bullets li:before{content:"\2013";color:#703d78}[data-theme=plum] .summary{border-left:3px solid #d9c3dd;padding-left:.6rem;font-style:normal}[data-theme=mono]{--accent:#0a3069;font-family:SF Mono,Fira Code,Courier New,monospace;font-size:9.5pt;line-height:1.5}[data-theme=mono] .name{font-size:18pt;font-weight:700;letter-spacing:-.02em}[data-theme=mono] .section-title{font-size:10.5pt;font-weight:700}[data-theme=mono] .section-title:before{content:"## ";color:#0a3069}[data-theme=mono] .stack-bullets li:before{content:"-"}[data-theme=mono] .summary{font-style:normal}[data-theme=mono] .headshot-frame{display:none}[data-theme=mono] .skill-level i{width:7px;height:7px;border-radius:0}[data-theme=banner]{--accent:#155e75;font-family:Manrope,sans-serif;padding-top:0}[data-theme=banner] .header-module{background:#155e75;color:#fff;margin:-.55in -.6in .7rem;padding:.45in .6in .4in}[data-theme=banner] .name{color:#fff;font-weight:800}[data-theme=banner] .contact-line,[data-theme=banner] .contact-value,[data-theme=banner] a.contact-value{color:#d3e7ee}[data-theme=banner] .contact-icon svg{fill:#9fc6d3}[data-theme=banner] .section-title{font-weight:700;font-size:11pt;text-transform:uppercase;letter-spacing:.1em;color:#155e75;border-bottom:2px solid #155e75}[data-theme=banner] .stack-bullets li:before{content:"\2022";color:#155e75}[data-theme=banner] .skill-level i{width:11px;height:4px;border-radius:2px}[data-theme=ledger]{--accent:#6d1a1a;font-family:Fira Sans,sans-serif;font-size:10pt}[data-theme=ledger] .name{font-weight:700;color:#2b2b2b}[data-theme=ledger] .resume-section{border-left:4px solid #6d1a1a;padding-left:.7rem}[data-theme=ledger] .section-title{font-weight:700;font-size:10.5pt;text-transform:uppercase;letter-spacing:.1em;color:#6d1a1a;border-bottom:none}[data-theme=ledger] .stack-bullets li:before{content:"\2013";color:#6d1a1a}.main:has([data-theme=midnight]){background:#0a0f1c}[data-theme=midnight]{--paper:#101828;--ink:#e6eaf2;--ink-soft:#b6bfce;--ink-muted:#8591a5;--line:#2a3550;--line-light:#24304a;--accent:#38bdf8;font-family:Inter,sans-serif;background:#101828;color:#e6eaf2;box-shadow:none}[data-theme=midnight] .name{color:#fff;font-weight:800;letter-spacing:-.02em}[data-theme=midnight] .section-title{color:#38bdf8;font-weight:700;font-size:10.5pt;text-transform:uppercase;letter-spacing:.12em;border-bottom:1px solid #2a3550}[data-theme=midnight] .contact-line,[data-theme=midnight] .contact-value,[data-theme=midnight] a.contact-value{color:#b6bfce}[data-theme=midnight] .contact-icon svg{fill:#38bdf8}[data-theme=midnight] .entry-title{color:#e6eaf2}[data-theme=midnight] .stack-bullets li:before{content:"\2022";color:#38bdf8}[data-theme=midnight] .summary{color:#b6bfce;font-style:normal}[data-theme=midnight] .skill-level i{background:#24304a}[data-theme=midnight] .skill-level i.on{background:#38bdf8}[data-theme=blush]{--accent:#b0486b;font-family:Manrope,sans-serif}[data-theme=blush] .name{font-weight:700;color:#963a59}[data-theme=blush] .section-title{font-weight:600;font-size:10.5pt;letter-spacing:.12em;text-transform:uppercase;color:#b0486b;border-bottom:1px solid #ecd2db}[data-theme=blush] .stack-bullets li:before{content:"\2022";color:#d391a8}[data-theme=blush] .headshot-frame{border-radius:50%}[data-theme=blush] .summary{font-style:normal;color:#5c4a51}[data-theme=brand]{--accent:#a8232a;font-family:Manrope,sans-serif}[data-theme=brand] .name{font-weight:800;letter-spacing:-.02em}[data-theme=brand] .section-title{display:inline-block;background:#a8232a;color:#fff;font-size:9.5pt;font-weight:700;text-transform:uppercase;letter-spacing:.09em;padding:.14rem .55rem .18rem;border-radius:4px;transform:rotate(-.6deg);border-bottom:none}[data-theme=brand] .stack-bullets li:before{content:"\2022";color:#a8232a}[data-theme=brand] .summary{border-left:3px solid #a8232a;padding-left:.6rem;font-style:normal}[data-theme=brand] .skill-level i{width:10px;height:4px;border-radius:2px}[data-theme=gazette]{--accent:#111;font-family:EB Garamond,Georgia,serif;font-size:10.5pt}[data-theme=gazette] .name{font-family:Ultra,EB Garamond,serif;font-weight:400;font-size:24pt;letter-spacing:.005em}[data-theme=gazette] .section-title{font-family:Inter,sans-serif;font-size:9.5pt;font-weight:700;text-transform:uppercase;letter-spacing:.18em;border-top:3px double #111;border-bottom:1px solid #111;padding:.12rem 0}[data-theme=gazette] .stack-bullets li:before{content:"\00a7";color:#555}[data-theme=gazette] .headshot-frame{border-radius:0;filter:grayscale(1)}[data-theme=gazette] .skill-level{display:none}[data-theme=script]{--accent:#375f4b;font-family:Inter,sans-serif;font-size:10pt}[data-theme=script] .name{font-family:Caveat,cursive;font-size:32pt;font-weight:600;color:#375f4b}[data-theme=script] .section-title{font-family:Caveat,cursive;font-size:17pt;font-weight:600;color:#375f4b;text-transform:none;letter-spacing:0;border-bottom:1px solid #c9d8d0}[data-theme=script] .stack-bullets li:before{content:"\2022";color:#375f4b}[data-theme=script] .summary{font-style:normal}[data-theme=timeline]{--accent:#0e7490;font-family:Inter,sans-serif;font-size:10pt}[data-theme=timeline] .name{font-weight:800;color:#155e6b;letter-spacing:-.02em}[data-theme=timeline] .section-title{font-weight:700;font-size:10.5pt;text-transform:uppercase;letter-spacing:.12em;color:#0e7490}[data-theme=timeline] .entry{position:relative;padding-left:1.1rem;border-left:2px solid #cde5eb;margin-left:.3rem}[data-theme=timeline] .entry:before{content:"";position:absolute;left:-6px;top:.32rem;width:10px;height:10px;border-radius:50%;background:#0e7490;border:2px solid #fff}[data-theme=timeline] .stack-bullets li:before{content:"\2022";color:#0e7490}[data-theme=timeline] .skill-level i{width:10px;height:4px;border-radius:2px}[data-theme=centered]{--accent:#8a6d3b;font-family:EB Garamond,Georgia,serif;font-size:10.5pt}[data-theme=centered] .header-module{display:block;text-align:center}[data-theme=centered] .headshot-frame{margin:0 auto .5rem;border-radius:50%}[data-theme=centered] .name{font-weight:500;font-size:24pt;letter-spacing:.22em;text-transform:uppercase}[data-theme=centered] .contact-list{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:.3rem 1.1rem}[data-theme=centered] .section-title{text-align:center;font-size:11pt;font-weight:500;text-transform:uppercase;letter-spacing:.3em;color:#8a6d3b;border-bottom:none}[data-theme=centered] .section-title:after{content:"";display:block;width:46px;height:1px;background:#8a6d3b;margin:.3rem auto 0}[data-theme=centered] .stack-bullets li:before{content:"\2022";color:#8a6d3b}[data-theme=rail]{--accent:#4338ca;font-family:Manrope,sans-serif;border-left:14px solid #4338ca;padding-left:.55in}[data-theme=rail] .name{font-weight:800;color:#312e81;letter-spacing:-.02em}[data-theme=rail] .section-title{font-weight:700;font-size:10.5pt;text-transform:uppercase;letter-spacing:.1em;color:#4338ca;border-bottom:2px solid #e2e0f7}[data-theme=rail] .stack-bullets li:before{content:"\2022";color:#4338ca}[data-theme=rail] .skill-level i{width:11px;height:4px;border-radius:2px}[data-theme=duotone]{--accent:#0f766e;font-family:Inter,sans-serif;padding-top:0}[data-theme=duotone] .header-module{background:#134e4a;color:#fff;margin:-.55in -.6in .8rem;padding:.4in .6in .35in;border-bottom:6px solid #2dd4bf}[data-theme=duotone] .name{color:#fff;font-weight:800}[data-theme=duotone] .contact-line,[data-theme=duotone] .contact-value,[data-theme=duotone] a.contact-value{color:#bfe8e3}[data-theme=duotone] .contact-icon svg{fill:#2dd4bf}[data-theme=duotone] .section-title{display:inline-block;font-weight:700;font-size:10pt;text-transform:uppercase;letter-spacing:.1em;color:#134e4a;border-bottom:3px solid #2dd4bf;padding-bottom:.1rem}[data-theme=duotone] .stack-bullets li:before{content:"\2022";color:#0f766e}[data-theme=duotone] .skill-level i{width:10px;height:4px;border-radius:2px}[data-theme=monogram]{--accent:#7c2d12;font-family:Fira Sans,sans-serif;font-size:10pt}[data-theme=monogram] .name{font-weight:700;color:#7c2d12}[data-theme=monogram] .name:first-letter{font-size:1.6em;font-family:EB Garamond,serif}[data-theme=monogram] .headshot-frame{border-radius:50%;border:3px solid #7c2d12}[data-theme=monogram] .section-title{font-weight:600;font-size:10.5pt;letter-spacing:.16em;text-transform:uppercase;color:#7c2d12;border-bottom:1px dotted #c9a08c}[data-theme=monogram] .stack-bullets li:before{content:"\25E6";color:#7c2d12}[data-theme=panels]{--accent:#1d4ed8;font-family:Manrope,sans-serif;font-size:10pt;background:#fff}[data-theme=panels] .resume-section{background:#f4f7ff;border-radius:10px;padding:.55rem .7rem}[data-theme=panels] .section-title{font-weight:800;font-size:10pt;text-transform:uppercase;letter-spacing:.09em;color:#1d4ed8;border-bottom:none}[data-theme=panels] .name{font-weight:800;color:#1e3a8a}[data-theme=panels] .stack-bullets li:before{content:"\2022";color:#1d4ed8}[data-theme=panels] .skill-level i{width:10px;height:4px;border-radius:2px}[data-theme=marker]{--accent:#ca8a04;font-family:Inter,sans-serif}[data-theme=marker] .name{font-weight:800;letter-spacing:-.02em}[data-theme=marker] .section-title{display:inline-block;font-weight:800;font-size:10.5pt;text-transform:uppercase;letter-spacing:.07em;border-bottom:none;background:linear-gradient(transparent 55%,#fde68a 0,#fde68a 92%,transparent 0);padding:0 .2rem}[data-theme=marker] .stack-bullets li:before{content:"\2022";color:#ca8a04}[data-theme=marker] .summary{background:#fefce8;padding:.5rem .7rem;border-radius:6px;font-style:normal}[data-theme=compact]{--accent:#334155;font-family:Inter,sans-serif;font-size:9pt;line-height:1.35}[data-theme=compact] .name{font-size:19pt;font-weight:800;letter-spacing:-.02em}[data-theme=compact] .section-title{font-size:9pt;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:#fff;background:#334155;display:inline-block;padding:.1rem .5rem;border-radius:3px;border-bottom:none}[data-theme=compact] .stack-bullets li:before{content:"\2022";color:#334155}[data-theme=compact] .skill-level{display:none}.sheet--sidebar .sheet-cols{display:grid;grid-template-columns:calc((100% - var(--col-gap)) * var(--side-frac)) 1fr;grid-column-gap:var(--col-gap);column-gap:var(--col-gap)}.sheet--sidebar .sheet-band{margin-bottom:.24in}.sheet--sidebar .sheet-side{background:var(--rail-fill);padding:14px 16px 18px;min-width:0}.sheet--sidebar .sheet-maincol{min-width:0}.sheet--sidebar .sheet-side .resume-section{margin-bottom:.9rem}.sheet--sidebar .sheet-side .header-module{display:block;margin-bottom:.8rem}.sheet--sidebar .sheet-side .header-module .header-aside{margin:0 auto .6rem;display:flex;justify-content:center}.sheet--sidebar .sheet-side .contact-list{grid-template-columns:1fr}.sheet--sidebar .sheet-side .name{font-size:17pt}.sheet--sidebar .sheet-side .summary{font-size:9pt}[data-theme=split]{--accent:#31506e;font-family:Inter,sans-serif;font-size:9.5pt;line-height:1.42}[data-theme=split] .name{font-size:22pt;font-weight:800;letter-spacing:-.02em;color:#1d3349}[data-theme=split] .section-title{font-size:9.5pt;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:#31506e;border-bottom:2px solid #31506e;padding-bottom:.15rem}[data-theme=split] .sheet-side .section-title{border-bottom-color:#c3ced9}[data-theme=split] .entry-title{color:#1d3349}[data-theme=split] .stack-bullets li:before{content:"\2022";color:#31506e}[data-theme=split] .summary{border-left:3px solid #31506e;padding-left:.6rem}[data-theme=split] .sheet-side .skill-row{display:block}[data-theme=split] .sheet-side .skill-row .skill-category{display:block;margin-bottom:.1rem}[data-theme=split] .section-title:after{display:none}[data-theme=ivory]{--accent:#141414;font-family:Inter,sans-serif;font-size:9.5pt;line-height:1.45}[data-theme=ivory] .section-title:after{display:none}[data-theme=ivory] .name{font-family:Antonio,sans-serif;font-size:24pt;font-weight:700;text-transform:uppercase;letter-spacing:.02em;text-align:center}[data-theme=ivory] .sheet-side{padding-top:26px}[data-theme=ivory] .headshot-frame{border-radius:50%}[data-theme=ivory] .summary{text-align:center;font-size:8.5pt;color:#333}[data-theme=ivory] .contact-list{margin-top:.7rem;gap:.45rem 0}[data-theme=ivory] .contact-icon svg{fill:#141414}[data-theme=ivory] .section-title{font-family:Antonio,sans-serif;font-size:13pt;font-weight:700;text-transform:uppercase;letter-spacing:.04em;border-bottom:1.5px solid #141414;padding-bottom:.2rem}[data-theme=ivory] .sheet-side .section-title{font-size:11pt}[data-theme=ivory] .entry-title{font-weight:700}[data-theme=ivory] .stack-bullets li:before{content:"\2022";color:#141414}[data-theme=ivory] .sheet-side .skill-row{display:block;margin-bottom:.25rem}[data-theme=ivory] .sheet-side .skill-row .skill-category{display:block;font-weight:700}[data-theme=ivory] .skill-level{display:none}[data-theme=meadow]{--accent:#3d5c1f;font-family:Inter,sans-serif;font-size:9.5pt;line-height:1.45}[data-theme=meadow] .section-title:after{display:none}[data-theme=meadow] .sheet-side{padding-top:26px}[data-theme=meadow] .headshot-frame{transform:rotate(45deg);border:4px solid #79a83f;border-radius:4px;margin:18px auto 26px}[data-theme=meadow] .headshot-frame img{transform:rotate(-45deg) scale(1.45)}[data-theme=meadow] .name{font-weight:800;text-align:center;color:#1d2a12}[data-theme=meadow] .summary{color:#2c3a1e}[data-theme=meadow] .sheet-side .section-title{font-size:10.5pt;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#1d2a12;border-bottom:1.5px solid #3d5c1f;padding-bottom:.2rem}[data-theme=meadow] .sheet-maincol .section-title{font-family:Antonio,sans-serif;font-size:14pt;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#fff;background:#3d5c1f;padding:.3rem .7rem;border-bottom:none}[data-theme=meadow] .entry-title{color:#1d2a12}[data-theme=meadow] .stack-bullets li:before{content:"\2022";color:#3d5c1f}[data-theme=meadow] .contact-icon svg{fill:#3d5c1f}[data-theme=meadow] .skill-level{gap:0;margin-left:.5em}[data-theme=meadow] .skill-level i{width:18px;height:8px;border-radius:0;background:#e2e8d8}[data-theme=meadow] .skill-level i.on{background:#8cc63f}[data-theme=cobalt]{--accent:#46608a;font-family:Inter,sans-serif;font-size:9.5pt;line-height:1.45;padding-top:0}[data-theme=cobalt] .section-title:after{display:none}[data-theme=cobalt] .header-module{background:#3d5474;color:#fff;margin:-.55in -.6in .8rem;padding:.45in .6in .4in}.print-preview [data-theme=cobalt] .header-module{margin:0 0 .8rem;padding:.32in .38in .3in}[data-theme=cobalt] .header-module .header-aside{order:2!important}[data-theme=cobalt] .headshot-frame{border-radius:50%}[data-theme=cobalt] .name{color:#fff;font-weight:700;font-size:24pt}[data-theme=cobalt] .contact-list{grid-template-columns:1fr;gap:.1rem}[data-theme=cobalt] .contact-line,[data-theme=cobalt] .contact-value,[data-theme=cobalt] a.contact-value{color:#dbe4f0}[data-theme=cobalt] .contact-icon svg{fill:#aebfd8}[data-theme=cobalt] .summary{font-weight:600;color:#e8eef7}[data-theme=cobalt] .section-title{color:#46608a;font-size:14pt;font-weight:600;border-bottom:none;padding-bottom:0}[data-theme=cobalt] .entry{position:relative;padding-left:128px;min-height:1.2em}[data-theme=cobalt] .entry-right{position:absolute;left:0;top:.15em;width:118px;text-align:left;font-size:8.5pt;color:#5a6572;white-space:normal}[data-theme=cobalt] .entry-title{color:#1d2836}[data-theme=cobalt] .stack-bullets li:before{content:"\25C6";font-size:6px;color:#3d5474}[data-theme=cobalt] .skills-block{display:grid;grid-template-columns:1fr 1fr;grid-gap:.25rem 2.2rem;gap:.25rem 2.2rem}[data-theme=cobalt] .skill-row{display:flex;align-items:baseline;justify-content:space-between;gap:.6rem}[data-theme=cobalt] .skill-level{gap:0;margin-left:.4em}[data-theme=cobalt] .skill-level i{width:20px;height:8px;border-radius:0;background:#dfe5ee}[data-theme=cobalt] .skill-level i:first-child{border-radius:4px 0 0 4px}[data-theme=cobalt] .skill-level i:last-child{border-radius:0 4px 4px 0}[data-theme=cobalt] .skill-level i.on{background:#3d5474}.letter-head{border-bottom:1px solid var(--line,#ddd);padding-bottom:.5rem;margin-bottom:1.6rem}.letter-contact{font-size:9.5pt;color:var(--ink-soft,#555);margin-top:.2rem}.letter-date{font-size:10pt;margin-bottom:1.1rem}.letter-recipient{font-size:10pt;line-height:1.35;margin-bottom:1.2rem}.letter-re{font-weight:600}.letter-body p{margin:0 0 .85rem;line-height:1.5}.letter-body{font-size:10.5pt}.letter-signoff{margin-top:1.4rem!important;margin-bottom:.2rem!important}.letter-signature{font-weight:600}.letter-empty{color:var(--ink-soft,#777);font-style:italic}.letter-contact a{color:inherit}.letter-contact a,.letter-foot a{text-decoration:underline}.letter-foot{margin-top:1.8rem;padding-top:.5rem;border-top:1px solid var(--line,#ddd);font-size:9.5pt;text-align:center}[data-theme=banner] .letter-head,[data-theme=cobalt] .letter-head,[data-theme=duotone] .letter-head{background:var(--accent);color:#fff;margin:-.55in -.6in 1.4rem;padding:.4in .6in .35in;border-bottom:none}[data-theme=banner] .letter-head .name,[data-theme=cobalt] .letter-head .name,[data-theme=duotone] .letter-head .name{color:#fff}[data-theme=banner] .letter-contact,[data-theme=cobalt] .letter-contact,[data-theme=duotone] .letter-contact{color:#dbe4f0}.print-preview [data-theme=banner] .letter-head,.print-preview [data-theme=cobalt] .letter-head,.print-preview [data-theme=duotone] .letter-head{margin:0 0 1.4rem;padding:.32in .38in .3in}[data-theme=banner] .summary,[data-theme=duotone] .summary{color:#eef6f8}[data-theme=poster] .section-title{color:#a25a04}[data-theme=dark] .section-title{color:#63b3e8}[data-theme=dark] .entry-company{color:#a3a3a3}.sheet{color:var(--ink)}[data-theme=banner],[data-theme=blush],[data-theme=brand],[data-theme=card],[data-theme=dark],[data-theme=modern],[data-theme=panels],[data-theme=rail],[data-theme=terracotta]{font-feature-settings:none;font-variant-ligatures:none}html[data-appearance=dark]{color-scheme:dark}html[data-appearance=dark] body{background:#141416}.theme-switch{display:inline-flex;gap:4px;padding:3px;border-radius:999px;background:var(--bg-secondary,#f0f0f2)}.theme-switch-btn{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border:0;border-radius:999px;background:transparent;color:var(--text-secondary,#666);font:inherit;font-size:13px;cursor:pointer}.theme-switch-btn.active,.theme-switch-btn:hover{color:var(--text-primary,#1a1a1a)}.theme-switch-btn.active{background:var(--bg-primary,#fff);font-weight:600;box-shadow:0 1px 2px rgba(0,0,0,.12)}.app-nav-menu .theme-switch-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;font-size:12px;color:var(--text-secondary);border-top:1px solid var(--border-color)}html[data-appearance=dark] .apps-root{--border-color:#333338;--bg-primary:#1e1e21;--bg-secondary:#27272b;--text-primary:#d6d6da;--text-secondary:#9a9aa3;--accent:#7aa2f7;--accent-hover:#9bb8ff;--brand:#c4343c;--brand-hover:#d8474f;--error-bg:#2d1b1b;--error-text:#f08a8a;--ok:#4ade80;--warn:#fbbf24;--warn-text:#fbbf24}html[data-appearance=dark] .apps-root .apps-note{background:var(--bg-secondary)}html[data-appearance=dark] .apps-root input:not([type=checkbox]):not([type=radio]),html[data-appearance=dark] .apps-root select,html[data-appearance=dark] .apps-root textarea{background:var(--bg-secondary);color:var(--text-primary);border-color:var(--border-color)}html[data-appearance=dark] .apps-root .tour-card{background:#232327;color:var(--text-primary)}html[data-appearance=dark] .apps-root .cl-para-editor textarea,html[data-appearance=dark] .apps-root .cl-para-row{background:var(--bg-secondary);color:var(--text-primary)}html[data-appearance=dark] .page-soft{--soft-bg:#17171a;--soft-bg-deep:#1f1f23;--soft-card:#222226;--soft-ink:#e4e4e8;--soft-muted:#9a9aa3;--soft-line:hsla(0,0%,100%,.08);--soft-brand:#e0636b;--soft-brand-deep:#a8232a;--soft-brand-tint:rgba(224,99,107,.14);--soft-shadow:0 1px 2px rgba(0,0,0,.3),0 14px 36px -18px rgba(0,0,0,.7);--soft-shadow-hover:0 2px 4px rgba(0,0,0,.35),0 22px 44px -18px rgba(0,0,0,.8);background:radial-gradient(900px 420px at 8% -8%,rgba(224,99,107,.08),transparent 62%),radial-gradient(700px 360px at 100% 0,rgba(122,162,247,.06),transparent 60%),var(--soft-bg)}html[data-appearance=dark] .page-soft .home-cta{background:radial-gradient(520px 220px at 100% 0,hsla(0,0%,100%,.1),transparent 60%),linear-gradient(120deg,#a8232a,#6e1217);box-shadow:0 18px 40px -20px rgba(0,0,0,.8)}html[data-appearance=dark] .page-soft .home-cta-btn{background:#fff;color:#a8232a}html[data-appearance=dark] .page-soft .home-btn{background:var(--soft-bg-deep)}html[data-appearance=dark] .page-soft .home-btn:hover{background:#2a2a2f}html[data-appearance=dark] .page-soft .apps-primary{background:linear-gradient(120deg,#c4343c,#8f1c22);box-shadow:0 10px 22px -12px rgba(0,0,0,.8)}html[data-appearance=dark] .page-soft .apps-status{background:hsla(0,0%,100%,.08)}html[data-appearance=dark] .page-soft .apps-status-approved,html[data-appearance=dark] .page-soft .apps-status-exported{background:rgba(74,222,128,.16);color:#86efac}html[data-appearance=dark] .page-soft .apps-status-applied{background:rgba(122,162,247,.18);color:#a5bcff}html[data-appearance=dark] .page-soft .apps-error{background:#2d1b1b;color:#f08a8a}html[data-appearance=dark] .page-soft .apps-current{background:radial-gradient(360px 160px at 100% 0,rgba(74,222,128,.1),transparent 60%),var(--soft-card)}html[data-appearance=dark] .page-soft :focus-visible{outline-color:rgba(224,99,107,.5)}html[data-appearance=dark] .page-soft .theme-switch,html[data-appearance=dark] .page-soft input:not([type=checkbox]):not([type=radio]),html[data-appearance=dark] .page-soft select,html[data-appearance=dark] .page-soft textarea{background:var(--soft-bg-deep)}html[data-appearance=dark] .page-soft .theme-switch-btn.active{background:var(--soft-card)}.editor-root.dark .live-hint{background:var(--bg-toolbar)}.editor-root.dark .live-add,.editor-root.dark .live-gutter button,.editor-root.dark .live-icon-pop,.editor-root.dark .live-photo-controls button,.editor-root.dark .live-tag-input{background:#2a2a2f;color:#d6d6da;border-color:#44444b}.editor-root.dark .live-icon-pop button:hover{background:hsla(0,0%,100%,.08)}.capture-bridge{--bridge-ink:#1a1a1f;--bridge-muted:#6b6b74;--bridge-line:rgba(20,20,30,.14);font:16px/1.6 Manrope,system-ui,sans-serif;max-width:34rem;margin:14vh auto;padding:0 1.5rem;color:var(--bridge-ink)}html[data-appearance=dark] .capture-bridge{--bridge-ink:#e4e4e8;--bridge-muted:#a0a0a8;--bridge-line:hsla(0,0%,100%,.16)}.capture-bridge a{color:#a8232a}html[data-appearance=dark] .capture-bridge a{color:#e0636b}.capture-bridge p[style*=opacity],.capture-bridge small{color:var(--bridge-ink)}.capture-bridge-choice{border:1px solid var(--bridge-line);border-radius:10px;padding:.75rem 1rem;margin:0;display:grid;grid-gap:.6rem;gap:.6rem}.capture-bridge-choice input[type=radio]{accent-color:#a8232a}.capture-bridge-go{justify-self:start;padding:.7rem 1.3rem;border-radius:999px;border:0;background:#a8232a;color:#fff;font:inherit;font-weight:700;cursor:pointer}.capture-bridge-go:hover{background:#8f1c22}