@font-face{font-family:Submariner;src:url("fonts/Submariner/Submariner-Light.otf") format("opentype");font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:Submariner;src:url("fonts/Submariner/Submariner-Regular.otf") format("opentype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Submariner;src:url("fonts/Submariner/Submariner-Book.otf") format("opentype");font-weight:450;font-style:normal;font-display:swap}
@font-face{font-family:Submariner;src:url("fonts/Submariner/Submariner-Medium.otf") format("opentype");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Submariner;src:url("fonts/Submariner/Submariner-Bold.otf") format("opentype");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:Submariner;src:url("fonts/Submariner/Submariner-ExtraBold.otf") format("opentype");font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:Submariner;src:url("fonts/Submariner/Submariner-Heavy.otf") format("opentype");font-weight:900;font-style:normal;font-display:swap}
:root{--ink:#0b0b0b;--red:#e1251b;--paper:#f7f7f5;--paper-2:#e5e5e2;--white:#fff;--mid:#626262;--line:#c9c9c6;--type-date:10px;--type-title:13px;--type-copy:12px}
*{box-sizing:border-box}
html{min-width:320px;background:#f8e8e7;color:var(--ink);font-family:Submariner,Arial,sans-serif}
body{margin:0;padding:26px 30px 34px}
a{color:inherit}
.cv{width:min(1500px,100%);min-height:calc(100vh - 60px);margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:var(--white);box-shadow:9px 9px 0 #0b0b0b;border:1px solid var(--ink)}
.page{min-width:0;display:flex;flex-direction:column}
.page-left{background:var(--paper);border-right:1px solid var(--ink)}
.hero{height:clamp(360px,36.5vw,505px);min-height:360px;position:relative;overflow:hidden;background:var(--ink);color:#fff}
.portrait{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 25%}
.hero-shade{position:absolute;inset:0 auto 0 0;width:50%;background:linear-gradient(90deg,rgba(11,11,11,.62) 0%,rgba(11,11,11,.38) 58%,rgba(11,11,11,0) 100%);pointer-events:none}
.hero-copy{position:absolute;left:clamp(28px,4vw,62px);top:clamp(34px,4vw,58px);width:min(72%,490px)}
.eyebrow{margin:0 0 14px;color:#f7f7f5;font-size:10px;font-weight:800;letter-spacing:.17em;text-transform:uppercase}
.hero h1{margin:0;font:700 clamp(52px,6vw,82px)/1.02 Submariner,Arial,sans-serif;letter-spacing:-.045em}
.headline{max-width:250px;margin:22px 0 12px;color:#f7f7f5;font-size:clamp(11px,1vw,14px);font-weight:800;line-height:1.4;text-transform:uppercase;letter-spacing:.06em}
.summary{max-width:390px;margin:0;color:#fff;font-size:13px;line-height:1.55}
.credential{position:absolute;left:clamp(28px,4vw,62px);bottom:26px;display:flex;align-items:center;gap:12px;color:#fff;font-size:10px;line-height:1.5}
.credential img{width:54px;height:54px;object-fit:contain}
.credential p{margin:0}.credential a{color:#fff;text-decoration-color:#ff746a;text-underline-offset:3px}
.section-card{padding:clamp(24px,3vw,42px) clamp(28px,4vw,62px);border-bottom:1px solid var(--line)}
.section-heading{display:flex;align-items:baseline;gap:12px;margin-bottom:16px}
.section-heading h2,.right-heading h2{margin:0;font:700 clamp(24px,2.5vw,34px)/1.08 Submariner,Arial,sans-serif;letter-spacing:-.035em}
.profile>p{margin:0;color:#333;font-size:var(--type-copy);line-height:1.55}
.experience{padding-top:30px;padding-bottom:32px}
.experience-list{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
.experience-item{min-width:0;padding:12px 0;border-bottom:1px solid var(--line);border-radius:0}
.experience-item.tech,.experience-item.education,.experience-item.visual{background:transparent}
.year{color:var(--red);font-size:var(--type-date);font-weight:800;letter-spacing:.06em;line-height:1.3}
.experience-item h3{margin:4px 0;font-size:var(--type-title);line-height:1.3}
.experience-item p{margin:0;color:var(--mid);font-size:var(--type-copy);line-height:1.45}
.experience-note{margin:14px 0 0;padding:0;border:0;color:#858585;font-size:10px;line-height:1.45;font-style:italic}
.experience-legend{display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px;margin:15px 0 0;color:#333;font-size:9px;line-height:1.3}
.experience-legend>span{display:flex;align-items:center;gap:7px}
.legend-swatch{display:block;flex:none;width:10px;height:10px;border:0;border-radius:50%;background:var(--red)}
.legend-swatch.education{background:var(--ink)}.legend-swatch.visual{background:#777}
.personal-footer{margin-top:auto;padding:20px clamp(28px,3.5vw,54px) 24px;color:var(--mid);font-size:10px;line-height:1.5}
.personal-contact-line{display:flex;align-items:baseline;flex-wrap:wrap;gap:0 8px;margin-bottom:8px;color:var(--ink);font-size:11px;font-weight:700}
.personal-contact-line p{margin:0}.personal-contact-line .address{color:inherit;font-size:inherit;font-weight:inherit}.personal-contact-line .email a{color:inherit;text-decoration:none}

.right-heading{padding:clamp(24px,2.5vw,38px) clamp(28px,3.5vw,54px) 24px}
.right-heading h2{font-size:clamp(24px,2.5vw,34px);white-space:nowrap}
.curiosity-copy{max-width:620px;margin:14px 0 0;color:#333;font-size:var(--type-copy);line-height:1.55}
.curiosity-copy p{margin:0 0 9px}.curiosity-copy p:last-child{margin-bottom:0}
.page-left .methods{margin:0 clamp(20px,2vw,30px) 24px;padding:24px 20px 25px;background:var(--white);border:1px solid var(--ink);border-radius:0;box-shadow:5px 5px 0 var(--ink)}
.methods .section-heading{align-items:flex-start;margin-bottom:22px}
.method-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 25px}
.method{display:grid;grid-template-columns:30px minmax(0,1fr);gap:10px;align-items:start}
.token{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--ink);border-radius:50%;background:var(--white);color:var(--red);font-size:13px}
.method h3{margin:0 0 5px;color:var(--ink);font-size:var(--type-title);line-height:1.3}
.method p{margin:0;color:#333;font-size:var(--type-copy);line-height:1.48}
.foundation{padding:23px clamp(28px,3.5vw,54px) 20px;border-bottom:0}
.foundation .section-heading{margin-bottom:13px}
.education-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.education-grid article{padding-left:0;border:0}
.education-grid h3,.skills h3{margin:0 0 5px;font-size:var(--type-title);line-height:1.3}
.education-grid p,.skills p{margin:0;color:var(--mid);font-size:var(--type-copy);line-height:1.45}
.skills{margin-top:16px;padding-top:13px;border-top:1px solid var(--ink)}
.skills>h3{margin:0 0 12px;font-size:var(--type-title);line-height:1.3}
.skills-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.skills-grid h4{margin:0 0 5px;font-size:var(--type-title);line-height:1.3}
.skills-grid p{margin:0;color:var(--mid);font-size:var(--type-copy);line-height:1.45}
.skills-grid .digital-skills p+p{margin-top:7px}
.page-right .section-card{border-bottom:0}
.brand-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:auto;padding:26px clamp(28px,4vw,62px) 24px}
.school{display:flex;align-items:center;gap:11px;max-width:72%;text-decoration:none}
.school-logo{display:block;flex:none;width:48px;height:48px;object-fit:cover;border:1px solid var(--ink)}
.school-caption{max-width:300px;color:var(--mid);font-size:9px;font-weight:400;line-height:1.4}
.school-url{color:var(--ink);font-size:10px;font-weight:700;text-decoration:none}
.contacts{display:grid;align-content:center;gap:4px;text-align:right;font-size:10px;font-weight:700;line-height:1.4}
.contacts a{text-decoration:none}.contacts a:hover,.school:hover .school-caption,.school-url:hover{text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:3px}
@font-face{font-family:FontelloLink;src:url("fonts/link.woff2") format("woff2");font-weight:400;font-style:normal;font-display:block}
.link-mark{display:inline-block;margin-left:.18em;vertical-align:baseline;color:var(--red);font-family:FontelloLink,sans-serif;font-size:.9em;font-style:normal;font-weight:400;line-height:1;text-decoration:none}
a.link-mark{text-decoration:none}a.link-mark:hover,a.link-mark:focus{text-decoration:none}
.method h3 .link-mark{color:var(--red)}
@media(min-width:1500px){.cv{min-height:calc(100vh - 60px)}.page-left{border-right:1px solid var(--ink)}}
@media(max-width:900px){body{padding:0}.cv{min-height:100vh;grid-template-columns:1fr}.page-left{border-right:0;border-bottom:9px solid var(--ink)}.hero{height:470px}.right-heading{padding:34px clamp(24px,6vw,54px) 24px}.page-left .methods{margin:0 24px}.page-right{padding:0}.brand-footer{padding-left:clamp(24px,6vw,54px);padding-right:clamp(24px,6vw,54px)}}
@media(max-width:560px){.hero{height:430px;min-height:430px}.hero-copy{width:82%}.hero h1{font-size:58px}.summary{font-size:12px}.section-card{padding:25px 24px}.experience-list,.method-grid,.education-grid,.skills-grid{grid-template-columns:1fr}.experience-list{gap:0}.experience .section-heading h2{font-size:25px}.method-grid{gap:17px}.right-heading h2{font-size:25px}.page-left .methods{padding:21px 17px}.foundation{padding-left:24px;padding-right:24px}.brand-footer{align-items:center;flex-direction:column;gap:12px}.school{max-width:100%;gap:8px}.school-logo{width:40px;height:40px}.school-caption{font-size:8px}.contacts{align-self:center;text-align:center;font-size:9px;overflow-wrap:anywhere}.personal-footer{padding-left:24px;padding-right:24px}}
@media(prefers-reduced-motion:no-preference){a{transition:color .16s ease,background-color .16s ease}}
