:root{color:#eee;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;scroll-behavior:smooth;background:#090909;scroll-padding-top:90px;font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}a{color:inherit;text-decoration:none}button{font:inherit}::selection{color:#111;background:#e9e9e9}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline-offset:5px;outline:2px solid #eaeaea}.container{width:min(1392px,100% - 112px);margin-inline:auto}.skip-link{z-index:100;color:#000;background:#fff;padding:12px;position:absolute;top:-100px;left:12px}.skip-link:focus{top:12px}.site-header{z-index:50;height:106px;position:absolute;inset:0 0 auto}.header-inner{justify-content:space-between;align-items:center;gap:40px;height:100%;display:flex}.wordmark{white-space:nowrap;letter-spacing:-.065em;color:#f2f2f2;font-size:23px;font-weight:700}.wordmark span{color:#bcbcbc}.main-nav{align-items:center;gap:38px;display:flex}.main-nav a{letter-spacing:-.01em;color:#b7b7b7;font-size:14px;transition:color .2s;position:relative}.main-nav a.nav-active:after{content:"";background:#d2d2d2;height:1px;position:absolute;bottom:-19px;left:0;right:0;box-shadow:0 0 13px #e0e0e0}.mobile-menu-button{color:#fff;cursor:pointer;background:0 0;border:0;padding:10px;display:none}.hero{isolation:isolate;background:radial-gradient(at 78% 49%,#303030 0,#1a1a1a 19%,#0b0b0b 52%,#060606 82%);height:100svh;min-height:800px;max-height:1030px;position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(at 20% 72%,#50505011,#0000 47%);position:absolute;inset:0}.hero-grain{z-index:3;pointer-events:none;opacity:.13;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.48' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.12'/%3E%3C/svg%3E");position:absolute;inset:0}.hero-layout{z-index:5;align-items:center;height:100%;display:flex;position:relative}.hero-content{z-index:2;width:min(710px,57%);padding-top:66px;position:relative}.eyebrow{letter-spacing:.33em;text-transform:uppercase;color:#e7e7e7;align-items:center;gap:27px;margin:0 0 34px;font-size:12px;font-weight:700;display:flex}.eyebrow-line{background:#d4d4d4;width:48px;height:1px;display:inline-block;box-shadow:0 0 7px #ccc}.hero h1{letter-spacing:-.066em;color:#f0f0f0;text-wrap:balance;text-shadow:0 1px 2px #000;margin:0 0 25px;font-family:Georgia,Times New Roman,serif;font-size:clamp(68px,6.4vw,104px);font-weight:400;line-height:1.025}.hero-specialty{color:#989898;letter-spacing:-.02em;white-space:nowrap;margin:0 0 28px;font-size:clamp(17px,1.5vw,22px);line-height:1.4}.tiny-dot{padding:0 2px}.hero-description{color:silver;letter-spacing:-.008em;max-width:650px;margin:0;font-size:18px;line-height:1.7}.hero-actions{gap:20px;margin-top:45px;display:flex}.btn{border-radius:16px;justify-content:center;align-items:center;gap:27px;min-width:178px;padding:17px 28px;font-size:15px;font-weight:600;transition:transform .2s,background .2s,box-shadow .2s;display:inline-flex}.btn-primary{color:#101010;background:linear-gradient(135deg,#fff,#ddd);border:1px solid #fff;box-shadow:0 0 24px #eaeaea35,0 5px 23px #0009}.btn-secondary{color:#e5e5e5;background:#08080861;border:1px solid #8e8e8e;font-weight:400}.btn-secondary:hover{background:#f5f5f51a}.hero-meta{color:#bfbfbf;white-space:nowrap;flex-wrap:wrap;align-items:center;gap:29px;margin-top:92px;font-size:14px;display:flex}.hero-meta>span:not(.meta-separator),.hero-meta>a{align-items:center;gap:12px;display:inline-flex}.hero-meta>a{transition:color .2s}.hero-meta>a:hover{color:#fff}.meta-separator{background:#525252;width:1px;height:29px;display:block}.hero-photo-layer{z-index:1;pointer-events:none;width:56%;position:absolute;inset:0 0 0 auto;overflow:hidden}.hero-photo-glow{background:radial-gradient(at 61% 46%,#cdcdcd21,#3232320f 34%,#0000 60%);position:absolute;inset:2% -4% 0 0}.hero-photo{object-fit:contain;filter:grayscale()brightness(.78)contrast(1.1);opacity:.94;width:auto;max-width:none;height:140%;position:absolute;bottom:-30%;right:-1%;-webkit-mask-image:linear-gradient(#0000 0%,#000 5% 78%,#0000 99%);mask-image:linear-gradient(#0000 0%,#000 5% 78%,#0000 99%)}.photo-fade{opacity:.43;background:linear-gradient(90deg,#090909 0%,#090909b0 13%,#0000 49%),linear-gradient(0deg,#090909 0,#0000 27%);position:absolute;inset:0}.scroll-cue{z-index:7;color:#737373;text-transform:uppercase;letter-spacing:.18em;white-space:nowrap;align-items:center;gap:12px;font-size:10px;display:flex;position:absolute;bottom:26px;left:50%;transform:translate(-50%)}.scroll-line{background:#7d7d7d;width:31px;height:1px}.content-section{background:#0b0b0b;border-top:1px solid #1c1c1c;position:relative}.section-kicker{color:#8c8c8c;letter-spacing:.26em;margin:0 0 28px;font-size:11px;font-weight:700}.content-section h2{letter-spacing:-.058em;margin:0 0 52px;font-family:Georgia,Times New Roman,serif;font-size:clamp(42px,4.5vw,70px);font-weight:400;line-height:1.12}.content-section h2 em{color:#a5a5a5;font-style:normal}.two-column-text{grid-template-columns:1fr 1fr;align-items:start;gap:70px;display:grid}.two-column-text h2{max-width:600px}.copy-column p{color:#bdbdbd;margin:0 0 20px;font-size:18px;line-height:1.75}.experience-card{background:linear-gradient(125deg,#171717,#111 70%);border:1px solid #303030;border-radius:26px;justify-content:space-between;align-items:end;gap:30px;padding:48px;display:flex;box-shadow:0 24px 55px #0002}.experience-card h3,.project-info h3{letter-spacing:-.04em;margin:12px 0 16px;font-family:Georgia,Times New Roman,serif;font-size:40px;font-weight:400}.experience-card p,.project-info p{color:#aeaeae;max-width:570px;margin:0;font-size:16px;line-height:1.75}.card-label{letter-spacing:.18em;color:#888;font-size:11px;font-weight:700}.tech-tags{flex-wrap:wrap;gap:9px;display:flex}.tech-tags span{color:#d1d1d1;white-space:nowrap;background:#1c1c1c;border:1px solid #404040;border-radius:30px;padding:8px 13px;font-size:12px}.experience-card>.tech-tags{justify-content:end;max-width:395px}.project-card{background:radial-gradient(at 10% 40%,#2a2a2a,#151515 55%,#111);border:1px solid #333;border-radius:28px;grid-template-columns:42% 58%;min-height:490px;display:grid;overflow:hidden}.project-image{background:radial-gradient(#45454555 0%,#0000 70%);justify-content:center;align-items:center;padding:40px 50px;display:flex;overflow:hidden}.project-image img{object-fit:contain;filter:saturate(.83);border:7px solid #1e1e1e;border-radius:28px;width:auto;max-width:100%;height:435px;box-shadow:0 18px 50px #000b}.project-info{align-self:center;padding:70px 60px 60px 20px}.project-info h3{font-size:48px}.project-info .tech-tags{margin:29px 0}.project-link{border-bottom:1px solid #9c9c9c;align-items:center;gap:10px;padding-bottom:8px;font-size:14px;font-weight:600;transition:color .2s;display:inline-flex}.project-link:hover{color:#999}.contact-inner{text-align:center;flex-direction:column;align-items:center;min-height:530px;padding:140px 0;display:flex}.contact-inner h2{margin:0 0 20px;font-size:clamp(72px,9vw,135px)}.glow-period{color:#fff;text-shadow:0 0 28px #fff5}.contact-inner>p:not(.section-kicker){color:#aaa;margin:0 0 34px;font-size:17px;line-height:1.6}.contact-socials{gap:30px;margin-top:34px;display:flex}.contact-socials a:hover{color:#fff}.site-footer{background:#080808;border-top:1px solid #242424}.footer-inner{color:#818181;justify-content:space-between;align-items:center;min-height:85px;font-size:12px;display:flex}.footer-inner a{color:#aaa}.footer-inner a:hover{color:#fff}@media (width<=1240px){.container{width:min(1160px,100% - 84px)}.main-nav{gap:25px}.hero-content{width:62%}.hero h1{font-size:clamp(66px,6.6vw,90px)}.hero-photo{height:126%;bottom:-26%;right:-12%}.hero-meta{gap:18px;margin-top:70px}.hero-description{max-width:580px}.hero-specialty{white-space:normal}}@media (width<=980px){.container{width:calc(100% - 64px)}.wordmark{font-size:19px}.main-nav{gap:18px}.main-nav a{font-size:12px}.hero{min-height:750px}.hero-content{width:64%}.hero h1{font-size:clamp(58px,7.2vw,76px)}.hero-photo-layer{width:60%}.hero-photo{height:115%;bottom:-20%;right:-27%}.hero-description{max-width:480px;font-size:16px}.hero-meta{gap:14px;margin-top:60px;font-size:12px}.meta-separator{height:21px}.experience-card{flex-direction:column;align-items:start}.experience-card>.tech-tags{justify-content:start;max-width:none}.project-info{padding-right:30px}.project-info h3{font-size:42px}}@media (width<=780px){.container{width:calc(100% - 44px)}.site-header{height:78px}.header-inner{gap:15px}.wordmark{font-size:19px}.mobile-menu-button{display:flex}.main-nav{backdrop-filter:blur(18px);background:#161616f7;border:1px solid #3c3c3c;border-radius:18px;flex-direction:column;align-items:stretch;gap:0;padding:18px;display:none;position:absolute;top:68px;left:22px;right:22px;box-shadow:0 15px 35px #0009}.main-nav.is-open{display:flex}.main-nav a{padding:13px 10px;font-size:15px}.main-nav a.nav-active:after{display:none}.hero{height:auto;min-height:930px;max-height:none}.hero-layout{align-items:start;height:auto;min-height:930px}.hero-content{width:100%;padding-top:385px;padding-bottom:118px}.hero-photo-layer{width:100%;height:715px;top:40px;bottom:auto;overflow:hidden}.hero-photo{filter:grayscale()brightness(.66)contrast(1.13);height:650px;top:-25px;bottom:auto;right:-9%;-webkit-mask-image:linear-gradient(#000 0% 52%,#0000 94%);mask-image:linear-gradient(#000 0% 52%,#0000 94%)}.photo-fade{opacity:1;background:linear-gradient(#0000 8% 35%,#090909 77%,#0000 99%)}.hero-photo-glow{background:radial-gradient(at 55% 37%,#80808022,#0000 70%);inset:10% 0}.hero h1{max-width:680px;font-size:clamp(55px,11vw,82px)}.eyebrow{letter-spacing:.24em;margin-bottom:23px;font-size:10px}.eyebrow-line{width:30px}.hero-specialty{font-size:17px}.hero-description{max-width:670px;font-size:16px}.hero-actions{margin-top:30px}.hero-meta{white-space:normal;gap:17px 21px;margin-top:46px}.meta-separator{display:none}.scroll-cue{bottom:20px}.section-inner{padding-top:83px;padding-bottom:90px}.two-column-text{grid-template-columns:1fr;gap:0}.content-section h2{margin-bottom:24px}.copy-column p{font-size:16px}.experience-card{border-radius:19px;padding:32px}.project-card{grid-template-columns:1fr}.project-image{padding:35px 20px}.project-image img{height:380px}.project-info{padding:0 32px 38px}.contact-inner{min-height:430px;padding:100px 0}}@media (width<=490px){.container{width:calc(100% - 36px)}.wordmark{font-size:18px}.hero,.hero-layout{min-height:950px}.hero-content{padding-top:374px}.hero-photo-layer{height:690px;top:20px}.hero-photo{height:600px;top:-4px;right:-18%}.hero h1{letter-spacing:-.065em;font-size:clamp(49px,12.9vw,65px)}.hero-specialty{font-size:15px}.hero-description{font-size:15px;line-height:1.65}.btn{border-radius:13px;gap:12px;min-width:0;padding:15px 20px;font-size:14px}.hero-actions{gap:12px}.hero-meta{gap:14px 19px;max-width:340px;font-size:12px}.hero-meta>span:not(.meta-separator){width:100%}.scroll-cue{font-size:9px}.content-section h2{font-size:46px}.experience-card{padding:25px}.experience-card h3,.project-info h3{font-size:36px}.project-image img{height:335px}.project-info{padding:2px 25px 30px}.contact-inner h2{font-size:69px}.footer-inner{flex-wrap:wrap;gap:15px;padding:22px 0}}@media (prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}:root{color:#f4f4f4;background:#000;font-family:Inter,Segoe UI,Arial,Helvetica,sans-serif}.wordmark{letter-spacing:-.055em;color:#f5f5f5;font-size:22px;font-weight:700}.wordmark span{color:#cfcfcf;text-shadow:0 0 12px #ffffff42}.site-header{background:linear-gradient(#000000e8,#0000);height:98px}.main-nav a{color:#999;font-size:13px}.main-nav a:hover,.main-nav a.nav-active{color:#fff}.main-nav a.nav-active:after{bottom:-17px;box-shadow:0 0 9px #fff7}.hero{background:#000;min-height:765px;max-height:1100px}.hero-grain{opacity:.055}.hero-hairline{z-index:1;pointer-events:none;border:1px solid #c3c3c316;border-radius:50%;width:77vw;height:77vw;position:absolute;inset:auto -10% -56% auto;box-shadow:inset 0 0 45px #fff1}.hero-hairline:after{content:"";border:1px solid #b4b4b40e;border-radius:50%;position:absolute;inset:10%}.eyebrow{color:#e2e2e2;letter-spacing:.27em;gap:18px;margin-bottom:27px;font-size:11px;font-weight:600}.eyebrow-line{background:#dedede;width:34px;box-shadow:0 0 7px #ffffff52}.eyebrow-muted{color:#6b6b6b;letter-spacing:.05em;margin-left:2px;font-size:11px;font-weight:400}.hero h1{color:#f8f8f8;letter-spacing:-.072em;text-wrap:nowrap;text-shadow:none;margin-bottom:14px;font-family:Inter,Segoe UI,Arial,Helvetica,sans-serif;font-size:clamp(62px,6.45vw,101px);font-weight:650;line-height:1.035}.hero h1>span{display:block}.hero-period{color:#fefefe;text-shadow:0 0 20px #fff5}.hero-editorial{letter-spacing:-.055em;color:#d7d7d7;margin:0 0 27px;font-family:Iowan Old Style,Baskerville,Palatino Linotype,Book Antiqua,Georgia,serif;font-size:clamp(25px,2.8vw,43px);font-weight:400;line-height:1.16}.hero-editorial em{color:#f0f0f0;text-shadow:0 0 24px #fff4;font-style:italic;font-weight:400}.hero-specialty{color:#dfdfdf;letter-spacing:.005em;margin:0 0 22px;font-size:clamp(14px,1.3vw,18px);font-weight:500}.tiny-dot{color:#737373}.specialty-rule{color:#5e5e5e;padding:0 11px}.hero-description{color:#999;letter-spacing:0;max-width:525px;font-size:16px;line-height:1.75}.hero-actions{gap:14px;margin-top:37px}.btn{border-radius:11px;gap:20px;min-width:170px;padding:17px 27px;font-size:14px}.btn-primary{background:linear-gradient(135deg,#fff,#e8e8e8 75%,#cfcfcf);border:1px solid #fff;box-shadow:0 3px 17px #ffffff13,0 7px 28px #000a}.btn-secondary{color:#e8e8e8;background:#0f0f0f80;border:1px solid #515151}.hero-meta{color:#9d9d9d;gap:21px;margin-top:73px;font-size:12px}.hero-meta svg{color:#cecece}.meta-separator{background:#383838;height:20px}.hero-photo-layer{width:58%}.hero-photo{filter:brightness(.89)contrast(1.06)saturate(.73);opacity:1;height:140%;bottom:-35%;right:-2%;-webkit-mask-image:linear-gradient(#0000 0%,#000 5% 70%,#0000 97%);mask-image:linear-gradient(#0000 0%,#000 5% 70%,#0000 97%)}.photo-fade{opacity:.48;background:linear-gradient(90deg,#000 0%,#000000a8 21%,#0000 59%),linear-gradient(#0000 73%,#000 100%);inset:0}.scroll-cue{color:#595959}.content-section{background:#050505;border-top:1px solid #1c1c1c}.content-section h2{letter-spacing:-.055em;font-family:Inter,Segoe UI,Arial,Helvetica,sans-serif;font-weight:600}.experience-card{background:linear-gradient(145deg,#171717,#080808 75%)}.experience-card h3,.project-info h3{font-family:Inter,Segoe UI,Arial,sans-serif;font-weight:600}.project-card{background:radial-gradient(at 16%,#1d1d1d,#0b0b0b 59%,#080808)}.contact-inner h2{letter-spacing:-.05em;font-family:Iowan Old Style,Baskerville,Palatino Linotype,Georgia,serif;font-weight:400}@media (width<=1240px){.hero-content{width:64%}.hero h1{font-size:clamp(61px,6.55vw,86px)}.hero-photo{height:128%;bottom:-27%;right:-12%}.hero-meta{margin-top:56px}.hero-editorial{font-size:clamp(25px,3vw,39px)}}@media (width<=980px){.hero-content{width:66%}.hero h1{font-size:clamp(51px,6.45vw,68px)}.hero-photo{height:118%;bottom:-22%;right:-27%}.hero-description{max-width:455px}.hero-meta{gap:13px}.hero-editorial{font-size:30px}}@media (width<=780px){.site-header{height:78px}.main-nav{background:#101010f7}.hero{height:auto;min-height:920px}.hero-layout{min-height:920px}.hero-content{width:100%;padding-top:375px;padding-bottom:110px}.hero-photo-layer{width:100%;height:620px;top:34px;bottom:auto}.hero-photo{filter:brightness(.89)contrast(1.07)saturate(.77);height:630px;top:-20px;bottom:auto;right:-11%;-webkit-mask-image:linear-gradient(#000 0% 55%,#0000 96%);mask-image:linear-gradient(#000 0% 55%,#0000 96%)}.photo-fade{opacity:1;background:linear-gradient(#0000 7% 36%,#000 88%)}.hero-photo-glow{background:radial-gradient(at 63% 32%,#aaa2,#0000 69%)}.hero-hairline{width:120vw;height:120vw;top:4%;bottom:auto;right:-70%}.hero h1{text-wrap:balance;font-size:clamp(50px,10.8vw,78px)}.hero-editorial{margin-bottom:22px;font-size:clamp(26px,5.4vw,40px)}.hero-description{max-width:600px;font-size:15px}.hero-specialty{font-size:15px}.hero-meta{margin-top:39px}.eyebrow{letter-spacing:.23em;font-size:10px}.scroll-cue{bottom:19px}}@media (width<=490px){.hero,.hero-layout{min-height:930px}.hero-content{padding-top:366px}.hero-photo-layer{height:620px;top:22px}.hero-photo{height:585px;top:-2px;right:-15%}.hero h1{letter-spacing:-.073em;font-size:clamp(47px,11.8vw,60px)}.hero-editorial{font-size:31px}.hero-specialty,.hero-description{font-size:14px}.hero-meta{gap:12px}.btn{border-radius:10px;padding:15px 18px;font-size:13px}.hero-actions{margin-top:28px}.eyebrow{margin-bottom:18px}}.hero{background:#000}.hero:before{background:radial-gradient(31% 44% at 79%,#3535351f,#0000 78%)}.hero-content{width:min(710px,57%);padding-top:50px}.hero h1{letter-spacing:-.07em;font-size:clamp(66px,5.7vw,90px)}.hero-description{max-width:525px}.hero-meta{margin-top:65px}.hero-photo-layer{width:57%;inset:0 0 0 auto;overflow:hidden}.hero-photo-glow{background:radial-gradient(at 69% 51%,#50505021,#0000 67%);inset:8% -3% 1% 20%}.hero-photo{filter:brightness(.93)contrast(.95)saturate(.84);opacity:1;width:auto;max-width:none;height:88%;top:auto;bottom:-1.5%;right:1.5%;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 14% 91%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 14% 91%,#0000 100%)}.photo-fade{opacity:.49;background:linear-gradient(90deg,#000 0%,#0000008c 14%,#0000 49%),linear-gradient(#0000 81%,#000 100%)}@media (width<=1240px){.hero-content{width:61%}.hero h1{font-size:clamp(61px,6.1vw,79px)}.hero-photo-layer{width:53%}.hero-photo{height:83%;bottom:-1%;right:-4%}.hero-meta{margin-top:51px}}@media (width<=980px){.hero-content{width:64%}.hero h1{font-size:clamp(50px,5.9vw,67px)}.hero-photo-layer{width:52%}.hero-photo{height:76%;bottom:0;right:-14%}.hero-description{max-width:420px}}@media (width<=780px){.hero{height:auto;min-height:1100px;max-height:none}.hero-layout{align-items:start;min-height:1100px}.hero-content{width:100%;padding-top:492px;padding-bottom:111px}.hero-photo-layer{width:100%;height:610px;top:58px;bottom:auto}.hero-photo{height:568px;top:0;bottom:auto;right:50%;transform:translate(50%);-webkit-mask-image:linear-gradient(#000 0% 63%,#0000 98%);mask-image:linear-gradient(#000 0% 63%,#0000 98%)}.photo-fade{opacity:.85;background:linear-gradient(#0000 42%,#000 98%)}.hero-photo-glow{background:radial-gradient(at 52% 33%,#4b4b4b1f,#0000 71%);inset:0}.hero h1{text-wrap:balance;font-size:clamp(54px,10.8vw,80px)}.hero-meta{margin-top:38px}}@media (width<=490px){.hero,.hero-layout{min-height:1050px}.hero-content{padding-top:450px}.hero-photo-layer{height:510px;top:62px}.hero-photo{height:505px;top:-3px;right:50%;transform:translate(50%)}.hero h1{font-size:clamp(46px,11.8vw,60px)}.hero-editorial{font-size:clamp(27px,7.8vw,34px)}.hero-description{max-width:400px}}@media (width>=781px){.hero-photo{-webkit-mask-composite:source-in;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 18% 86%,#0000 100%),linear-gradient(#0000 0%,#000 6% 92%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 18% 86%,#0000 100%),linear-gradient(#0000 0%,#000 6% 92%,#0000 100%);mask-composite:intersect}}@media (width<=780px){.hero-photo{-webkit-mask-composite:source-in;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 8% 92%,#0000 100%),linear-gradient(#0000 0%,#000 9% 75%,#0000 98%);mask-image:linear-gradient(90deg,#0000 0%,#000 8% 92%,#0000 100%),linear-gradient(#0000 0%,#000 9% 75%,#0000 98%);mask-composite:intersect}}@media (width>=781px){.hero-photo{-webkit-mask-image:radial-gradient(67% 70% at 48% 56%,#000 62%,#0000 99%);mask-image:radial-gradient(67% 70% at 48% 56%,#000 62%,#0000 99%)}}@media (width<=780px){.hero-photo{-webkit-mask-image:radial-gradient(68% 67% at 50% 47%,#000 60%,#0000 100%);mask-image:radial-gradient(68% 67% at 50% 47%,#000 60%,#0000 100%)}}@media (width>=781px){.hero-photo{-webkit-mask-image:radial-gradient(48% 72% at 50% 57%,#000 62%,#0000 100%);mask-image:radial-gradient(48% 72% at 50% 57%,#000 62%,#0000 100%)}}@media (width<=780px){.hero-photo{-webkit-mask-image:radial-gradient(51% 72% at 50% 48%,#000 64%,#0000 100%);mask-image:radial-gradient(51% 72% at 50% 48%,#000 64%,#0000 100%)}}:root{scroll-padding-top:92px}body{overflow-x:clip}.site-header{-webkit-backdrop-filter:blur(18px);background:linear-gradient(#000000ed,#000c);border-bottom:1px solid #ffffff0e;height:84px;position:fixed}.wordmark{font-size:20px}.main-nav{gap:24px}.main-nav a{white-space:nowrap;font-size:12px}.main-nav a.nav-active:after{bottom:-15px}.hero{min-height:790px}.hero-photo{filter:brightness(.93)contrast(.95)saturate(.84)}.content-section{background:#050505;border-top:1px solid #181818;scroll-margin-top:82px}.section-inner{padding-top:132px;padding-bottom:140px}.section-heading{align-items:center;gap:24px;margin-bottom:49px;display:flex}.section-hairline{background:linear-gradient(90deg,#323232,#0000);flex:1;height:1px}.section-kicker{color:#8a8a8a;letter-spacing:.21em;margin:0;font-size:10px}.content-section h2{letter-spacing:-.058em;color:#f0f0f0;margin:0;font-size:clamp(45px,5vw,76px);font-weight:560;line-height:1.07}.content-section h2 em{letter-spacing:-.06em;color:#e1e1e1;font-family:Iowan Old Style,Baskerville,Palatino Linotype,Georgia,serif;font-style:italic;font-weight:400}.section-title-row{justify-content:space-between;align-items:end;gap:40px;margin-bottom:60px;display:flex}.section-title-row h2{max-width:950px}.section-title-row>p{color:#8d8d8d;max-width:325px;margin:0 0 4px;font-size:14px;line-height:1.75}.about-section{background:radial-gradient(at 75% 14%,#101010,#050505 48%,#030303)}.about-grid{grid-template-columns:1.04fr .96fr;gap:clamp(44px,7vw,120px);display:grid}.about-aside{letter-spacing:.23em;color:#656565;margin:0;font-size:11px;font-weight:600}.about-aside span{color:#d0d0d0;padding:0 18px}.copy-column p{color:#a5a5a5;max-width:600px;margin:0 0 22px;font-size:16px;line-height:1.85}.copy-column p.about-lead{color:#e1e1e1;font-size:20px;font-weight:400;line-height:1.7}.text-link,.inline-link{color:#e6e6e6;align-items:center;gap:15px;font-size:14px;font-weight:500;transition:gap .2s,color .2s;display:inline-flex}.text-link{margin-top:13px}.text-link:hover,.inline-link:hover{color:#fff;gap:23px}.timeline-section{background:#070707}.timeline{max-width:1120px;margin:0 auto;padding:6px 0 30px;position:relative}.timeline:before{content:"";background:linear-gradient(#0000,#444 8%,#323232 52%,#bcbcbc 72%,#363636 92%,#0000);width:1px;position:absolute;top:0;bottom:0;left:50%}.timeline-entry{grid-template-columns:1fr 1fr;align-items:start;gap:110px;min-height:220px;padding-bottom:35px;display:grid;position:relative}.timeline-entry:last-child{padding-bottom:0}.timeline-left .timeline-card{grid-column:1}.timeline-right .timeline-card{grid-column:2}.timeline-node{color:#777;letter-spacing:.06em;background:#0b0b0b;border:1px solid #4a4a4a;border-radius:50%;place-items:center;width:40px;height:40px;font-size:10px;display:grid;position:absolute;top:30px;left:50%;transform:translate(-50%);box-shadow:0 0 0 8px #070707}.timeline-entry.is-highlight .timeline-node{color:#fff;border-color:#b7b7b7;box-shadow:0 0 0 8px #070707,0 0 22px #ffffff20}.timeline-card{background:linear-gradient(125deg,#141414,#0c0c0c);border:1px solid #2c2c2c;border-radius:16px;padding:27px 32px 29px;transition:border-color .3s,transform .3s}.timeline-card:hover{border-color:#595959;transform:translateY(-3px)}.timeline-entry.is-highlight .timeline-card{background:linear-gradient(132deg,#1c1c1c,#0d0d0d 75%);border-color:#646464;box-shadow:0 0 35px #ffffff08}.timeline-card-top{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.timeline-period{color:#bfbfbf;font-size:12px;font-weight:600}.timeline-kind{color:#777;letter-spacing:.12em;text-align:right;font-size:9px}.timeline-card h3{letter-spacing:-.03em;color:#f3f3f3;margin:0 0 8px;font-size:21px;font-weight:580;line-height:1.3}.timeline-subtitle{color:#c4c4c4;margin:0 0 12px;font-size:13px;line-height:1.5}.timeline-detail{color:#8a8a8a;margin:0;font-size:13px;line-height:1.72}.experience-section{background:#030303}.experience-feature{background:linear-gradient(135deg,#171717,#080808 74%);border:1px solid #353535;border-radius:20px;overflow:hidden}.experience-topline{border-bottom:1px solid #303030;align-items:center;gap:22px;padding:39px 43px;display:flex}.experience-logo{color:#fff;background:#15335a;border:1px solid #2c4262;border-radius:12px;flex-shrink:0;place-items:center;width:56px;height:56px;font-size:31px;font-weight:700;display:grid}.experience-topline h3{letter-spacing:-.045em;color:#f1f1f1;margin:5px 0 0;font-size:37px;font-weight:600}.experience-date{color:#989898;align-self:flex-start;margin-left:auto;font-size:14px}.experience-roles{padding:5px 43px 10px}.experience-role{border-bottom:1px solid #292929;grid-template-columns:34% 66%;gap:25px;padding:38px 0;display:grid}.experience-role:last-child{border-bottom:0}.role-time{color:#aaa;letter-spacing:.13em;font-size:11px}.experience-role h4{letter-spacing:-.035em;max-width:290px;margin:11px 0;font-size:24px;font-weight:600;line-height:1.23}.experience-role p{color:#a8a8a8;max-width:700px;margin:0 0 15px;font-size:14px;line-height:1.85}.experience-role .tech-tags{margin-top:25px}.tech-tags span{color:#c8c8c8;background:#20202099;border-color:#3b3b3b;padding:7px 12px;font-size:11px}.experience-minor-grid{grid-template-columns:1fr 1fr;gap:22px;margin-top:22px;display:grid}.experience-minor{background:#0e0e0e;border:1px solid #252525;border-radius:17px;min-height:250px;padding:34px 36px}.minor-years{letter-spacing:.14em;color:#888;font-size:11px}.experience-minor h3{letter-spacing:-.03em;color:#efefef;margin:20px 0 4px;font-size:24px;font-weight:600}.experience-minor .minor-position{color:#c3c3c3;margin:0 0 18px;font-size:13px}.experience-minor p:not(.minor-position){color:#888;max-width:420px;margin:0;font-size:14px;line-height:1.75}.skills-strip{border-top:1px solid #252525;grid-template-columns:205px 1fr;gap:30px;margin-top:60px;padding-top:32px;display:grid}.skills-strip>span{color:#717171;letter-spacing:.17em;padding-top:4px;font-size:10px}.skills-strip>div{grid-template-columns:repeat(3,1fr);gap:23px;display:grid}.skill-group h4{color:#c6c6c6;margin:0 0 12px;font-size:13px;font-weight:600}.skill-group p{color:#828282;margin:0;font-size:13px;line-height:1.75}.training-section{background:radial-gradient(at 70% 55%,#101010,#050505 75%)}.training-row{background:linear-gradient(115deg,#171717,#0a0a0a);border:1px solid #303030;border-radius:17px;align-items:center;gap:26px;max-width:900px;padding:30px 35px;display:flex}.training-mark{color:#eedff2;background:#29132f;border:1px solid #49304f;border-radius:12px;flex:0 0 66px;place-items:center;width:66px;height:66px;font-family:Georgia,serif;font-size:39px;display:grid}.training-info h3{color:#f3f3f3;letter-spacing:-.035em;margin:9px 0 5px;font-size:26px;font-weight:600}.training-info h3 span{color:#aaa}.training-info p{color:#9a9a9a;margin:0;font-size:13px}.training-pill{color:#c9c9c9;white-space:nowrap;border:1px solid #444;border-radius:30px;margin-left:auto;padding:9px 14px;font-size:11px}.training-note{color:#777;max-width:670px;margin-top:27px;font-size:13px;line-height:1.75}.project-section{background:#030303}.project-spotlight{background:#0a0a0a;border:1px solid #353535;border-radius:22px;grid-template-columns:50% 50%;display:grid;overflow:hidden}.project-showcase{background:radial-gradient(at 50% 46%,#282828,#111 56%,#080808 90%);border-right:1px solid #252525;min-height:670px;position:relative;overflow:hidden}.showcase-light{pointer-events:none;background:radial-gradient(#ffffff16,#0000 68%);width:70%;height:320px;position:absolute;top:-90px;left:18%}.phone-shot{background:#f4f4f4;border:5px solid #171717;border-radius:25px;width:33%;height:440px;margin:0;transition:transform .3s,box-shadow .3s;position:absolute;top:111px;overflow:hidden;box-shadow:0 25px 60px #000b,0 0 0 1px #585858}.phone-shot img{object-fit:cover;object-position:top;width:100%;height:100%}.phone-left{left:8%;transform:translateY(30px)rotate(-8deg)}.phone-center{z-index:2;height:500px;left:34%;transform:translateY(-5px)rotate(0)}.phone-right{left:59%;transform:translateY(32px)rotate(8deg)}.phone-left:hover{transform:translateY(16px)rotate(-6deg)}.phone-center:hover{transform:translateY(-20px)rotate(0)}.phone-right:hover{transform:translateY(18px)rotate(6deg)}.project-description{flex-direction:column;align-items:start;padding:70px clamp(35px,4.5vw,76px);display:flex}.project-index{letter-spacing:.2em;color:#a9a9a9;justify-content:space-between;gap:25px;width:100%;margin-bottom:39px;font-size:10px;display:flex}.project-index span{color:#666}.project-description h3{letter-spacing:-.055em;color:#f4f4f4;margin:0 0 27px;font-size:clamp(44px,4vw,63px);font-weight:600;line-height:1.07}.project-description h3 em{font-family:Georgia,serif;font-style:italic;font-weight:400}.project-description>p{color:#aaa;margin:0 0 17px;font-size:14px;line-height:1.85}.project-description>.tech-tags{margin-top:16px}.project-footnote{color:#838383;letter-spacing:.1em;border-top:1px solid #282828;gap:25px;width:100%;margin-top:28px;padding:24px 0 0;font-size:10px;display:flex}.project-links{flex-wrap:wrap;align-items:center;gap:26px;margin-top:34px;display:flex}.project-links .btn{min-width:170px}.project-context{grid-template-columns:90px 1fr;align-items:start;gap:25px;max-width:930px;margin-top:40px;display:grid}.context-line{background:#707070;height:1px;margin-top:13px}.project-context p{color:#999;margin:0;font-size:14px;line-height:1.9}.project-context strong{color:#dedede;font-weight:600}.contact-section{background:radial-gradient(56% 55% at 50% 94%,#171717,#040404 68%,#000)}.contact-inner{min-height:565px;padding-top:120px;padding-bottom:120px}.contact-inner h2{letter-spacing:-.06em}.contact-inner>p:not(.section-kicker){color:#aaa}.contact-socials a{font-size:13px}.footer-inner{min-height:92px}.footer-brand{letter-spacing:-.05em;color:#eaeaea;font-size:17px;font-weight:650}.footer-brand span{color:#aaa}@media (width<=1120px){.main-nav{gap:17px}.wordmark{font-size:18px}.main-nav a{font-size:11px}.timeline-entry{gap:65px}.project-description{padding:49px 35px}.project-showcase{min-height:640px}.phone-shot{height:390px;top:128px}.phone-center{height:450px}.experience-role{grid-template-columns:31% 69%}}@media (width<=1030px){.site-header{height:78px}.mobile-menu-button{justify-content:center;align-items:center;display:inline-flex}.main-nav{backdrop-filter:blur(12px);background:#101010f7;border-bottom:1px solid #333;flex-direction:column;align-items:stretch;gap:0;padding:10px 30px 25px;display:none;position:absolute;top:78px;left:0;right:0;box-shadow:0 22px 30px #0009}.main-nav.is-open{display:flex}.main-nav a{padding:12px 2px;font-size:14px}.main-nav a.nav-active:after{display:none}}@media (width<=880px){.container{width:calc(100% - 56px)}.section-inner{padding-top:100px;padding-bottom:105px}.about-grid{grid-template-columns:1fr;gap:35px}.about-grid h2{margin-bottom:24px}.section-title-row{margin-bottom:42px;display:block}.section-title-row>p{margin-top:20px}.timeline:before{left:20px}.timeline-entry{min-height:0;padding:0 0 24px 65px;display:block}.timeline-card{width:100%}.timeline-node{top:18px;left:20px}.experience-role{grid-template-columns:1fr;gap:14px}.experience-roles{padding:0 32px}.experience-topline{padding:32px}.experience-minor-grid{gap:15px}.skills-strip{grid-template-columns:1fr}.skills-strip>div{grid-template-columns:repeat(3,1fr)}.project-spotlight{grid-template-columns:1fr}.project-showcase{border-bottom:1px solid #252525;border-right:0;min-height:565px}.phone-shot{height:410px;top:73px}.phone-center{height:475px}.project-description{padding:45px 40px 55px}.project-description h3{font-size:55px}}@media (width<=600px){.container{width:calc(100% - 38px)}.section-inner{padding-top:78px;padding-bottom:88px}.section-heading{margin-bottom:31px}.content-section h2{font-size:clamp(39px,10.2vw,55px)}.about-lead{font-size:18px!important}.copy-column p{font-size:15px}.timeline-entry{padding-left:53px}.timeline-card{padding:22px}.timeline-card-top{display:block}.timeline-kind{text-align:left;margin-top:6px;display:block}.timeline:before{left:16px}.timeline-node{width:31px;height:31px;font-size:9px;left:16px}.timeline-card h3{font-size:18px}.experience-topline{gap:15px;padding:23px}.experience-logo{width:43px;height:43px;font-size:23px}.experience-topline h3{font-size:30px}.experience-date{font-size:11px}.experience-roles{padding:0 22px}.experience-role{padding:30px 0}.experience-role h4{font-size:22px}.experience-minor-grid{grid-template-columns:1fr}.experience-minor{min-height:unset;padding:25px}.skills-strip>div{grid-template-columns:1fr;gap:18px}.training-row{flex-wrap:wrap;gap:14px;padding:20px}.training-mark{flex-basis:51px;width:51px;height:51px;font-size:30px}.training-info h3{font-size:23px}.training-pill{margin:8px 0 0 65px}.project-showcase{min-height:438px}.phone-shot{border-width:3px;border-radius:19px;width:35%;height:300px;top:60px}.phone-center{height:348px;left:33%}.phone-left{left:5%}.phone-right{left:60%}.project-description{padding:29px 25px 42px}.project-description h3{font-size:45px}.project-description>p{font-size:14px}.project-footnote{flex-direction:column;gap:9px}.project-links{gap:22px}.project-context{grid-template-columns:32px 1fr;gap:12px}.contact-inner{padding-top:90px;padding-bottom:90px}.footer-inner{flex-wrap:wrap;gap:10px}}@media (width<=380px){.timeline-entry{padding-left:46px}.timeline-card{padding:18px}.project-showcase{min-height:385px}.phone-shot{height:255px;top:50px}.phone-center{height:295px}.project-description h3{font-size:39px}}@media (prefers-reduced-motion:reduce){.timeline-card,.phone-shot{transition:none}}.experience-logo{color:#eaeaea;background:linear-gradient(135deg,#343434,#141414);border-color:#494949}.training-mark{color:#f0f0f0;background:linear-gradient(135deg,#303030,#151515);border-color:#484848}.focus-card{background:linear-gradient(112deg,#202020ad,#0c0c0c66 73%);border-top:1px solid #2c2c2c;border-bottom:1px solid #242424;border-left:1px solid #8b8b8b;margin:31px 0 22px;padding:25px 28px 24px}.focus-overline{letter-spacing:.2em;color:#a9a9a9;margin-bottom:11px;font-size:10px;font-weight:600;display:block}.focus-card h3{letter-spacing:-.04em;color:#f0f0f0;margin:0 0 13px;font-size:25px;font-weight:560;line-height:1.25}.focus-card h3 em{color:#ccc;font-family:Georgia,Times New Roman,serif;font-style:italic;font-weight:400}.copy-column .focus-card p{color:#a3a3a3;margin:0 0 17px;font-size:13.5px;line-height:1.78}.focus-topics{flex-wrap:wrap;gap:9px;display:flex}.focus-topics span{letter-spacing:.018em;color:#bfbfbf;background:#191919;border:1px solid #363636;border-radius:24px;padding:7px 10px;font-size:10px}.timeline-entry{min-height:275px;padding-bottom:43px}.timeline-card{padding:29px 30px}.timeline-points{color:#989898;margin:13px 0 17px;padding-left:17px;font-size:12px;line-height:1.76}.timeline-points li{margin-bottom:7px;padding-left:2px}.timeline-points li::marker{color:#666}.timeline-card .tech-tags{gap:6px}.timeline-card .tech-tags span{color:#c3c3c3;background:#20202080;border-color:#383838;padding:5px 9px;font-size:10px}.technical-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:19px;display:grid}.technical-card{background:linear-gradient(145deg,#171717 0%,#0c0c0c 70%,#0b0b0b 100%);border:1px solid #303030;border-radius:16px;flex-direction:column;min-height:353px;padding:29px 27px 25px;transition:transform .25s,border-color .25s,box-shadow .25s;display:flex}.technical-card-top{justify-content:space-between;align-items:center;margin-bottom:19px;display:flex}.tech-icon{color:#ebebeb;background:linear-gradient(135deg,#2a2a2a,#141414);border:1px solid #3b3b3b;border-radius:12px;place-items:center;width:46px;height:46px;display:grid}.technical-index{letter-spacing:.12em;color:#696969;font-size:10px}.technical-source{letter-spacing:.12em;color:#969696;margin:0 0 11px;font-size:9px;font-weight:600;line-height:1.45}.technical-card h3{letter-spacing:-.035em;color:#f0f0f0;margin:0 0 15px;font-size:23px;font-weight:600;line-height:1.2}.technical-description{color:#a1a1a1;margin:0 0 25px;font-size:13px;line-height:1.72}.technical-card .tech-tags{gap:6px;margin-top:auto}.technical-card .tech-tags span{color:#c7c7c7;background:#1b1b1b;border-color:#383838;padding:6px 9px;font-size:10px}.technical-note{color:#7d7d7d;max-width:880px;margin:28px 0 0;font-size:12px;line-height:1.75}@media (width<=1100px){.technical-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.timeline-entry{gap:75px}.timeline-card{padding:25px}}@media (width<=880px){.timeline-entry{min-height:unset;padding-bottom:25px}.timeline-card{padding:25px}.technical-grid{gap:15px}.technical-card{min-height:335px}}@media (width<=640px){.technical-grid{grid-template-columns:1fr;gap:13px}.technical-card{min-height:unset;padding:25px 23px 24px}.technical-card h3{font-size:23px}.technical-description{margin-bottom:22px}.focus-card{padding:23px 20px}.focus-card h3{font-size:23px}.timeline-card .tech-tags span{font-size:9px}}@media (prefers-reduced-motion:reduce){.technical-card{transition:none}}.section-kicker{letter-spacing:.19em;color:#a0a0a0;font-size:12px}.hero h1{letter-spacing:-.065em}.hero-editorial{margin-top:0}.about-grid{align-items:start}.about-grid .copy-column{max-width:790px}.copy-column .focus-card p{margin-bottom:15px}.focus-card{margin-top:27px}.timeline-card{height:auto}.timeline-entry{min-height:0}.timeline-narrative{flex-direction:column;gap:11px;margin-top:16px;margin-bottom:19px;display:flex}.timeline-card .timeline-detail{color:#aaa;margin:0;font-size:12.75px;line-height:1.74}.timeline-card .tech-tags{margin-top:6px}.technical-card{min-height:420px}.technical-description{margin-bottom:22px}.technical-description p{margin:0 0 12px;font-size:12.75px;line-height:1.75}.technical-description p:last-child{margin-bottom:0}.training-list{flex-direction:column;gap:18px;max-width:970px;display:flex}.training-list .training-row{align-items:flex-start;max-width:none}.training-info{flex:1;min-width:0}.training-info p{max-width:620px;margin:8px 0 0;font-size:13px;line-height:1.7}.training-mark-ai{color:#e8e8e8}.training-row-pending{border-color:#454545}.training-pending-note{color:#949494;margin-top:12px;font-size:12px;font-style:italic;line-height:1.5;display:block}.training-pill{margin-top:13px}.project-description>p{margin-bottom:16px;font-size:13.65px;line-height:1.8}.project-description .tech-tags{margin-top:22px}.project-description{justify-content:center}@media (width<=1250px){.timeline-entry{gap:60px}.technical-grid{gap:15px}.technical-card{padding:24px 22px}}@media (width<=880px){.timeline-narrative{gap:10px}.about-grid .copy-column{max-width:none}.technical-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.technical-card{min-height:unset}}@media (width<=640px){.technical-grid{grid-template-columns:1fr}.copy-column>p{font-size:14.5px}.copy-column .about-lead{font-size:17px;line-height:1.7}.timeline-card .timeline-detail{font-size:12.75px}.training-list .training-row{flex-wrap:wrap}.training-pill{margin:8px 0 0 64px}.project-description>p{font-size:13.25px}}@media (width>=881px){.section-inner{padding-top:112px;padding-bottom:116px}.technical-card{min-height:344px}}n :root{--v8-ink:#030303;--v8-surface:#111;--v8-line:#303030;--v8-line-hover:#666;--v8-white:#f4f4f4;--v8-muted:#ababab;--v8-ease:cubic-bezier(.22,1,.36,1)}html{scroll-padding-top:96px}body{background:#030303}.site-header{transition:height .32s var(--v8-ease),background-color .32s ease,box-shadow .32s ease,backdrop-filter .32s ease;will-change:auto;position:fixed;top:0;left:0;right:0}.site-header.is-scrolled{backdrop-filter:blur(18px);background:#070707e0;height:76px;box-shadow:0 1px #ffffff1a,0 12px 32px #0006}.site-header:after{content:"";height:1px;width:var(--page-progress,0%);pointer-events:none;background:linear-gradient(90deg,#787878,#f7f7f7);position:absolute;bottom:0;left:0;box-shadow:0 0 9px #fff4}.main-nav a{color:#c2c2c2;letter-spacing:.005em;font-size:13px;transition:color .24s}.main-nav a:before{content:"";transform-origin:50%;opacity:0;height:1px;transition:opacity .28s ease,transform .35s var(--v8-ease);background:#f2f2f2;position:absolute;bottom:-19px;left:0;right:0;transform:scaleX(0)}.main-nav a:hover:before,.main-nav a.nav-active:before{opacity:1;transform:scaleX(1)}.main-nav a.nav-active:after{display:none}.wordmark{transition:opacity .22s}.wordmark:hover{opacity:.8}.section-kicker{letter-spacing:.19em;color:#b8b8b8;font-size:12px;font-weight:650}.section-heading{gap:25px;margin-bottom:44px}.section-hairline{background:linear-gradient(90deg,#5b5b5b 0%,#202020 45%,#0000 100%);height:1px}.section-title-row{gap:45px;margin-bottom:49px}.section-title-row>p{color:#aaa;max-width:350px;font-size:14px;line-height:1.72}.content-section h2{letter-spacing:-.053em;font-size:clamp(43px,4.85vw,72px);line-height:1.095}.content-section h2 em{color:#dedede}.copy-column>p{color:#b8b8b8;margin-bottom:19px;font-size:15px;line-height:1.79}.copy-column .about-lead{color:#e4e4e4;font-size:18px;line-height:1.66}.about-grid{gap:clamp(48px,6vw,98px)}.about-grid h2{margin-bottom:34px}.about-aside{color:#9b9b9b;letter-spacing:.19em;font-size:11px}.focus-card{background:linear-gradient(128deg,#1a1a1a99,#1010105e);border-left:2px solid #9d9d9d;border-right:1px solid #292929;border-radius:0 12px 12px 0;margin-top:22px;padding:23px 26px 21px}.focus-card h3{font-size:24px}.focus-card .focus-overline{color:#bbb}.focus-topics span,.tech-tags span{transition:background-color .3s,border-color .3s,color .3s}.focus-topics span:hover,.tech-tags span:hover{color:#f3f3f3;background:#242424;border-color:#626262}.timeline-entry{padding-bottom:28px}.timeline-card{transition:transform .42s var(--v8-ease),border-color .42s ease,box-shadow .42s ease;background:linear-gradient(139deg,#171717,#0c0c0c 75%);border-color:#343434;border-radius:15px;box-shadow:0 10px 30px #0002}.timeline-card:hover{border-color:#636363;transform:translateY(-2px);box-shadow:0 15px 37px #0006,inset 0 0 0 1px #ffffff08}.timeline-card h3{letter-spacing:-.038em}.timeline-card .timeline-detail{color:#b2b2b2;line-height:1.7}.timeline-card .timeline-subtitle{color:#cecece}.timeline-node{transition:border-color .42s,box-shadow .42s,color .42s}.timeline:after{content:"";height:var(--timeline-progress,0%);pointer-events:none;background:linear-gradient(#626262,#e8e8e8 55%,#9c9c9c);width:1px;max-height:100%;transition:height .12s linear;position:absolute;top:0;left:50%;box-shadow:0 0 11px #ffffff2f}.timeline-node{z-index:2}.technical-grid{gap:18px}.technical-card{isolation:isolate;min-height:332px;transition:transform .42s var(--v8-ease),border-color .42s ease,box-shadow .42s ease;background:linear-gradient(145deg,#171717,#0b0b0b 68%);border-color:#323232;border-radius:15px;position:relative;overflow:hidden;box-shadow:0 8px 26px #0003}.technical-card:before{content:"";opacity:0;pointer-events:none;background:linear-gradient(90deg,#0000,#e9e9e9aa,#0000);width:50%;height:1px;transition:opacity .5s;position:absolute;top:-1px;left:23%}.technical-card:hover{border-color:#626262;transform:translateY(-3px);box-shadow:0 18px 44px #0008,0 0 18px #ffffff0b}.technical-card-top{margin-bottom:16px}.tech-icon{background:linear-gradient(148deg,#252525,#111);border-color:#494949;border-radius:12px;width:45px;height:45px;transition:border-color .35s,background .35s;box-shadow:inset 0 1px #ffffff12}.technical-card:hover .tech-icon{background:linear-gradient(148deg,#333,#121212);border-color:#909090}.tech-icon svg,.training-mark svg{stroke-width:1.5px}.technical-index{color:#909090}.technical-source{color:#a8a8a8;letter-spacing:.095em;margin-bottom:10px;font-size:10px}.technical-card h3{margin-bottom:14px;font-size:22px;line-height:1.2}.technical-description p{color:#b3b3b3;font-size:13px;line-height:1.71}.technical-card .tech-tags span{padding:6px 9px;font-size:10px}.training-row{transition:border-color .4s ease,background-color .4s ease,transform .4s var(--v8-ease);background:linear-gradient(120deg,#181818,#0b0b0b);border-color:#343434;border-radius:15px;position:relative;overflow:hidden}.training-row:hover{border-color:#626262;transform:translateY(-2px)}.training-mark{color:#e4e4e4;background:linear-gradient(145deg,#272727,#111);border:1px solid #454545;border-radius:14px;flex:0 0 62px;width:62px;height:62px;box-shadow:inset 0 1px #ffffff18}.training-info h3{font-size:24px}.training-pending-note{color:#a8a8a8}.training-pill{color:#ddd;background:#1a1a1a;border-color:#4a4a4a;padding:9px 13px}.project-spotlight{border-color:#414141;border-radius:19px;box-shadow:0 25px 75px #0008}.project-showcase{background:radial-gradient(at 49% 46%,#252525,#101010 63%,#050505 93%)}.showcase-light{opacity:.5}.project-description h3{letter-spacing:-.05em}.project-description>p{color:#b8b8b8;line-height:1.73}.phone-shot{transition:transform .46s var(--v8-ease),box-shadow .46s ease;box-shadow:0 22px 54px #000a,0 0 0 1px #68686880}.phone-shot:hover{box-shadow:0 26px 70px #000e,0 0 0 1px #c4c4c480}.btn{transition:transform .32s var(--v8-ease),background .32s ease,box-shadow .32s ease,border-color .32s ease;border-radius:10px}.btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(0)}.btn-primary{background:linear-gradient(120deg,#f7f7f7,#ddd);box-shadow:0 0 20px #ffffff14,0 9px 29px #0008}.btn-primary:hover{box-shadow:0 0 22px #ffffff3a,0 13px 32px #000a}.btn-secondary:hover{background:#ffffff10;border-color:#d4d4d4}.text-link,.inline-link{transition:color .26s ease,gap .32s var(--v8-ease)}.text-link:hover,.inline-link:hover{gap:19px}.contact-socials a,.footer-inner a{transition:color .26s,opacity .26s}@media (prefers-reduced-motion:no-preference){.motion-ready .reveal-on-scroll{opacity:.55;transition:opacity .7s var(--v8-ease),transform .7s var(--v8-ease);transform:translateY(13px)}.motion-ready .reveal-on-scroll.is-visible{opacity:1;transform:translateY(0)}.motion-ready .technical-card:nth-child(3n+2){transition-delay:60ms}.motion-ready .technical-card:nth-child(3n+3){transition-delay:.12s}.motion-ready .timeline-entry .timeline-card{transition-delay:40ms}.hero-content{animation:v8-intro .65s var(--v8-ease) both}@keyframes v8-intro{0%{opacity:.72;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}}:where(a,button):focus-visible{outline-offset:5px;outline:2px solid #f8f8f8}@media (hover:none){.timeline-card:hover,.technical-card:hover,.training-row:hover,.btn:hover{transform:none}.phone-left:hover{transform:translateY(30px)rotate(-8deg)}.phone-center:hover{transform:translateY(-5px)rotate(0)}.phone-right:hover{transform:translateY(32px)rotate(8deg)}}@media (width<=1100px){.section-inner{padding-top:100px;padding-bottom:105px}.technical-grid{gap:15px}.technical-card{min-height:unset}.technical-card h3{font-size:21px}}@media (width<=1030px){.site-header.is-scrolled{height:70px}.site-header.is-scrolled .main-nav{top:70px}.main-nav a:before{display:none}.main-nav{background:#0c0c0cf7;border-color:#414141}.main-nav a{padding:13px 4px;font-size:14px}.main-nav a.nav-active{color:#fff}}@media (width<=880px){.timeline:after{left:20px}.technical-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-grid{gap:30px}.section-title-row{margin-bottom:37px}}@media (width<=640px){.container{width:calc(100% - 38px)}.section-inner{padding-top:76px;padding-bottom:86px}.section-heading{margin-bottom:33px}.section-kicker{letter-spacing:.13em;font-size:11px}.section-title-row{margin-bottom:31px}.content-section h2{font-size:clamp(39px,10vw,54px)}.technical-grid{grid-template-columns:1fr;gap:14px}.technical-card{padding:26px 23px}.technical-card h3{font-size:22px}.training-info h3{font-size:21px}.timeline:after{left:16px}.project-spotlight{border-radius:15px}.project-description{padding:30px 24px 36px}.project-description h3{font-size:clamp(38px,10vw,47px)}.project-links .btn{min-width:165px}.focus-card{padding:22px 20px}.copy-column>p{font-size:14.5px}.training-note{font-size:12px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.reveal-on-scroll{opacity:1!important;filter:none!important;transform:none!important}}:root{--silver-soft:#a5a5a5;--silver-hot:#f4f4f4}.wordmark{letter-spacing:-.055em}.site-header{box-shadow:none;backdrop-filter:none;transition:height .3s var(--v8-ease),background-color .34s ease, border-color .3s ease,box-shadow .34s ease,backdrop-filter .34s ease;background:0 0;border-bottom:1px solid #0000}.site-header.is-scrolled{-webkit-backdrop-filter:blur(16px);background:#050505e6;border-color:#ffffff2b;box-shadow:0 8px 32px #0000008c,0 1px #ffffff09}.site-header:after{opacity:0;z-index:2;background:linear-gradient(90deg,#6a6a6a 0%,#c7c7c7 42%,#fff 88%,#dedede 100%);height:2px;transition:opacity .22s;box-shadow:0 0 8px #ffffffa1,0 0 17px #fff3}.site-header.is-scrolled:after{opacity:1}.hero{min-height:max(790px,100svh);max-height:none}.hero:after{content:"";z-index:6;pointer-events:none;background:linear-gradient(#0000,#050505 96%);height:105px;position:absolute;bottom:-1px;left:0;right:0}.about-section{background:linear-gradient(#050505 0%,#070707 12%,#040404 70%,#030303 100%);border-top:0}.about-section .section-inner{padding-top:clamp(86px,8vw,120px)}.timeline{isolation:isolate}.timeline:before{z-index:0;background:linear-gradient(#0000,#303030 8%,#414141 50%,#444 85%,#0000)}.timeline:after{z-index:1;will-change:height;background:linear-gradient(#818181 0%,#e9e9e9 55%,#fff 100%);width:2px;box-shadow:0 0 8px #ffffff73,0 0 21px #ffffff2b}.timeline-entry{z-index:2}.timeline-node{z-index:4;isolation:isolate;color:#d0d0d0;background:#080808;border:1px solid #777;box-shadow:0 0 0 9px #070707,0 0 14px #ffffff1a}.timeline-entry.is-inview .timeline-node{color:#fff;border-color:#e1e1e1;box-shadow:0 0 0 9px #070707,0 0 14px #ffffff57,0 0 23px #ffffff24}.timeline-entry.is-highlight .timeline-node{background:#0c0c0c;border-color:#f0f0f0;box-shadow:0 0 0 9px #070707,0 0 17px #ffffff42}.contact-inner>p:not(.section-kicker){max-width:530px;margin-bottom:39px}.scroll-cue{letter-spacing:.15em;color:#999;gap:12px;transition:color .25s}.scroll-cue:hover{color:#efefef}.scroll-line{background:linear-gradient(145deg,#ffffff0e,#0000);border:1px solid #ffffff59;border-radius:50%;flex:0 0 28px;width:28px;height:28px;transition:border-color .25s,box-shadow .25s;position:relative;box-shadow:0 0 12px #ffffff17}.scroll-line:after{content:"";border-bottom:1px solid #dedede;border-right:1px solid #dedede;width:6px;height:6px;position:absolute;top:8px;left:10px;transform:rotate(45deg)}.scroll-cue:hover .scroll-line{border-color:#ffffffad;box-shadow:0 0 14px #ffffff2e}html{scrollbar-width:thin;scrollbar-color:#555 #080808}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#070707}::-webkit-scrollbar-thumb{background:linear-gradient(#555,#393939);border:2px solid #070707;border-radius:12px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(#868686,#525252)}::-webkit-scrollbar-corner{background:#070707}@media (prefers-reduced-motion:no-preference){.scroll-line:after{animation:3.2s ease-in-out infinite v9-chevron}@keyframes v9-chevron{0%,to{opacity:.7;transform:translateY(-1px)rotate(45deg)}50%{opacity:1;transform:translateY(2px)rotate(45deg)}}}@media (width<=1030px){.site-header.is-scrolled{background:#050505f0}.main-nav.is-open{background:#0b0b0bf7}}@media (width<=780px){.hero{height:auto;min-height:max(1100px,100svh)}.hero-layout{min-height:max(1100px,100svh)}.hero:after{height:75px}.about-section .section-inner{padding-top:80px}}@media (width<=490px){.hero,.hero-layout{min-height:max(1050px,100svh)}.scroll-cue{font-size:9px;bottom:17px}.contact-inner h2{margin-bottom:29px}.contact-inner>p:not(.section-kicker){margin-bottom:33px}}@media (prefers-reduced-motion:reduce){.scroll-line:after{animation:none}.timeline:after{will-change:auto}}.menu-icon-close{display:none}.mobile-menu-button[aria-expanded=true] .menu-icon-close{display:inline-flex}.mobile-menu-button[aria-expanded=true] .menu-icon-open{display:none}.hero{isolation:isolate;background:#050505;overflow:hidden}.hero:before,.hero:after{content:none;display:none}.hero-grain,.hero-hairline,.hero-photo-glow,.photo-fade{display:none}.hero-photo-layer{z-index:1;pointer-events:none;isolation:isolate;background:0 0;width:56%;position:absolute;inset:0 0 0 auto;overflow:hidden}.hero-photo-layer:before{content:"";z-index:0;aspect-ratio:1;width:min(88%,700px);box-shadow:none;border:1px solid #dedede1b;border-radius:50%;position:absolute;top:17%;right:-7%}.hero-photo-layer:after{content:"";z-index:1;pointer-events:none;background:radial-gradient(at 70% 49%,#d2d2d20f 0%,#c8c8c805 37%,#0000 71%);position:absolute;inset:6% 0 9% 18%}.hero-photo{z-index:2;object-fit:contain;opacity:1;filter:drop-shadow(0 0 16px #ffffff0e);width:auto;max-width:none;height:83%;display:block;position:absolute;top:auto;bottom:0;right:3%;transform:none;-webkit-mask-image:linear-gradient(#000 0% 89%,#0000 100%);mask-image:linear-gradient(#000 0% 89%,#0000 100%)}.hero-layout{z-index:5}.hero-content{z-index:2;position:relative}@media (width>=981px) and (width<=1279px){.hero-photo-layer{width:54%}.hero-photo{height:80%;bottom:0;right:-4%}}@media (width>=781px) and (width<=980px){.hero-photo-layer{width:52%}.hero-photo{height:73%;bottom:0;right:-9%}.hero-photo-layer:before{width:110%;top:25%;right:-18%}}@media (width<=780px){.hero{height:auto;min-height:max(1240px,100svh);max-height:none}.hero-layout{align-items:start;min-height:max(1240px,100svh)}.hero-photo-layer{width:100%;height:690px;inset:75px 0 auto}.hero-photo-layer:before{display:none}.hero-photo-layer:after{background:radial-gradient(at 50% 42%,#dcdcdc09,#0000 66%);inset:7% 15% 8%}.hero-photo{filter:none;height:660px;top:0;bottom:auto;right:50%;transform:translate(50%);-webkit-mask-image:linear-gradient(#000 0% 84%,#0000 100%);mask-image:linear-gradient(#000 0% 84%,#0000 100%)}.hero-content{width:100%;padding-top:735px;padding-bottom:122px}}@media (width<=490px){.hero,.hero-layout{min-height:max(1160px,100svh)}.hero-photo-layer{height:570px;top:74px}.hero-photo{height:550px;top:0;bottom:auto;right:50%;transform:translate(50%);-webkit-mask-image:linear-gradient(#000 0% 85%,#0000 100%);mask-image:linear-gradient(#000 0% 85%,#0000 100%)}.hero-content{padding-top:625px;padding-bottom:118px}}@media (width<=360px){.hero-photo-layer{height:540px}.hero-photo{height:516px}.hero-content{padding-top:590px}}.hero:before{content:"";z-index:0;aspect-ratio:1;width:min(92vw,1220px);height:auto;box-shadow:none;pointer-events:none;background:0 0;border:1px solid #dcdcdc16;border-radius:50%;display:block;position:absolute;top:53%;left:77%;transform:translate(-50%,-50%)}.hero-photo-layer:before{content:none;display:none}.hero-photo{-webkit-mask-image:linear-gradient(#000 0% 76%,#000000f0 81%,#000000b3 88%,#0000004d 95%,#0000 100%);mask-image:linear-gradient(#000 0% 76%,#000000f0 81%,#000000b3 88%,#0000004d 95%,#0000 100%)}@media (width>=1041px) and (width<=1190px){.hero-content{width:57%}.hero h1{font-size:clamp(57px,5.85vw,70px)}.hero-photo-layer{width:48%}.hero-photo{height:75%;bottom:0;right:0}.hero:before{width:min(90vw,1060px);left:76%}}@media (width>=781px) and (width<=1040px){.hero{height:auto;min-height:max(1100px,100svh);max-height:none}.hero-layout{align-items:flex-start;height:auto;min-height:max(1100px,100svh)}.hero-photo-layer{width:100%;height:535px;inset:75px 0 auto}.hero-photo{filter:none;height:505px;top:0;bottom:auto;right:50%;transform:translate(50%)}.hero-content{width:100%;padding-top:580px;padding-bottom:135px}.hero h1{font-size:clamp(59px,7.3vw,77px)}.hero-description{max-width:650px}.hero-meta{margin-top:44px}.hero:before{display:none}}@media (width<=780px){.hero:before{display:none}.hero-photo{-webkit-mask-image:linear-gradient(#000 0% 74%,#000000c2 82%,#00000057 92%,#0000 100%);mask-image:linear-gradient(#000 0% 74%,#000000c2 82%,#00000057 92%,#0000 100%)}}.hero:before{content:"";z-index:0;aspect-ratio:1;box-sizing:border-box;width:min(106vw,1750px);height:auto;box-shadow:none;filter:none;opacity:1;pointer-events:none;background:0 0;border:1px solid #0000;border-color:#e1e1e11a #0000 #0000 #e1e1e11b;border-radius:50%;display:block;position:absolute;top:55%;left:99%;transform:translate(-50%,-50%)rotate(-9deg)}@media (width>=1041px) and (width<=1190px){.hero:before{width:1030px;top:57%;left:102%;transform:translate(-50%,-50%)rotate(-9deg)}}@media (width<=1040px){.hero:before{content:none;display:none}}@media (width>=701px) and (width<=1040px){.hero{height:auto;min-height:max(650px,100svh);max-height:none}.hero-layout{align-items:center;height:auto;min-height:max(650px,100svh)}.hero-content{width:57%;padding-top:88px;padding-bottom:86px}.hero-photo-layer{width:53%;height:100%;inset:0 0 0 auto;-webkit-mask-image:linear-gradient(90deg,#0000,#000 21% 100%);mask-image:linear-gradient(90deg,#0000,#000 21% 100%)}.hero-photo{height:clamp(430px,68svh,650px);top:clamp(108px,14svh,165px);bottom:auto;right:-2%;transform:none}.hero h1{letter-spacing:-.07em;text-wrap:nowrap;font-size:clamp(37px,4.85vw,55px);line-height:1.055}.hero-editorial{margin-bottom:17px;font-size:clamp(26px,3.3vw,35px)}.hero-specialty{white-space:normal;margin-bottom:15px;font-size:13px;line-height:1.48}.hero-description{max-width:440px;font-size:14px;line-height:1.6}.hero-actions{gap:10px;margin-top:26px}.hero-actions .btn{min-width:0;padding:13px 19px;font-size:13px}.hero-meta{white-space:normal;gap:12px 15px;max-width:355px;margin-top:32px;font-size:11px}.hero-meta .meta-separator{display:none}.scroll-cue{bottom:15px}}@media (width<=700px){.hero{height:auto;min-height:max(735px,100svh);max-height:none}.hero-layout{align-items:flex-start;height:auto;min-height:max(735px,100svh)}.hero-photo-layer{width:100%;height:300px;inset:64px 0 auto;overflow:hidden}.hero-photo{filter:none;height:325px;top:0;bottom:auto;right:50%;transform:translate(50%);-webkit-mask-image:linear-gradient(#000 0% 69%,#000000db 79%,#00000038 88%,#0000 96%);mask-image:linear-gradient(#000 0% 69%,#000000db 79%,#00000038 88%,#0000 96%)}.hero-content{width:100%;padding-top:356px;padding-bottom:91px}.hero h1{letter-spacing:-.065em;text-wrap:balance;margin-bottom:9px;font-size:clamp(37px,8.2vw,55px);line-height:1.06}.hero-editorial{margin-bottom:16px;font-size:clamp(24px,5.2vw,33px)}.hero-specialty{white-space:normal;margin-bottom:12px;font-size:13px;line-height:1.45}.hero-description{max-width:550px;font-size:13px;line-height:1.55}.hero-actions{flex-wrap:wrap;gap:10px;margin-top:21px}.hero-actions .btn{gap:10px;min-width:0;padding:12px 16px;font-size:13px}.hero-meta{white-space:normal;gap:12px 16px;margin-top:25px;font-size:11px}.hero-meta>span:not(.meta-separator){width:auto}.scroll-cue{bottom:14px}}@media (width<=420px){.hero-photo-layer{height:282px;top:59px}.hero-photo{height:310px}.hero-content{padding-top:334px;padding-bottom:83px}.hero h1{font-size:clamp(35px,9.3vw,40px)}.hero-editorial{font-size:clamp(24px,6vw,28px)}.hero-meta{gap:10px 13px}}@media (width<=360px){.hero-photo-layer{height:255px;top:58px}.hero-photo{height:287px}.hero-content{padding-top:306px}.hero h1{font-size:34px}.hero-actions .btn{gap:8px;padding:11px 13px;font-size:12px}}.timeline-card-meta{justify-content:flex-end;align-items:center;gap:12px;min-width:0;display:flex}.timeline-brand-badge{background:linear-gradient(135deg,#161616,#0d0d0d);border:1px solid #343434;border-radius:14px;flex:0 0 54px;place-items:center;width:54px;height:54px;padding:6px;display:grid;box-shadow:0 8px 18px #00000040}.timeline-brand-badge img{object-fit:contain;border-radius:10px;width:100%;height:100%;display:block}.training-mark-logo{background:linear-gradient(135deg,#161616,#0d0d0d);border:1px solid #393939;padding:8px;overflow:hidden}.training-mark-logo img{object-fit:contain;border-radius:8px;width:100%;height:100%;display:block}.training-mark-logo-trinity{background:#2b0c2d;border-color:#4c3050}.project-brand{align-items:center;gap:16px;margin:0 0 22px;display:flex}.project-brand-badge{background:linear-gradient(135deg,#4e8073,#3c655b);border:1px solid #2f4a44;border-radius:18px;place-items:center;width:132px;min-width:132px;height:72px;padding:8px 12px;display:grid;box-shadow:0 12px 28px #0000003d}.project-brand-badge img{object-fit:contain;border-radius:10px;width:100%;height:100%;display:block}.project-brand-note{letter-spacing:.18em;color:#a7b6b0;font-size:11px}.project-links .btn{gap:12px}.project-inline-link{gap:8px}.project-inline-link:hover{gap:12px}.contact-inner .section-kicker{margin-bottom:38px}.contact-inner h2{margin-bottom:12px}.contact-inner>p:not(.section-kicker){margin-bottom:30px}.contact-socials{flex-wrap:wrap;justify-content:center;gap:28px;margin-top:38px}.contact-socials a{color:#bfbfbf;align-items:center;gap:10px;font-size:13px;display:inline-flex}.contact-socials a svg{color:#e5e5e5}.project-showcase{min-height:680px}.phone-shot{aspect-ratio:610/1356;border-width:4px;border-radius:26px;width:clamp(168px,30.5%,218px);height:auto;top:116px}.phone-shot img{object-fit:cover;object-position:top center;width:100%;height:100%;display:block}.phone-left{left:7%}.phone-center{width:clamp(184px,33%,236px);top:82px;left:34.2%}.phone-right{left:60%}@media (width<=1120px){.timeline-brand-badge{border-radius:12px;flex-basis:48px;width:48px;height:48px}.project-brand{gap:14px;margin-bottom:18px}.project-brand-badge{width:122px;min-width:122px;height:68px}.project-showcase{min-height:620px}.phone-shot{width:clamp(148px,29.5%,195px);top:120px}.phone-center{width:clamp(165px,32%,214px);top:93px}}@media (width<=880px){.project-showcase{min-height:560px}.phone-shot{border-radius:23px;width:clamp(136px,28.5%,178px);top:84px}.phone-center{width:clamp(153px,31%,194px);top:62px}}@media (width<=640px){.timeline-card-meta{justify-content:flex-start;margin-top:10px}.timeline-brand-badge{border-radius:11px;flex-basis:44px;width:44px;height:44px;padding:5px}.training-mark-logo{padding:6px}.project-brand{flex-wrap:wrap;align-items:flex-start;gap:12px}.project-brand-badge{border-radius:15px;width:108px;min-width:108px;height:60px}.project-brand-note{letter-spacing:.16em;font-size:10px}.project-links{gap:26px}.project-showcase{min-height:455px}.phone-shot{border-width:3px;border-radius:20px;width:31%;min-width:92px;top:72px}.phone-center{width:34%;min-width:104px;top:49px;left:33%}.phone-left{left:4.5%}.phone-right{left:61%}}@media (width<=420px){.project-showcase{min-height:405px}.phone-shot{min-width:84px;top:62px}.phone-center{min-width:94px;top:43px}.contact-socials{gap:18px 24px}}.project-brand-badge{justify-content:center;align-items:center;display:flex;overflow:hidden}.project-brand-badge img{object-fit:contain;flex:0 auto;width:auto;max-width:100%;height:auto;max-height:100%;display:block}.timeline-card-top{align-items:center}.timeline-card-meta{gap:14px}.timeline-brand-badge{border-radius:16px;flex:0 0 76px;width:76px;height:76px;padding:5px}.timeline-kind{max-width:133px;line-height:1.35}.project-brand-badge{background:#38695f;width:176px;min-width:176px;height:96px;padding:5px;overflow:hidden}.project-brand-badge img{object-fit:cover;object-position:50% 49%;border-radius:10px;width:100%;max-width:none;height:100%;max-height:none;display:block;transform:none}.contact-socials a svg{flex:none}@media (width<=1120px){.timeline-brand-badge{border-radius:14px;flex-basis:66px;width:66px;height:66px}.project-brand-badge{width:160px;min-width:160px;height:88px}}@media (width<=640px){.timeline-card-top{flex-wrap:wrap}.timeline-card-meta{justify-content:space-between;gap:12px;width:100%;max-width:100%;margin-top:10px}.timeline-brand-badge{border-radius:13px;flex-basis:60px;width:60px;height:60px}.timeline-kind{text-align:right;flex:1;max-width:none}.project-brand-badge{width:142px;min-width:142px;height:78px}}@media (width<=420px){.timeline-brand-badge{flex-basis:56px;width:56px;height:56px}.project-brand-badge{width:132px;min-width:132px;height:74px}}.timeline-brand-badge{overflow:hidden}.timeline-brand-gadisa img{transform-origin:50%;transform:scale(1.34)}.timeline-card-meta{justify-content:flex-end;align-items:center;gap:7px}.timeline-kind{text-align:left;letter-spacing:.075em;max-width:108px;line-height:1.35}.training-mark-logo-trinity img{transform-origin:50%;transform:scale(1.17)}.project-links{gap:20px clamp(27px,2.8vw,42px)}.project-links .btn{gap:7px;transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s,border-color .3s}.project-links .btn:hover{transform:translateY(-2px);box-shadow:0 0 23px #fff2,0 8px 26px #0008}.project-links .project-inline-link{white-space:nowrap;align-items:center;gap:7px;padding:9px 1px 10px;transition:color .28s,text-shadow .28s,gap .28s;display:inline-flex;position:relative}.project-links .project-inline-link:after{content:"";transform-origin:0;opacity:.4;background:linear-gradient(90deg,#777,#f6f6f6 52%,#777);height:1px;transition:transform .34s cubic-bezier(.22,1,.36,1),opacity .34s,box-shadow .34s;position:absolute;bottom:2px;left:0;right:0;transform:scaleX(.2)}.project-links .project-inline-link:hover{color:#fff;text-shadow:0 0 12px #ffffff35;gap:7px}.project-links .project-inline-link:hover:after{opacity:1;transform:scaleX(1);box-shadow:0 0 11px #ffffff60}.project-links a svg{flex-shrink:0;transition:transform .3s cubic-bezier(.22,1,.36,1),filter .3s}.project-links .btn:hover svg,.project-links .project-inline-link:hover svg{filter:drop-shadow(0 0 4px #fff5);transform:translate(2px,-2px)}.project-links .project-inline-link:last-child:hover svg{transform:translateY(2px)}@media (width<=640px){.timeline-card-meta{gap:8px}.timeline-kind{text-align:right;max-width:none}.project-links{gap:15px 25px}}@media (prefers-reduced-motion:reduce){.project-links a svg,.project-links .btn,.project-links .project-inline-link,.project-links .project-inline-link:after{transition:none!important}}.timeline-brand-badge{isolation:isolate;background:linear-gradient(145deg,#272727,#111 78%);border:1px solid #454545;position:relative;box-shadow:inset 0 1px #ffffff1a,0 8px 18px #00000040}.timeline-brand-badge:after{content:"";pointer-events:none;z-index:1;border:1px solid #ffffff2e;border-radius:10px;position:absolute;inset:5px;box-shadow:inset 0 1px 3px #ffffff1c,0 0 0 1px #00000042}.timeline-card-top{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.timeline-card-meta{grid-template-columns:76px 76px;justify-self:end;align-items:center;gap:7px;width:auto;max-width:none;margin:0 0 0 auto;display:grid}.timeline-kind{text-align:left;overflow-wrap:normal;flex:none;width:76px;max-width:76px;margin:0;line-height:1.32}.timeline-brand-badge{justify-self:center}@media (hover:hover){.timeline-card:hover,.technical-card:hover,.training-row:hover{border-color:#636363;transform:translateY(-2px);box-shadow:0 15px 37px #00000061,inset 0 0 0 1px #ffffff08}}.technical-card:hover:before{opacity:0}.training-pill{transition:background-color .3s,border-color .3s,color .3s,box-shadow .3s}@media (hover:hover){.training-pill:hover{color:#f3f3f3;background:#242424;border-color:#626262;box-shadow:0 0 10px #ffffff0f}}.project-showcase .phone-shot{top:50%}.project-showcase .phone-left{transform:translateY(calc(30px - 50%))rotate(-8deg)}.project-showcase .phone-center{transform:translateY(calc(-50% - 5px))rotate(0)}.project-showcase .phone-right{transform:translateY(calc(32px - 50%))rotate(8deg)}@media (hover:hover){.project-showcase .phone-left:hover{transform:translateY(calc(16px - 50%))rotate(-6deg)}.project-showcase .phone-center:hover{transform:translateY(calc(-50% - 20px))rotate(0)}.project-showcase .phone-right:hover{transform:translateY(calc(18px - 50%))rotate(6deg)}}@media (hover:none){.project-showcase .phone-left:hover{transform:translateY(calc(30px - 50%))rotate(-8deg)}.project-showcase .phone-center:hover{transform:translateY(calc(-50% - 5px))rotate(0)}.project-showcase .phone-right:hover{transform:translateY(calc(32px - 50%))rotate(8deg)}}@media (width<=1120px){.timeline-card-meta{grid-template-columns:66px 72px;gap:7px}.timeline-kind{width:72px;max-width:72px}}@media (width<=640px){.timeline-card-top{grid-template-columns:1fr;gap:7px}.timeline-card-meta{grid-template-columns:60px minmax(0,1fr);justify-self:stretch;gap:10px;width:100%;margin-top:5px}.timeline-kind{text-align:right;justify-self:end;width:auto;max-width:none}.timeline-brand-badge:after{border-radius:8px;inset:4px}}@media (width<=420px){.timeline-card-meta{grid-template-columns:56px minmax(0,1fr)}}@media (hover:hover){.motion-ready .technical-card.reveal-on-scroll.is-visible:hover,.motion-ready .training-row.reveal-on-scroll.is-visible:hover{border-color:#636363;transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .42s cubic-bezier(.22,1,.36,1),border-color .42s,box-shadow .42s;transform:translateY(-2px);box-shadow:0 15px 37px #00000061,inset 0 0 0 1px #ffffff08}}@media (prefers-reduced-motion:reduce){.timeline-card,.technical-card,.training-row,.training-pill,.phone-shot{transition:none!important}}.timeline-entry:first-child .timeline-brand-badge{--brand-rgb:36,110,140}.timeline-entry:nth-child(2) .timeline-brand-badge{--brand-rgb:49,64,162}.timeline-entry:nth-child(3) .timeline-brand-badge{--brand-rgb:11,156,176}.timeline-entry:nth-child(4) .timeline-brand-badge{--brand-rgb:19,143,211}.timeline-entry:nth-child(5) .timeline-brand-badge{--brand-rgb:16,59,146}.timeline-entry:nth-child(6) .timeline-brand-badge{--brand-rgb:74,130,111}.timeline-brand-badge{background:linear-gradient(145deg,rgba(var(--brand-rgb),.34),rgba(var(--brand-rgb),.17) 55%,#121212);border:1px solid rgba(var(--brand-rgb),.52);border-radius:14px;padding:5px;overflow:hidden;box-shadow:inset 0 1px #ffffff26,0 8px 18px #0000004f}.timeline-brand-badge:after{border-radius:inherit;box-shadow:inset 0 0 0 3px rgba(var(--brand-rgb),.21), inset 0 0 10px rgba(var(--brand-rgb),.13);pointer-events:none;border:0;inset:0}.timeline-brand-badge img{border-radius:9px}.timeline-period{font-size:13px}.timeline-kind{font-size:10px}.timeline-card .timeline-detail{font-size:14px;line-height:1.76}.technical-description p{font-size:14px;line-height:1.73}.training-info p{font-size:14px;line-height:1.71}.training-pill{font-size:12px}.training-pending-note{font-size:12.5px;line-height:1.56}@media (width<=640px){.timeline-card .timeline-detail{font-size:13.5px}.technical-description p{font-size:13.7px}.training-info p{font-size:13.5px}.timeline-kind{font-size:9.5px}}.timeline-card,.technical-card,.training-row{isolation:isolate;position:relative;overflow:hidden}.timeline-card:after,.technical-card:after,.training-row:after{content:"";border-radius:inherit;pointer-events:none;z-index:0;opacity:0;background:radial-gradient(90% 42% at 50% -12%,#ffffff18,#0000 85%);transition:opacity .38s;position:absolute;inset:0;box-shadow:inset 0 1px #ffffff16}.timeline-card>*,.technical-card>*,.training-row>*{z-index:1;position:relative}@media (hover:hover){.timeline-card:hover:after,.technical-card:hover:after,.training-row:hover:after{opacity:1}.timeline-card:hover,.technical-card:hover,.training-row:hover,.motion-ready .technical-card.reveal-on-scroll.is-visible:hover,.motion-ready .training-row.reveal-on-scroll.is-visible:hover{box-shadow:0 15px 37px #00000061,0 0 20px #ffffff0b,inset 0 0 0 1px #ffffff0a}}@media (prefers-reduced-motion:no-preference){.hero-content{animation:none}.hero-intro-ready .hero h1,.hero-intro-ready .hero-editorial,.hero-intro-ready .hero-specialty,.hero-intro-ready .hero-description,.hero-intro-ready .hero-actions,.hero-intro-ready .hero-meta{animation:.68s cubic-bezier(.22,1,.36,1) both v20-hero-enter}.hero-intro-ready .hero h1{animation-delay:60ms}.hero-intro-ready .hero-editorial{animation-delay:.14s}.hero-intro-ready .hero-specialty{animation-delay:.21s}.hero-intro-ready .hero-description{animation-delay:.27s}.hero-intro-ready .hero-actions{animation-delay:.34s}.hero-intro-ready .hero-meta{animation-delay:.4s}.hero-intro-ready .hero-photo-layer{animation:.87s ease-out 80ms both v20-photo-enter}.hero-intro-ready .hero:before{animation:1s ease-out .18s both v20-arc-enter}@keyframes v20-hero-enter{0%{opacity:.15;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes v20-photo-enter{0%{opacity:.1}to{opacity:1}}@keyframes v20-arc-enter{0%{opacity:0}to{opacity:1}}.motion-ready .reveal-on-scroll{transition-duration:.62s;transform:translateY(12px)}.motion-ready .reveal-on-scroll.is-visible{transform:translateY(0)}.motion-ready .timeline-entry:nth-child(2n){transition-delay:70ms}.motion-ready .training-row:nth-child(2){transition-delay:90ms}.motion-ready .technical-card:nth-child(3n+2){transition-delay:55ms}.motion-ready .technical-card:nth-child(3n+3){transition-delay:.11s}}@media (width<=700px) and (prefers-reduced-motion:no-preference){.hero-intro-ready .hero h1,.hero-intro-ready .hero-editorial,.hero-intro-ready .hero-specialty,.hero-intro-ready .hero-description,.hero-intro-ready .hero-actions,.hero-intro-ready .hero-meta{animation-duration:.46s;animation-delay:0s}.hero-intro-ready .hero-photo-layer{animation-duration:.5s;animation-delay:0s}}@media (prefers-reduced-motion:reduce){.timeline-card:after,.technical-card:after,.training-row:after{transition:none!important}}.timeline-brand-badge,.training-mark.training-mark-logo{box-sizing:border-box;isolation:auto;background:0 0;border:1px solid #ebebeb33;border-radius:14px;flex:0 0 76px;place-items:center;width:76px;height:76px;padding:0;display:grid;position:relative;overflow:hidden;box-shadow:0 7px 17px #0003}.timeline-brand-badge:before,.timeline-brand-badge:after,.training-mark.training-mark-logo:before,.training-mark.training-mark-logo:after{content:none;display:none}.timeline-brand-badge img,.training-mark.training-mark-logo img,.timeline-brand-gadisa img,.training-mark-logo-trinity img{object-fit:cover;object-position:center;filter:none;border:0;border-radius:13px;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;display:block;transform:none}@media (width<=1120px){.timeline-brand-badge,.training-mark.training-mark-logo{border-radius:13px;flex-basis:66px;width:66px;height:66px}.timeline-brand-badge img,.training-mark.training-mark-logo img{border-radius:12px}}@media (width<=640px){.timeline-brand-badge,.training-mark.training-mark-logo{border-radius:12px;flex-basis:60px;width:60px;height:60px}.timeline-brand-badge img,.training-mark.training-mark-logo img{border-radius:11px}}@media (width<=420px){.timeline-brand-badge,.training-mark.training-mark-logo{border-radius:11px;flex-basis:56px;width:56px;height:56px}.timeline-brand-badge img,.training-mark.training-mark-logo img{border-radius:10px}}.timeline-card:after,.technical-card:after,.training-row:after{content:none;display:none}@media (hover:hover) and (pointer:fine){.timeline-card:hover,.technical-card:hover,.training-row:hover,body.motion-ready .technical-card.reveal-on-scroll.is-visible:hover,body.motion-ready .training-row.reveal-on-scroll.is-visible:hover{z-index:3;border-color:#ffffffb8;transition:transform .42s cubic-bezier(.22,1,.36,1),border-color .42s,box-shadow .46s cubic-bezier(.22,1,.36,1);position:relative;transform:translateY(-3px);box-shadow:0 0 0 1px #ffffff42,0 0 11px #ffffff4f,0 0 27px #ffffff2e,0 0 48px #ffffff14,0 17px 38px #0000006b}.technical-card:hover:before{opacity:0}}@media (prefers-reduced-motion:no-preference){.hero-intro-ready .hero h1,.hero-intro-ready .hero-editorial,.hero-intro-ready .hero-specialty,.hero-intro-ready .hero-description,.hero-intro-ready .hero-actions,.hero-intro-ready .hero-meta{animation:1.04s cubic-bezier(.18,.7,.25,1) both v21-hero-enter}.hero-intro-ready .hero h1{animation-delay:40ms}.hero-intro-ready .hero-editorial{animation-delay:.19s}.hero-intro-ready .hero-specialty{animation-delay:.3s}.hero-intro-ready .hero-description{animation-delay:.39s}.hero-intro-ready .hero-actions{animation-delay:.51s}.hero-intro-ready .hero-meta{animation-delay:.62s}.hero-intro-ready .hero-photo-layer{animation:1.34s cubic-bezier(.18,.7,.25,1) .13s both v21-photo-enter}.hero-intro-ready .hero:before{animation:1.46s ease-out .22s both v21-arc-enter}@keyframes v21-hero-enter{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes v21-photo-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes v21-arc-enter{0%{opacity:0}to{opacity:1}}body.motion-ready .reveal-on-scroll{opacity:0;transition:opacity .94s cubic-bezier(.18,.7,.25,1),transform .94s cubic-bezier(.18,.7,.25,1),border-color .42s,box-shadow .46s;transform:translateY(26px)}body.motion-ready .reveal-on-scroll.is-visible{opacity:1;transform:translateY(0)}body.motion-ready .timeline-entry:nth-child(2n){transition-delay:.1s}body.motion-ready .training-row:nth-child(2){transition-delay:.16s}body.motion-ready .technical-card:nth-child(3n+2){transition-delay:.11s}body.motion-ready .technical-card:nth-child(3n+3){transition-delay:.22s}body.motion-ready .technical-card.reveal-on-scroll.is-visible:hover,body.motion-ready .training-row.reveal-on-scroll.is-visible:hover{transform:translateY(-3px)}}@media (width<=700px) and (prefers-reduced-motion:no-preference){.hero-intro-ready .hero h1,.hero-intro-ready .hero-editorial,.hero-intro-ready .hero-specialty,.hero-intro-ready .hero-description,.hero-intro-ready .hero-actions,.hero-intro-ready .hero-meta{animation-duration:.82s}.hero-intro-ready .hero h1{animation-delay:20ms}.hero-intro-ready .hero-editorial{animation-delay:.12s}.hero-intro-ready .hero-specialty{animation-delay:.2s}.hero-intro-ready .hero-description{animation-delay:.26s}.hero-intro-ready .hero-actions{animation-delay:.33s}.hero-intro-ready .hero-meta{animation-delay:.39s}.hero-intro-ready .hero-photo-layer{animation-duration:1.05s;animation-delay:80ms}.hero-intro-ready .hero:before{animation-duration:1.08s}}@media (prefers-reduced-motion:reduce){.hero-intro-ready .hero h1,.hero-intro-ready .hero-editorial,.hero-intro-ready .hero-specialty,.hero-intro-ready .hero-description,.hero-intro-ready .hero-actions,.hero-intro-ready .hero-meta,.hero-intro-ready .hero-photo-layer,.hero-intro-ready .hero:before{opacity:1!important;animation:none!important}}.timeline-card,.technical-card,.training-row{transition:transform .48s cubic-bezier(.22,1,.36,1),border-color .44s,box-shadow .5s cubic-bezier(.22,1,.36,1)}@media (hover:hover) and (pointer:fine){.timeline-card:hover,.technical-card:hover,.training-row:hover,body.motion-ready .technical-card.reveal-on-scroll.is-visible:hover,body.motion-ready .training-row.reveal-on-scroll.is-visible:hover,.timeline-entry:nth-child(4) .timeline-card:hover{border-color:#ffffff94;transform:translateY(-3px);box-shadow:0 0 0 1px #ffffff2e,0 0 7px #ffffff2b,0 0 16px #ffffff18,0 0 28px #ffffff0a,0 14px 32px #0006}}.timeline-entry:nth-child(4) .timeline-brand-badge{background:0 0;border:1px solid #ebebeb33;box-shadow:0 7px 17px #0003}.about-method{margin-top:clamp(52px,6vw,88px)}.about-method-heading{margin:0 0 28px}.about-method-kicker{color:#adadad;margin:0 0 14px}.about-method-heading h3{color:#eee;letter-spacing:-.047em;margin:0;font-size:clamp(30px,3.1vw,44px);font-weight:600;line-height:1.12}.about-method-heading h3 em{color:#d0d0d0;font-family:Iowan Old Style,Baskerville,Georgia,serif;font-style:italic;font-weight:400}.about-method-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.about-method-card{background:linear-gradient(145deg,#171717,#0b0b0b 75%);border:1px solid #343434;border-radius:15px;flex-direction:column;min-width:0;min-height:196px;padding:27px 27px 25px;transition:transform .42s cubic-bezier(.22,1,.36,1),border-color .42s,box-shadow .48s cubic-bezier(.22,1,.36,1);display:flex}.about-method-number{letter-spacing:.17em;color:#939393;font-size:10px;font-weight:600}.about-method-card h4{letter-spacing:-.035em;color:#f0f0f0;margin:22px 0 11px;font-size:23px;font-weight:600;line-height:1.2}.about-method-card p{color:#b7b7b7;max-width:34ch;margin:0;font-size:14px;line-height:1.72}.about-method-note{color:#a2a2a2;border-left:1px solid #777;max-width:960px;margin:23px 0 0;padding-left:17px;font-size:13.5px;line-height:1.76}.about-focus-wide{width:100%;max-width:none;margin-top:clamp(40px,5vw,65px);padding:clamp(26px,3.2vw,38px) clamp(27px,3.5vw,45px)}.about-focus-wide h3{margin:11px 0 19px}.about-focus-wide p{color:#b6b6b6;max-width:930px;margin:0 0 12px;font-size:14px;line-height:1.7}.about-focus-wide .focus-topics{margin-top:21px}.about-timeline-link{margin-top:27px}@media (hover:hover) and (pointer:fine){.about-method-card:hover{border-color:#ffffff94;transform:translateY(-3px);box-shadow:0 0 0 1px #ffffff2e,0 0 7px #ffffff2b,0 0 16px #ffffff18,0 0 28px #ffffff0a,0 14px 32px #0006}body.motion-ready .about-method-card.reveal-on-scroll.is-visible:hover{transform:translateY(-3px)}.timeline-entry.is-highlight .timeline-card:hover{z-index:3;border-color:#ffffff94;position:relative;transform:translateY(-3px);box-shadow:0 0 0 1px #ffffff2e,0 0 7px #ffffff2b,0 0 16px #ffffff18,0 0 28px #ffffff0a,0 14px 32px #0006}}.timeline-brand-gadisa{overflow:hidden}.timeline-brand-gadisa img{transform-origin:50%;object-position:center center;transform:scale(1.27)}@media (width<=950px){.about-method-grid{gap:12px}.about-method-card{min-height:190px;padding:24px 20px}.about-method-card h4{font-size:21px}}@media (width<=700px){.about-method{margin-top:42px}.about-method-grid{grid-template-columns:1fr;gap:13px}.about-method-card{min-height:0;padding:23px 23px 21px}.about-method-card h4{margin:12px 0 7px}.about-method-card p{max-width:none}.about-method-note{margin-top:19px;font-size:13px}.about-focus-wide{margin-top:38px;padding:25px 22px}}@media (prefers-reduced-motion:reduce){.about-method-card{transition:none}}@media (width>=1031px) and (width<=1280px){.main-nav{gap:clamp(11px,1.5vw,20px)}.header-inner{gap:clamp(15px,2.1vw,32px)}}.main-nav a.nav-cv{color:#f5f5f5;text-shadow:0 0 8px #ffffff61,0 0 21px #ffffff2b;isolation:isolate}.main-nav a.nav-cv:before{opacity:1;background:linear-gradient(90deg,#ffffff2e,#f6f6f6 42%,#ddd 75%,#fff3);height:2px;bottom:-19px;transform:scaleX(1);box-shadow:0 0 8px #ffffffab,0 0 17px #ffffff40}.main-nav a.nav-cv:hover,.main-nav a.nav-cv:focus-visible{color:#fff;text-shadow:0 0 10px #ffffffc7,0 0 26px #ffffff52}.main-nav a.nav-cv:focus-visible{outline-offset:8px;border-radius:2px;outline:1px solid #cfcfcf}.cv-dialog{box-sizing:border-box;color:#f2f2f2;background:radial-gradient(at 78% 0,#ffffff17,#0000 52%),linear-gradient(142deg,#161616,#090909 82%);border:1px solid #555;border-radius:20px;width:min(520px,100% - 32px);max-width:520px;max-height:calc(100dvh - 38px);margin:auto;padding:0;position:fixed;inset:0;overflow:auto;box-shadow:0 0 1px #fff5,0 22px 90px #000000d1,0 0 55px #ffffff0f}.cv-dialog::backdrop{-webkit-backdrop-filter:blur(9px);background:#000000c2}.cv-dialog[open]{animation:.27s cubic-bezier(.22,1,.36,1) both cv-dialog-appear}@keyframes cv-dialog-appear{0%{opacity:0;transform:translateY(13px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}.cv-dialog-panel{padding:clamp(30px,5vw,45px);position:relative}.cv-dialog-close{cursor:pointer;color:#bcbcbc;background:0 0;border:1px solid #0000;border-radius:100%;justify-content:center;align-items:center;width:40px;height:40px;transition:color .2s,border-color .2s,background .2s;display:flex;position:absolute;top:19px;right:22px}.cv-dialog-close:hover,.cv-dialog-close:focus-visible{color:#fff;background:#ffffff10;border-color:#777}.cv-dialog-eyebrow{color:#b5b5b5;letter-spacing:.18em;margin:0 44px 22px 0;font-size:10px;font-weight:600;line-height:1.6;display:block}.cv-dialog h2{color:#f0f0f0;letter-spacing:-.052em;margin:0 0 18px;font-size:clamp(31px,5vw,44px);font-weight:600;line-height:1.15}.cv-dialog h2 em{color:#c5c5c5;font-family:Iowan Old Style,Baskerville,Georgia,serif;font-weight:400}.cv-dialog-description{color:#b9b9b9;max-width:43ch;margin:0 0 30px;font-size:15px;line-height:1.8}.cv-dialog-actions{flex-wrap:wrap;align-items:center;gap:15px 24px;display:flex}.cv-dialog-primary{white-space:nowrap}.cv-dialog-secondary{color:#c6c6c6;font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #646464;padding:9px 0;font-size:13px;transition:color .2s,border-color .2s}.cv-dialog-secondary:hover,.cv-dialog-secondary:focus-visible{color:#fff;border-color:#fff}@media (width<=1030px){.main-nav a.nav-cv{width:max-content;max-width:100%}.main-nav a.nav-cv:before{width:calc(100% - 8px);display:block;bottom:5px;left:4px;right:auto}}@media (prefers-reduced-motion:reduce){.cv-dialog[open]{animation:none}}.main-nav a.nav-cv{color:#f4f4f4;text-shadow:0 0 6px #ffffffa1,0 0 16px #ffffff47,0 0 30px #ffffff1c;filter:drop-shadow(0 0 5px #ffffff24);font-weight:600;transition:color .3s,text-shadow .3s,filter .3s}.main-nav a.nav-cv:before,.main-nav a.nav-cv:after{content:none!important;display:none!important}.main-nav a.nav-cv:hover,.main-nav a.nav-cv:focus-visible{color:#fff;filter:drop-shadow(0 0 8px #ffffff3d);text-shadow:0 0 7px #ffffffeb,0 0 19px #ffffff87,0 0 36px #ffffff40}.cv-dialog-primary{white-space:nowrap;min-width:0;gap:7px!important}.cv-dialog-primary svg{flex-shrink:0;transition:transform .3s cubic-bezier(.22,1,.36,1),filter .3s}.cv-dialog-primary:hover svg{filter:drop-shadow(0 0 4px #fff9);transform:translateY(2px)}.cv-dialog-secondary{color:#c9c9c9;white-space:nowrap;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;padding:9px 1px 10px;font-size:13px;transition:color .28s,text-shadow .28s,gap .28s;display:inline-flex;position:relative}.cv-dialog-secondary:after{content:"";transform-origin:0;opacity:.4;background:linear-gradient(90deg,#777,#f6f6f6 52%,#777);height:1px;transition:transform .34s cubic-bezier(.22,1,.36,1),opacity .34s,box-shadow .34s;position:absolute;bottom:2px;left:0;right:0;transform:scaleX(.2)}.cv-dialog-secondary:hover,.cv-dialog-secondary:focus-visible{color:#fff;text-shadow:0 0 12px #ffffff35;gap:7px}.cv-dialog-secondary:hover:after,.cv-dialog-secondary:focus-visible:after{opacity:1;transform:scaleX(1);box-shadow:0 0 11px #ffffff60}.cv-dialog-secondary svg{flex-shrink:0;transition:transform .3s cubic-bezier(.22,1,.36,1),filter .3s}.cv-dialog-secondary:hover svg,.cv-dialog-secondary:focus-visible svg{filter:drop-shadow(0 0 4px #fff5);transform:translate(-2px)}.training-certificate-link{color:#e1e1e1;white-space:nowrap;align-items:center;gap:7px;margin-top:15px;padding:9px 1px 10px;font-size:13px;transition:color .28s,text-shadow .28s,gap .28s;display:inline-flex;position:relative}.training-certificate-link:after{content:"";transform-origin:0;opacity:.4;background:linear-gradient(90deg,#777,#f6f6f6 52%,#777);height:1px;transition:transform .34s cubic-bezier(.22,1,.36,1),opacity .34s,box-shadow .34s;position:absolute;bottom:2px;left:0;right:0;transform:scaleX(.2)}.training-certificate-link:hover,.training-certificate-link:focus-visible{color:#fff;text-shadow:0 0 12px #ffffff35;gap:7px}.training-certificate-link:hover:after,.training-certificate-link:focus-visible:after{opacity:1;transform:scaleX(1);box-shadow:0 0 11px #ffffff60}.training-certificate-link svg{flex-shrink:0;transition:transform .3s cubic-bezier(.22,1,.36,1),filter .3s}.training-certificate-link:hover svg,.training-certificate-link:focus-visible svg{filter:drop-shadow(0 0 4px #fff5);transform:translate(2px,-2px)}@media (width<=640px){.cv-dialog-actions{gap:15px 21px}.cv-dialog-primary{justify-content:center;width:100%}}@media (prefers-reduced-motion:reduce){.cv-dialog-secondary,.cv-dialog-secondary:after,.cv-dialog-secondary svg,.training-certificate-link,.training-certificate-link:after,.training-certificate-link svg,.cv-dialog-primary svg{transition:none!important}}.hero-actions{flex-wrap:wrap;align-items:center}.hero-cv-link{color:#d3d3d3;white-space:nowrap;justify-content:center;align-items:center;margin-left:7px;padding:15px 5px 17px;font-size:14px;font-weight:550;line-height:1.3;text-decoration:none;transition:color .28s,text-shadow .28s;display:inline-flex;position:relative}.hero-cv-link:after{content:"";opacity:.44;transform-origin:0;background:linear-gradient(90deg,#ffffff4d,#e9e9e9,#ffffff4d);height:1px;transition:transform .32s cubic-bezier(.22,1,.36,1),opacity .32s,box-shadow .32s;position:absolute;bottom:7px;left:5px;right:5px;transform:scaleX(.32)}.hero-cv-link:hover,.hero-cv-link:focus-visible{color:#fff;text-shadow:0 0 13px #fff6}.hero-cv-link:hover:after,.hero-cv-link:focus-visible:after{opacity:1;transform:scaleX(1);box-shadow:0 0 9px #fff6}.cv-dialog-secondary,.cv-dialog-secondary:hover,.cv-dialog-secondary:focus-visible{gap:0}.training-mark.training-mark-big-school img{object-fit:cover}.certificate-dialog{box-sizing:border-box;color:#f4f4f4;background:radial-gradient(at 78% 0,#ffffff14,#0000 57%),linear-gradient(145deg,#181818,#090909 80%);border:1px solid #4c4c4e;border-radius:19px;width:min(880px,100% - 32px);max-width:880px;max-height:calc(100dvh - 26px);margin:auto;padding:0;position:fixed;inset:0;overflow:auto;box-shadow:0 0 1px #fff5,0 22px 85px #000d,0 0 55px #ffffff0c}.certificate-dialog::backdrop{-webkit-backdrop-filter:blur(10px);background:#000000c9}.certificate-dialog[open]{animation:.27s cubic-bezier(.22,1,.36,1) both cv-dialog-appear}.certificate-dialog-panel{padding:clamp(18px,3.4vw,36px);position:relative}.certificate-dialog .cv-dialog-eyebrow{margin:1px 45px 12px 0}.certificate-dialog h2{letter-spacing:-.045em;color:#f1f1f1;margin:0 0 7px;font-size:clamp(27px,3.3vw,38px);font-weight:600;line-height:1.15}.certificate-dialog h2 em{color:#bbb;font-family:Iowan Old Style,Baskerville,Georgia,serif;font-weight:400}.certificate-dialog-description{color:#b9b9b9;margin:0 0 22px;font-size:14px;line-height:1.6}.certificate-preview-figure{width:100%;margin:0}.certificate-preview-figure a{cursor:zoom-in;border:1px solid #393c40;border-radius:11px;transition:border-color .3s,box-shadow .3s;display:block;overflow:hidden}.certificate-preview-figure a:hover,.certificate-preview-figure a:focus-visible{border-color:#929292;box-shadow:0 0 26px #ffffff13}.certificate-preview-figure img{aspect-ratio:1560/1206;object-fit:contain;width:100%;height:auto;display:block}.certificate-preview-figure figcaption{color:#8e8e8e;margin-top:9px;font-size:11px}.certificate-dialog-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:13px 18px;margin-top:19px;display:flex}.certificate-dialog-actions .cv-dialog-secondary{padding:9px 1px 10px}.certificate-pdf-link{color:#dedede;align-items:center;gap:7px;padding:9px 1px 10px;font-size:13px;display:inline-flex;position:relative}.certificate-pdf-link:after{content:"";transform-origin:0;opacity:.4;background:#dedede;height:1px;transition:transform .3s,opacity .3s;position:absolute;bottom:2px;left:0;right:0;transform:scaleX(.2)}.certificate-pdf-link:hover,.certificate-pdf-link:focus-visible{color:#fff;text-shadow:0 0 12px #ffffff45}.certificate-pdf-link:hover:after,.certificate-pdf-link:focus-visible:after{opacity:1;transform:scaleX(1)}.certificate-pdf-link svg{transition:transform .3s}.certificate-pdf-link:hover svg{transform:translate(2px,-2px)}.contact-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:18px;display:flex}.contact-copy{color:#bdbdbd;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;padding:12px 2px;font-size:13px;transition:color .25s,text-shadow .25s;display:inline-flex;position:relative}.contact-copy:after{content:"";transform-origin:0;opacity:.3;background:#dedede;height:1px;transition:transform .27s,opacity .27s;position:absolute;bottom:5px;left:2px;right:2px;transform:scaleX(.18)}.contact-copy:hover,.contact-copy:focus-visible{color:#fff;text-shadow:0 0 11px #ffffff48}.contact-copy:hover:after,.contact-copy:focus-visible:after{opacity:1;transform:scaleX(1)}.contact-copy svg{flex-shrink:0}.contact-inner>p.contact-copy-feedback{color:#c9c9c9;min-height:16px;margin:9px 0 0;font-size:12px;line-height:1.3}@media (width<=600px){.hero-actions{gap:9px 12px}.hero-cv-link{margin-left:0;padding:14px 7px 15px;font-size:13px}.certificate-dialog{border-radius:14px;width:calc(100% - 18px);max-height:calc(100dvh - 18px)}.certificate-dialog-panel{padding:24px 15px 20px}.certificate-dialog .cv-dialog-eyebrow{letter-spacing:.12em;font-size:9px}.certificate-dialog-close{top:12px;right:9px}.certificate-dialog h2{font-size:28px}.certificate-dialog-description{margin-bottom:14px;font-size:13px}.certificate-dialog-actions{gap:11px}.contact-actions{gap:8px 18px}}@media (prefers-reduced-motion:reduce){.hero-cv-link,.hero-cv-link:after,.certificate-dialog[open],.certificate-preview-figure a,.certificate-pdf-link,.certificate-pdf-link:after,.certificate-pdf-link svg,.contact-copy,.contact-copy:after{transition:none!important;animation:none!important}}.training-mark.training-mark-big-school{background:#0623f5;border-color:#fff3}.training-mark.training-mark-big-school img{object-fit:cover;object-position:center}
