@font-face{font-family:Portfolio;src:local('Arial');font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#f4f5f7;color:#16191f;font-family:Portfolio,Arial,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #2954ff;outline-offset:5px}.skip{position:absolute;left:20px;top:-100px;z-index:100;background:white;padding:10px}.skip:focus{top:10px}.header{height:100px;max-width:1440px;padding:0 5.5%;margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d9dce3;gap:25px}.brand{font-size:28px;font-weight:800;letter-spacing:-2px;line-height:1}.brand>span{color:#2954ff}.brand .brand-dot{margin-left:2px}.header nav{display:flex;gap:34px;font-size:14px}.header nav a:hover,.text-link:hover{color:#2954ff}.header-actions{display:flex;gap:20px;align-items:center}.lang-toggle{display:flex;border:1px solid #d9dce3;border-radius:30px;padding:4px;background:transparent;gap:1px;font-size:12px;font-weight:700}.lang-toggle span{padding:5px 9px;border-radius:20px}.lang-toggle .selected{background:#16191f;color:white}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:13px 23px;border:1px solid #16191f;border-radius:4px;background:transparent;font-size:14px;font-weight:600;transition:background .2s,transform .2s}.button:hover{background:#e6e9f0;transform:translateY(-2px)}.button.primary{background:#2954ff;border-color:#2954ff;color:white}.button.primary:hover{background:#1b3ecc}.button.small{min-height:40px;padding:8px 16px}.section{max-width:1440px;padding:88px 5.5%;margin:auto}.hero{display:grid;grid-template-columns:1.15fr 1fr;gap:7%;padding-top:58px;padding-bottom:62px}.eyebrow{font-family:monospace;font-size:12px;letter-spacing:1.5px;font-weight:500;color:#5a626f;margin:0 0 26px}.hero h1{font-size:clamp(76px,8vw,116px);line-height:.94;letter-spacing:-7px;font-weight:500;margin:32px 0 26px}.hero h1 span{color:#68717f}.hero h1 i{color:#2954ff;font-style:normal}.role{font-size:24px;font-weight:500;line-height:1.25;margin:30px 0 20px;letter-spacing:-.6px}.hero-description{color:#5a626f;max-width:420px;font-size:16px;line-height:1.7}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:32px}.text-link{font-size:14px;font-weight:600;border-bottom:1px solid #a5aab4;padding:8px 0}.location{font-size:12px;margin-top:37px;color:#5a626f;display:flex;flex-wrap:wrap;gap:8px 24px}.hero-visual{position:relative;min-height:550px;background:#e2e5ea;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}.architectural-image{position:absolute;inset:0;background:linear-gradient(135deg,#e2e5ea,#aab1bb);z-index:0}.visual-top,.visual-bottom{z-index:1;display:flex;justify-content:space-between;padding:23px;font-family:monospace;font-size:11px;letter-spacing:1px}.visual-top{border-bottom:1px solid #ffffff40}.visual-bottom{align-items:end;padding:30px;background:linear-gradient(0deg,#10151ce8,transparent);color:white;min-height:170px}.visual-bottom>span:first-child{font-size:27px;line-height:1.16;letter-spacing:-1px;font-family:Arial,sans-serif}.visual-index{font-size:11px}.focus-strip{background:#16191f;color:#fff;display:flex;justify-content:center;align-items:center;gap:6vw;min-height:90px;padding:20px 5%;font-size:12px;letter-spacing:1.4px}.focus-strip b{font-size:22px;color:#8398ff;font-weight:400}h2{font-size:clamp(38px,4vw,58px);font-weight:500;letter-spacing:-2.6px;line-height:1.08;margin:0 0 36px}h3{font-size:24px;font-weight:500;letter-spacing:-.5px}.experience-preview{border-top:1px solid #bfc5d0;padding:24px 0}.experience-preview>p:first-child{font-family:monospace;font-size:12px;color:#5a626f}@media(max-width:900px){.header{height:82px;gap:15px}.header nav{gap:18px}.hero{gap:5%}.hero h1{font-size:78px;letter-spacing:-5px}.hero-visual{min-height:540px}.visual-top{font-size:10px;padding:16px;gap:15px}.hero-actions{gap:16px;flex-wrap:wrap}.location{display:block}.location span{display:block}}@media(max-width:640px){.header{padding:0 6%;height:80px}.header nav{display:none}.header-actions{gap:12px}.button.small{padding:7px 10px;font-size:12px}.section{padding:60px 6%}.hero{grid-template-columns:1fr;padding-top:38px;gap:32px}.eyebrow{font-size:11px;letter-spacing:1px}.hero h1{font-size:84px;letter-spacing:-5px}.role{font-size:23px}.hero-visual{min-height:420px}.location{line-height:1.8}.focus-strip{gap:14px;font-size:9px;letter-spacing:.5px;min-height:70px}.focus-strip b{font-size:18px}h2{font-size:42px}.visual-top{font-size:11px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
/* Portfolio sections and interactive states */
.header{position:relative;z-index:5}.header nav a.active{color:#2954ff}.header-actions{gap:16px}.header .small{gap:8px}.button svg{width:18px;height:18px;flex-shrink:0}.button{gap:9px}.lang-toggle{position:relative;isolation:isolate;font-size:14px;min-height:38px;min-width:84px}.lang-toggle:before{content:'';position:absolute;left:4px;top:4px;bottom:4px;width:calc(50% - 4px);background:#16191f;border-radius:25px;z-index:-1;transition:transform .23s}.lang-toggle.ru:before{transform:translateX(100%)}.lang-toggle span{padding:3px 8px}.lang-toggle.en span:first-child,.lang-toggle.ru span:last-child{color:white}.reading-progress{position:fixed;inset:0 0 auto;height:3px;background:#2954ff;transform-origin:left;z-index:50;transform:scaleX(0)}.hero-visual{margin:0;min-height:570px}.architectural-image{width:100%;height:100%;object-fit:cover;object-position:50% 55%;transition:transform 1s}.hero-visual:hover .architectural-image{transform:scale(1.025)}.visual-top{color:white;background:linear-gradient(#0d142470,transparent);text-shadow:0 1px 6px #000}.visual-bottom{padding-bottom:48px}.hero-visual figcaption{position:absolute;bottom:11px;left:30px;color:#c0c6d3;font-size:10px;z-index:2}.hero-description{max-width:395px}.hero h1{animation:rise .65s both}.hero .role{animation:rise .65s .08s both}.hero .hero-description{animation:rise .65s .15s both}.hero .hero-actions{animation:rise .65s .2s both}@keyframes rise{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.focus-strip{font-size:13px;letter-spacing:1.1px;gap:4vw}.section-intro{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:45px}.section-intro h2{margin-bottom:0}.section-description{max-width:330px;color:#626a77;font-size:16px;line-height:1.75;margin:0}.practice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.practice-card{border-top:1px solid #bdc3cd;padding:23px 0 0;display:flex;flex-direction:column;align-items:start}.card-number{font-family:monospace;color:#2954ff;font-size:14px}.practice-card h3{margin:26px 0 12px;font-size:24px;line-height:1.25}.practice-card>p{color:#626a77;font-size:15px;line-height:1.75;margin:0 0 28px}.tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:auto}.tags span{font-size:12px;border:1px solid #d2d6de;border-radius:3px;padding:4px 9px;line-height:1.5;color:#5a626f}.experience{padding-top:35px}.timeline{border-top:1px solid #bdc3cd}.job{border-bottom:1px solid #bdc3cd}.job summary{display:grid;grid-template-columns:26% 1fr 30px;gap:22px;padding:30px 0;cursor:pointer;list-style:none;align-items:start}.job summary::-webkit-details-marker{display:none}.job-date{font-size:13px;font-family:monospace;color:#69717e;max-width:220px;padding-top:6px}.current-label{display:block;color:#2954ff;margin-top:12px;font-family:Arial,sans-serif;font-size:12px}.job-heading h3{font-size:27px;margin:0 0 6px;line-height:1.25}.job-heading p{color:#626a77;margin:0;font-size:15px}.expand-icon{width:24px;height:24px;position:relative;margin-top:5px}.expand-icon:before,.expand-icon:after{content:'';position:absolute;background:#16191f;left:5px;top:11px;width:14px;height:1px}.expand-icon:after{transform:rotate(90deg);transition:transform .2s}.job[open] .expand-icon:after{transform:rotate(0)}.job[open] .job-heading h3{color:#2954ff}.job-content{margin-left:calc(26% + 22px);max-width:720px;padding:0 50px 30px 0;animation:rise .3s}.job-place{color:#69717e;font-size:13px;margin:0 0 17px}.job-content ul{padding-left:17px;color:#515966;font-size:15px;line-height:1.75;margin:0}.job-content li{padding-left:4px;margin:8px 0}.projects-section{background:#e9ecf1;scroll-margin-top:20px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.project-card{display:flex;flex-direction:column;text-align:left;appearance:none;border:0;border-radius:3px;background:#171c26;color:#fff;padding:25px;overflow:hidden;position:relative;transition:transform .25s,box-shadow .25s}.project-card:hover{transform:translateY(-6px);box-shadow:0 15px 35px #171c2620}.project-card:focus-visible{outline-offset:6px}.project-top{display:flex;justify-content:space-between;gap:12px;font-family:monospace;font-size:10px;letter-spacing:.9px;color:#aeb8cc}.project-top>span:first-child{line-height:1.5}.project-card h3{font-size:31px;line-height:1.1;letter-spacing:-1px;margin:24px 0 13px}.project-card>p{font-size:14px;line-height:1.7;color:#bcc4d4;margin:0 0 28px}.project-bottom{border-top:1px solid #ffffff25;display:flex;justify-content:space-between;align-items:center;width:100%;padding-top:17px;margin-top:auto;font-size:13px}.project-plus{font-size:25px;line-height:1;font-weight:300}.project-1{background:#1e45c7}.project-1 .project-top,.project-1>p{color:#d3dfff}.project-2{background:#f7f8fa;color:#16191f;border:1px solid #d9dce3}.project-2 .project-top{color:#606a79}.project-2>p{color:#626a77}.project-2 .project-bottom{border-top-color:#d9dce3}.project-diagram{height:162px;margin-top:32px;position:relative;border:1px solid #ffffff24;border-radius:3px;padding:14px}.diagram-label{font-size:9px;letter-spacing:1px;font-family:monospace;color:#aeb8cc}.right-label{text-align:right;padding-top:8px}.gantt{height:87px;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(20% - 1px),#ffffff10 calc(20% - 1px),#ffffff10 20%);display:flex;flex-direction:column;justify-content:space-around;margin-top:5px}.gantt i{display:block;height:10px;background:#5c7fff;border-radius:1px;width:43%}.gantt i:nth-child(2){width:30%;margin-left:20%;background:#a9bdff}.gantt i:nth-child(3){width:42%;margin-left:38%;background:#7293fc}.gantt i:nth-child(4){width:20%;margin-left:75%;background:#d6dfff}.workflow{display:flex;align-items:center;justify-content:center;gap:7px;padding:14px 8px}.workflow>span{font-family:monospace;font-size:19px;text-align:center;color:#c9d6ff}.workflow b{font-weight:400;font-size:9px;letter-spacing:.7px}.workflow>i{width:18px;height:1px;background:#aac0ff}.game-interface{border-color:#d5dce8;padding:13px}.game-header{display:flex;justify-content:space-between;align-items:center;font-family:monospace;font-size:9px;border-bottom:1px solid #d5dce8;padding-bottom:10px;color:#465269}.game-header span{font-size:6px;letter-spacing:1px;color:#8ca3f7}.game-rows{display:flex;flex-direction:column;gap:9px;margin-top:12px}.game-rows>span{display:flex;align-items:center;font:9px monospace;gap:12px;color:#4b556a}.game-rows i{font-style:normal;color:#2954ff}.game-rows b{font-weight:400;letter-spacing:1px}.game-rows em{margin-left:auto;font-style:normal;color:#2954ff}.filters{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 32px}.filters button,.pdf-languages button{border:1px solid #cbd0da;border-radius:30px;padding:10px 18px;font-size:14px;background:transparent;transition:background .2s,color .2s}.filters button[aria-pressed=true],.pdf-languages button[aria-pressed=true]{background:#16191f;color:#fff;border-color:#16191f}.filters button:hover{border-color:#2954ff}.tools-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #cbd0da;min-height:215px}.tool{display:grid;grid-template-columns:28px 1fr;column-gap:14px;border-bottom:1px solid #cbd0da;padding:22px 12px 22px 0;animation:rise .3s}.tool-number{font-size:11px;font-family:monospace;color:#858d99;padding-top:5px}.tool strong{font-size:18px;font-weight:500}.tool-category{grid-column:2;font-size:12px;color:#737c8a}.about-section{background:#fff}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%}.about-copy>p:not(.eyebrow){max-width:500px;color:#626a77;font-size:16px;line-height:1.8}.about-copy h2{font-size:clamp(34px,3.4vw,49px)}.interest-tags{display:flex;flex-wrap:wrap;gap:9px;margin:27px 0 36px}.interest-tags span{font-size:13px;padding:6px 11px;background:#eef1f6;border-radius:4px}.language-card{max-width:400px;border-top:1px solid #d9dce3;padding-top:6px}.language-card h3{font-size:17px;margin:18px 0}.language-card>div{display:flex;justify-content:space-between;padding:9px 0;font-size:14px;color:#626a77}.language-card strong{font-weight:500;color:#16191f}.education>h3{font-size:20px;margin:0 0 28px}.education article{border-top:1px solid #d9dce3;padding:22px 0}.education-date{font-size:12px;font-family:monospace;color:#2954ff}.education h4{font-size:20px;line-height:1.35;font-weight:500;letter-spacing:-.4px;margin:12px 0}.education p{font-size:14px;line-height:1.65;color:#626a77;margin:8px 0}.education .education-note{font-size:13px;color:#79818e}.contact-section{background:#2954ff;color:white}.contact-section .eyebrow{color:#cad6ff}.contact-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:7%;align-items:center}.contact-grid h2{font-size:clamp(40px,4.4vw,64px);margin:0 0 24px}.contact-grid>div>p{color:#d6dfff;max-width:400px;margin-bottom:27px}.button.light{border-color:#ffffff65;color:white}.button.light:hover{background:#ffffff12}.contact-links{padding-top:20px}.contact-label{font-family:monospace;font-size:12px;display:block;color:#ccd8ff;margin-bottom:12px}.email-link{font-size:clamp(19px,2.15vw,30px);letter-spacing:-1px;line-height:1.5;display:block;overflow-wrap:anywhere}.copy-email{padding:6px 0;background:none;border:0;border-bottom:1px solid #9fb4ff;color:#d6dfff;font-size:12px;margin-top:12px}.contact-small{display:grid;grid-template-columns:1fr 1.3fr;gap:15px;border-top:1px solid #ffffff45;margin-top:38px;padding-top:25px}.contact-small a{font-size:15px}.footer{max-width:1440px;margin:auto;display:flex;justify-content:space-between;gap:20px;padding:28px 5.5%;font-size:12px;color:#626a77}.footer a{color:#16191f}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,15px);background:#16191f;color:white;border-radius:4px;padding:12px 20px;font-size:14px;opacity:0;pointer-events:none;transition:.2s;z-index:110;max-width:90vw;text-align:center}.toast.visible{opacity:1;transform:translate(-50%,0)}body.dialog-open{overflow:hidden}dialog{border:1px solid #d9dce3;border-radius:8px;max-width:700px;width:calc(100% - 32px);max-height:90dvh;padding:42px;background:#f7f8fa;color:#16191f;box-shadow:0 30px 100px #050a2240}dialog::backdrop{background:#1018299e;backdrop-filter:blur(5px)}.close-dialog{position:absolute;top:12px;right:15px;width:38px;height:38px;border:0;background:transparent;font-size:30px;font-weight:300;color:#626a77;border-radius:50%}.close-dialog:hover{background:#e5e9f1}dialog h2{font-size:36px;line-height:1.12;margin:20px 0;letter-spacing:-1.6px}dialog .eyebrow{margin-bottom:16px}dialog>p,dialog section p{font-size:15px;line-height:1.75;color:#626a77}dialog section{margin-top:27px}dialog section h3{font-size:18px;margin:0 0 8px}dialog section p{margin:0}.pdf-languages{display:flex;gap:10px;margin-top:22px}.pdf-preview{display:flex;justify-content:center;gap:15px;margin:25px 0;padding:22px;background:#e7eaf0;border-radius:4px}.mini-page{background:white;position:relative;padding:16px 13px;width:160px;height:200px;box-shadow:0 3px 12px #16191f12;display:flex;flex-direction:column;gap:8px;overflow:hidden}.mini-page strong{font-size:11px;line-height:1.2;letter-spacing:-.3px}.mini-page span{font-size:6px;line-height:1.4}.mini-page>i{height:1px;background:#2954ff;display:block;margin:3px 0}.mini-page b{font-size:7px;font-weight:500;color:#2954ff}.mini-lines{height:57px;background:repeating-linear-gradient(0deg,transparent,transparent 6px,#e5e9f0 6px,#e5e9f0 8px);width:100%}.mini-lines.short{height:28px;width:84%}.mini-page em{position:absolute;bottom:8px;right:10px;font:6px monospace;color:#9da4b0}.pdf-actions{display:flex;gap:10px;flex-wrap:wrap}.pdf-actions .button{flex:1;font-size:13px;white-space:nowrap;padding:13px}.pdf-hint{font-size:12px!important;line-height:1.6!important;margin:17px 0 0}#print-resume{display:none}
@media(min-width:1500px){.hero{min-height:740px}.hero h1{font-size:125px}}
@media(max-width:1100px){.header{padding:0 4%}.header nav{gap:18px}.hero h1{font-size:94px;letter-spacing:-5px}.section{padding-left:5%;padding-right:5%}.hero{gap:5%}.hero-visual{min-height:570px}.hero .eyebrow{font-size:10px}.practice-grid{gap:24px}.project-card{padding:20px}.project-card h3{font-size:28px}.project-top{font-size:9px}.about-grid{gap:7%}.contact-grid{gap:5%}}
@media(max-width:900px){.header nav{display:none}.hero h1{font-size:78px}.hero-visual{min-height:540px}.section-intro{gap:35px}.section-description{max-width:280px;font-size:15px}.practice-grid{gap:20px}.practice-card h3{font-size:21px}.practice-card>p{font-size:14px}.project-grid{gap:14px}.project-card{padding:17px}.project-card h3{font-size:24px}.project-card>p{font-size:13px}.project-diagram{height:145px}.gantt{height:71px}.workflow>span{font-size:17px}.workflow{gap:4px}.workflow>i{width:10px}.project-top{font-size:8px;letter-spacing:.5px}.job summary{grid-template-columns:25% 1fr 25px;gap:15px}.job-heading h3{font-size:24px}.job-content{margin-left:calc(25% + 15px);padding-right:10px}.about-grid{gap:6%}.about-copy h2{font-size:35px}.contact-small{grid-template-columns:1fr;gap:20px}.footer>span:nth-child(2){display:none}}
@media(max-width:640px){.header{padding:0 6%;height:80px}.header .button.small{font-size:12px;padding:9px 10px;gap:6px}.header .button.small svg{width:15px}.header-actions{gap:10px}.lang-toggle{font-size:13px;min-width:78px}.section{padding:58px 6%}.hero{padding-top:37px;padding-bottom:42px}.hero h1{font-size:clamp(65px,20vw,91px);letter-spacing:-4px}.hero .eyebrow{font-size:10px;letter-spacing:.6px;max-width:300px;line-height:1.6}.hero-description{font-size:16px}.hero-visual{min-height:430px;aspect-ratio:4/5}.visual-top{padding:20px}.visual-bottom{padding:28px 25px 43px}.hero-visual figcaption{left:25px}.focus-strip{padding:20px 6%;gap:10px;font-size:9px;letter-spacing:.3px;flex-wrap:wrap}.focus-strip b{font-size:15px}.section-intro{display:block;margin-bottom:32px}.section-intro h2{font-size:40px;letter-spacing:-2px}.section-description{margin-top:22px;max-width:none;font-size:15px}.practice-grid{grid-template-columns:1fr;gap:28px}.practice-card{padding-top:18px}.practice-card h3{font-size:24px;margin:15px 0 12px}.practice-card>p{font-size:16px;margin-bottom:20px}.experience{padding-top:12px}.job summary{grid-template-columns:1fr 25px;padding:23px 0;gap:10px}.job-date{grid-column:1;max-width:none;font-size:12px;display:flex;align-items:center;gap:14px;padding:0;flex-wrap:wrap}.current-label{margin:0}.job-heading{grid-column:1}.job-heading h3{font-size:25px}.job-heading p{font-size:14px}.expand-icon{grid-column:2;grid-row:1/3;align-self:center}.job-content{margin-left:0;padding:0 0 25px}.job-content ul{font-size:15px}.project-grid{grid-template-columns:1fr;gap:20px}.project-card{padding:26px}.project-top{font-size:11px;letter-spacing:.6px}.project-diagram{height:162px;max-width:360px;width:100%;align-self:center}.gantt{height:87px}.workflow{gap:16px}.workflow>i{width:30px}.workflow>span{font-size:21px}.workflow b{font-size:11px}.project-card h3{font-size:35px}.project-card>p{font-size:15px}.project-bottom{font-size:14px}.filters{gap:8px}.filters button{font-size:13px;padding:9px 13px}.tools-grid{grid-template-columns:1fr 1fr;gap:0 15px}.tool{grid-template-columns:20px 1fr;gap:7px;padding:20px 0}.tool strong{font-size:15px;overflow-wrap:anywhere;line-height:1.4}.tool-category{font-size:11px;line-height:1.6}.tool-number{font-size:10px;padding-top:2px}.about-grid{grid-template-columns:1fr;gap:48px}.about-copy h2{font-size:39px}.education>h3{font-size:22px}.contact-grid{grid-template-columns:1fr;gap:30px}.contact-grid h2{font-size:42px;letter-spacing:-2px}.contact-small{grid-template-columns:1fr 1.2fr;gap:18px}.email-link{font-size:26px;letter-spacing:-.8px}.contact-small a{font-size:14px}.footer{padding:23px 6%;font-size:11px}.footer>a{white-space:nowrap}.pdf-actions{flex-direction:column}.pdf-actions .button{font-size:14px}dialog{padding:38px 23px 25px}dialog h2{font-size:32px}.pdf-preview{padding:15px 10px;gap:10px}.mini-page{width:135px;height:175px;padding:12px}.pdf-preview .mini-page strong{font-size:9px}.pdf-hint{font-size:12px!important}}
@media(max-width:360px){.hero h1{font-size:70px}.header-actions{gap:7px}.header .small svg{display:none}.brand{font-size:24px}.hero-actions{gap:20px}.contact-small{grid-template-columns:1fr}.email-link{font-size:23px}}
.building-list{border-top:1px solid #bdc5d2;margin-bottom:64px}
.building-case{border-bottom:1px solid #bdc5d2}
.building-case summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:42px minmax(0,1.5fr) minmax(0,1fr) 24px;gap:24px;align-items:center;padding:30px 0}
.building-case summary::-webkit-details-marker{display:none}
.building-number{font:14px monospace;color:#737f92;align-self:start;padding-top:4px}
.building-developer{font-size:14px;color:#2954ff;font-weight:700;letter-spacing:.6px}
.building-heading h3{font-size:clamp(26px,3vw,39px);line-height:1.15;letter-spacing:-1.1px;margin:7px 0 8px;overflow-wrap:anywhere}
.building-heading p{font-size:14px;color:#667181;margin:0}
.building-location{font-size:14px;line-height:1.6;color:#536074;max-width:230px}
.building-case[open] .expand-icon:after{transform:rotate(0)}
.building-content{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:48px;padding:0 48px 32px 66px}
.building-type{font:12px monospace;letter-spacing:1px;color:#778397;margin:0 0 12px}
.building-description,.building-content li,.building-content aside p{font-size:16px;line-height:1.7;color:#4e5b6e}
.building-description{margin:0 0 14px}.building-content ul{padding-left:19px;margin:0}.building-content li+li{margin-top:8px}
.building-content aside{border-left:1px solid #cdd4df;padding-left:26px}
.building-content h4{font-size:14px;font-weight:600;margin:0 0 8px}.building-content aside p{margin:0 0 23px}
.building-sources{display:flex;flex-direction:column;align-items:start;gap:10px}.building-sources a{font-size:14px;color:#2046d2;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.building-sources a:hover{color:#12297d}
.workflow-heading{font-size:24px;margin:0 0 26px;letter-spacing:-.5px}
@media(max-width:900px){.building-case summary{grid-template-columns:30px minmax(0,1.5fr) minmax(0,1fr) 24px;gap:15px}.building-content{padding-left:45px;padding-right:0;gap:25px}}
@media(max-width:640px){.building-list{margin-bottom:43px}.building-case summary{grid-template-columns:24px minmax(0,1fr) 22px;gap:12px;padding:24px 0}.building-heading{grid-column:2}.building-heading h3{font-size:28px}.building-number{grid-column:1}.building-case .expand-icon{grid-column:3;grid-row:1/3}.building-location{grid-column:2;max-width:none}.building-content{grid-template-columns:1fr;padding:0 0 27px;gap:24px}.building-content aside{border-left:0;border-top:1px solid #cdd4df;padding:21px 0 0}.workflow-heading{font-size:23px}.building-heading p{font-size:14px}}
/* Dedicated two-page résumé: no screenshots, menus, backgrounds or collapsed content. */
@page{size:A4;margin:0}
@media print{
html,body{margin:0!important;padding:0!important;background:white!important;color:#16191f!important;font-family:Arial,sans-serif!important;font-size:10pt!important;line-height:1.4!important;scroll-behavior:auto!important}#app,dialog,.toast{display:none!important}#print-resume{display:block!important}*{animation:none!important;transition:none!important;box-shadow:none!important;text-shadow:none!important}a{color:inherit!important;text-decoration:none!important}.cv-page{width:210mm;min-height:296mm;padding:14mm 16mm 14mm;position:relative;break-after:page;page-break-after:always;background:white;print-color-adjust:exact;-webkit-print-color-adjust:exact}.cv-page:last-child{break-after:auto;page-break-after:auto}.cv-header{display:flex;justify-content:space-between;gap:10mm;border-bottom:1.4pt solid #2954ff;padding:0 0 4mm;margin-bottom:3mm}.cv-header h1{font-size:27pt;line-height:1.1;letter-spacing:-1.1pt;margin:0 0 2mm;font-weight:600;color:#16191f}.cv-header p{font-size:12pt;margin:0;line-height:1.3;color:#4a5362}.cv-mark{font-size:24pt;font-weight:700;letter-spacing:-2pt;color:#2954ff}.cv-contact{display:flex;flex-wrap:wrap;column-gap:4mm;row-gap:1mm;font-size:8.3pt;color:#4a5362;margin-bottom:6mm}.cv-section{margin:0 0 5mm;padding:0;break-inside:avoid}.cv-section h2{font-size:11pt;font-weight:700;text-transform:uppercase;letter-spacing:.8pt;line-height:1.3;margin:0 0 3mm;color:#2954ff}.cv-section p{font-size:9.7pt;line-height:1.45;margin:0 0 2mm}.cv-job{margin:0 0 4mm;break-inside:avoid}.cv-line{display:flex;justify-content:space-between;align-items:baseline;gap:6mm}.cv-line h3{font-size:10.5pt;font-weight:700;line-height:1.35;letter-spacing:0;margin:0}.cv-line>span{font-size:8.2pt;white-space:nowrap;color:#5c6574}.cv-job .cv-role{font-size:9.4pt;font-weight:600;margin:1mm 0}.cv-job .cv-meta,.cv-education .cv-meta{font-size:8.5pt;color:#5c6574}.cv-job ul{font-size:9.1pt;line-height:1.42;margin:1.5mm 0 0;padding-left:4mm}.cv-job li{margin:0 0 1mm;padding-left:.5mm}.cv-education{margin:0 0 4mm}.cv-education .cv-line{display:block}.cv-education .cv-line>span{display:block;margin:1mm 0;font-size:8.5pt;color:#2954ff}.cv-education p{font-size:9.1pt}.cv-footer{position:absolute;bottom:10mm;left:16mm;right:16mm;border-top:.5pt solid #c8ced9;padding-top:3mm;display:flex;justify-content:space-between;gap:6mm;font-size:7.3pt;color:#697383}.cv-footer>span:first-child{max-width:150mm}.cv-footer>span:last-child{white-space:nowrap}body.dialog-open{overflow:visible!important}
}
