:root{--bg:#0b1217;--bg2:#101a20;--panel:#162126;--paper:#f3f2ec;--paper2:#e8e9e0;--text:#eff2ec;--muted:#a8b3b1;--dim:#788683;--acid:#b6ed80;--acid2:#89ce6b;--line:rgba(226,240,228,.13);--dark-line:#d7d8ce;--sans:'Manrope','DM Sans',Arial,sans-serif;--serif:'Instrument Serif',Georgia,serif;--max:1344px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:94px}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:15px;-webkit-font-smoothing:antialiased;overflow-x:hidden}
::selection{background:var(--acid);color:var(--bg)}
a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid var(--acid);outline-offset:5px}
.container{width:min(calc(100% - 104px),var(--max));margin-inline:auto}
.skip-link{position:absolute;z-index:999;top:-100px;left:12px;padding:10px 14px;background:var(--acid);color:var(--bg)}.skip-link:focus{top:10px}
#reading-progress{height:2px;background:var(--acid);position:fixed;top:0;left:0;z-index:999;right:0;transform-origin:left;transform:scaleX(0);pointer-events:none}
.site-header{height:88px;position:fixed;top:0;left:0;right:0;z-index:50;border-bottom:1px solid transparent;transition:background .25s,border-color .25s;backdrop-filter:blur(0)}.site-header.scrolled{background:rgba(11,18,23,.88);border-color:var(--line);backdrop-filter:blur(20px)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:100%;gap:28px}.brand{display:flex;align-items:center;gap:15px;white-space:nowrap}.brand-symbol,.footer-mark{font-weight:800;font-size:35px;letter-spacing:-4px;line-height:1}.brand-symbol span,.footer-mark span{color:var(--acid)}.brand-name{font-size:13px;font-weight:500;letter-spacing:-.15px}.brand-name strong{font-weight:800}.desktop-nav{display:flex;gap:38px;align-items:center;margin-left:auto;margin-right:36px}.desktop-nav a{color:#d8e0da;font-size:12px;font-weight:600;transition:color .2s}.desktop-nav a:hover{color:var(--acid)}.nav-contact{display:flex;align-items:center;justify-content:center;gap:16px;background:var(--acid);color:#102017;padding:15px 21px;font-size:12px;font-weight:800;border-radius:4px;transition:background .2s,transform .2s}.nav-contact:hover,.button-primary:hover{background:#caf4a4;transform:translateY(-2px)}.nav-contact span{font-size:16px;font-weight:500}.nav-actions{display:flex;align-items:center;gap:16px}.menu-toggle{display:none;border:1px solid var(--line);background:none;width:42px;height:42px;align-items:center;justify-content:center;flex-direction:column;gap:6px;cursor:pointer;border-radius:3px}.menu-toggle span{display:block;width:18px;height:1px;background:var(--text);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.mobile-nav{display:none}
.section{padding:148px 0}.section-kicker,.section-index,.eyebrow{font-size:10px;letter-spacing:2.1px;font-weight:800}.section-kicker{color:#67766e}.serif-muted,.section h2 em{font-family:var(--serif);font-style:italic;font-weight:400}
/* First fold — editorial typography + technical diagram */
.hero{padding:173px 0 0;min-height:775px;position:relative;isolation:isolate;background:radial-gradient(ellipse at 77% 24%,rgba(52,89,67,.12),transparent 36%),var(--bg);overflow:hidden}.hero-grid{position:absolute;inset:0;z-index:-2;opacity:.35;background-image:linear-gradient(to right,transparent calc(100% - 1px),rgba(143,173,152,.08) calc(100% - 1px)),linear-gradient(to bottom,transparent calc(100% - 1px),rgba(143,173,152,.08) calc(100% - 1px));background-size:82px 82px;mask-image:linear-gradient(90deg,transparent 18%,#000 100%)}.hero-glow{position:absolute;width:650px;height:650px;right:-260px;top:-165px;z-index:-1;border-radius:50%;background:radial-gradient(circle,rgba(127,185,95,.1),transparent 67%);filter:blur(32px)}
.hero-inner{display:grid;grid-template-columns:minmax(0,1.28fr) minmax(385px,.76fr);gap:6.2%;align-items:center;padding-bottom:104px}.hero-copy{max-width:795px;position:relative;z-index:2}.hero-eyebrow{color:#bfcac2;display:flex;gap:18px;align-items:center;margin-bottom:27px;white-space:nowrap}.green-line{width:24px;height:2px;background:var(--acid)}.tiny-cross{color:var(--acid);font-size:15px;font-weight:400}.hero-title{font-size:clamp(62px,6.4vw,110px);font-weight:700;line-height:1.075;letter-spacing:-7.4px;margin:0 0 27px;white-space:nowrap}.title-quiet{color:#bac6bd}.title-dot{color:var(--acid)}.title-serif{font-family:var(--serif);font-weight:400;font-style:italic;letter-spacing:-3.6px;color:var(--acid);font-size:1.13em;line-height:.84}.hero-intro{max-width:605px;font-size:16px;line-height:1.9;color:#afbbb5;margin:0 0 32px;letter-spacing:-.15px}.hero-intro strong{color:var(--text);font-weight:700}.hero-ctas{display:flex;align-items:center;gap:36px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;border-radius:3px;padding:17px 23px;font-size:12px;font-weight:800;letter-spacing:.1px;transition:transform .2s,background .2s}.button-primary{background:var(--acid);color:var(--bg)}.button svg{width:19px;height:19px;stroke:currentColor;stroke-width:1.8;fill:none}.text-link{font-size:12px;font-weight:750;border-bottom:1px solid #718078;padding-bottom:7px;transition:color .2s,border-color .2s;white-space:nowrap}.text-link:hover{color:var(--acid);border-color:var(--acid)}.text-link span{margin-left:17px;color:var(--acid);font-size:17px}.hero-footnote{display:flex;align-items:center;gap:20px;margin-top:48px;color:#a6b4aa;font-size:9px;font-weight:700;letter-spacing:1.2px}.footnote-signal{display:flex;align-items:center;gap:9px}.footnote-signal i,.location-note i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--acid);box-shadow:0 0 0 4px rgba(182,237,128,.1)}.footnote-divider{height:15px;width:1px;background:var(--line)}
.hero-visual{height:486px;position:relative;border:1px solid rgba(191,218,198,.14);background:radial-gradient(ellipse at 50% 50%,rgba(106,156,110,.1) 0%,rgba(6,18,22,.12) 65%,transparent 100%),linear-gradient(150deg,#12211e,#0c151a 70%);border-radius:4px;box-shadow:0 24px 66px rgba(0,0,0,.2);overflow:hidden}.hero-visual::before{content:"";position:absolute;inset:0;background-image:linear-gradient(to right,rgba(200,244,195,.05) 1px,transparent 1px),linear-gradient(to bottom,rgba(200,244,195,.05) 1px,transparent 1px);background-size:34px 34px;mask-image:radial-gradient(circle at 50% 50%,#000,transparent 72%)}.hero-visual::after{content:"";position:absolute;inset:14px;border:1px solid rgba(204,241,194,.07);pointer-events:none}.visual-top,.visual-bottom{position:absolute;z-index:3;left:28px;right:28px;display:flex;justify-content:space-between;align-items:center;font-size:9px;font-weight:700;letter-spacing:1.5px;color:#a8b8a7}.visual-top{top:26px}.visual-bottom{bottom:29px}.visual-corners{color:var(--acid)}.mono-plus{color:var(--acid);font-size:17px;font-weight:400;vertical-align:-1px;margin-right:5px}.orbits{position:absolute;inset:52px 10px;display:grid;place-items:center}.orbit{position:absolute;border:1px solid rgba(175,218,166,.16);border-radius:50%}.orbit-one{width:175px;height:175px;border-color:rgba(182,237,128,.35);box-shadow:0 0 55px rgba(182,237,128,.04)}.orbit-two{width:310px;height:310px}.orbit-three{width:420px;height:420px;opacity:.4;border-style:dashed;animation:rotate 110s linear infinite}.orbit::before{content:"";height:5px;width:5px;background:var(--acid);border-radius:50%;position:absolute;top:calc(50% - 2.5px);left:-3px}.orbit-center{display:flex;flex-direction:column;align-items:center;justify-content:center;width:128px;height:128px;border-radius:50%;border:1px solid rgba(189,244,165,.4);background:radial-gradient(circle,#1b3029,#0a1517);z-index:2;box-shadow:0 0 55px rgba(160,236,124,.05)}.center-mark{font-size:36px;font-weight:850;letter-spacing:-2.8px;color:#edf4eb}.center-mark .dot{color:var(--acid)}.center-top,.center-bottom{font-size:7px;color:#96ad9c;font-weight:800;letter-spacing:1.6px}.center-top{margin-bottom:6px}.center-bottom{margin-top:5px}.orbit-node{position:absolute;z-index:3;background:#152722;border:1px solid #3a644d;min-width:86px;padding:12px 10px 11px;display:flex;flex-direction:column;gap:7px;color:#dfeddf;font-size:10px;font-weight:700;line-height:1.3;box-shadow:0 5px 21px #030b0a66}.node-signal{width:5px;height:5px;background:var(--acid);border-radius:50%}.node-one{left:7%;top:20%}.node-two{right:0%;top:28%}.node-three{bottom:11%;left:12%}.orbit-spark{position:absolute;width:6px;height:6px;background:var(--acid);border-radius:50%;box-shadow:0 0 20px var(--acid);z-index:2}.spark-a{left:17%;bottom:27%}.spark-b{top:15%;right:30%}.spark-c{right:20%;bottom:22%;width:3px;height:3px}
.hero-data-strip{display:grid;grid-template-columns:1fr 1fr 1fr 1.25fr;border-top:1px solid var(--line);position:relative;z-index:1}.data-item{min-height:137px;display:flex;align-items:center;gap:19px;border-right:1px solid var(--line);padding:17px 27px 17px 0}.data-item:not(:first-child){padding-left:35px}.data-num{font-size:48px;line-height:1;font-weight:600;letter-spacing:-2.7px}.data-num span{color:var(--acid);font-size:29px;vertical-align:10px;margin-left:2px}.data-label{font-size:10px;font-weight:750;line-height:1.65;letter-spacing:1px;color:#97a69d}.data-end{display:flex;align-items:center;justify-content:flex-end;gap:18px;text-align:left;font-size:11px;font-weight:600;line-height:1.7;letter-spacing:1.4px;color:#9eaba2}.data-end strong{font-weight:850;color:var(--text)}.data-end-dash{font-size:31px;color:var(--acid);font-weight:300}
/* About - light paper creates editorial contrast */
.about-section{background:var(--paper);color:#192821;padding:152px 0 157px}.two-col-intro{display:grid;grid-template-columns:31% 1fr;gap:6%}.section-meta{display:flex;justify-content:space-between;align-items:flex-start;color:#425449;padding-top:17px}.section-marker{font-size:27px;font-weight:300;margin-right:34px}.about-statement h2{font-size:clamp(44px,4.2vw,70px);letter-spacing:-3.7px;line-height:1.15;margin:0 0 44px;font-weight:600}.about-statement .serif-muted{font-size:1.05em;letter-spacing:-2px;color:#5e765f}.about-columns{display:grid;grid-template-columns:1fr 1fr;gap:35px;max-width:880px}.about-columns p{font-size:15px;line-height:2.05;margin:0;color:#58635b}.principles{display:flex;flex-wrap:wrap;gap:11px;margin-top:48px}.principles span{border:1px solid #d1d7ca;border-radius:2px;padding:13px 15px;color:#31443b;font-size:11px;font-weight:700}.principles i{font-size:9px;font-style:normal;color:#789479;margin-right:10px}
/* expertise */
.expertise-section{background:#e7eae2;color:#17231d;padding-bottom:146px}.section-heading-row{display:flex;justify-content:space-between;align-items:end;gap:36px;margin-bottom:53px}.section-heading-row h2{font-size:clamp(45px,4.7vw,74px);font-weight:600;letter-spacing:-4.2px;line-height:1.06;margin:22px 0 0}.section-heading-row h2 em{color:#66836a;letter-spacing:-1.7px}.section-heading-row>p{max-width:320px;color:#637168;font-size:13px;line-height:1.95;margin:0 0 6px}.expertise-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.expertise-card{min-height:438px;background:#f4f5ed;padding:32px 30px 31px;display:flex;flex-direction:column;position:relative;transition:transform .35s,box-shadow .35s}.expertise-card:hover{transform:translateY(-7px);box-shadow:0 24px 45px #a4afa31e}.expertise-card:nth-child(2){background:#ebf1e5}.card-top{display:flex;justify-content:space-between;color:#687b6d;font-size:11px;font-weight:800}.card-arrow{font-size:19px;font-weight:400}.expertise-icon{width:76px;height:76px;margin-top:23px;margin-bottom:18px}.expertise-icon svg{width:100%;height:100%;stroke:#477b57;stroke-width:1.65;fill:none;stroke-linecap:round;stroke-linejoin:round}.expertise-card h3{font-size:25px;line-height:1.3;letter-spacing:-.9px;margin:0 0 14px;font-weight:700}.expertise-card p{font-size:12.5px;line-height:1.95;color:#5d6a61;max-width:320px;margin:0 0 30px}.card-tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:auto}.card-tags span{font-size:9px;color:#5e7160;padding:7px 10px;border:1px solid #d4ded1;font-weight:700}.tech-line{display:flex;gap:40px;margin-top:42px;padding:21px 0;border-top:1px solid #cbd4ca;border-bottom:1px solid #cbd4ca;align-items:center}.tech-line-label{color:#627067;font-size:10px;font-weight:800;letter-spacing:1.4px;white-space:nowrap}.tech-list{display:flex;flex-wrap:wrap;gap:10px}.tech-list span{color:#314338;background:#dbe4d8;border-radius:2px;padding:9px 12px;font-size:10px;font-weight:650}
/* Experience */
.work-section{background:var(--bg);color:var(--text);padding-bottom:140px}.work-heading .section-kicker,.credentials-heading .section-kicker,.practice-copy .section-kicker,.contact-section .section-kicker{color:var(--acid)}.work-heading h2 em,.credentials-heading h2 em{color:var(--acid)}.work-heading>p{color:#9aaa9f}.timeline{border-top:1px solid var(--line)}.timeline-row{display:grid;grid-template-columns:27% 73%;padding:35px 0 41px;border-bottom:1px solid var(--line);transition:background .2s}.timeline-row:hover{background:linear-gradient(90deg,transparent,rgba(194,237,170,.025) 50%,transparent)}.timeline-when{display:flex;align-items:flex-start;flex-direction:column;gap:20px;color:#82968b;font-size:11px;font-weight:700;letter-spacing:1px;padding-top:10px}.timeline-current{display:inline-flex;gap:9px;align-items:center;color:var(--acid);font-size:9px;font-weight:800;letter-spacing:1.5px}.timeline-current i{background:var(--acid);width:7px;height:7px;border-radius:50%;box-shadow:0 0 0 4px rgba(182,237,128,.11)}.timeline-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:26px;margin-bottom:17px}.timeline-heading h3{font-size:21px;line-height:1.4;letter-spacing:-.6px;font-weight:650;margin:0}.timeline-heading h3 span{color:#8c9b95;font-weight:500}.company{white-space:nowrap;color:#b9cfbd;font-size:11px;font-weight:700;padding-top:7px}.company span{margin-left:10px;color:var(--acid)}.timeline-main>p{font-size:13px;line-height:1.9;color:#97a9a0;max-width:720px;margin:0 0 22px}.timeline-tags{display:flex;gap:9px;flex-wrap:wrap}.timeline-tags span{color:#96aba0;border:1px solid #314039;padding:7px 10px;font-size:10px}.work-footer{border:1px solid #31413a;padding:27px 30px;display:flex;align-items:center;gap:25px;margin-top:46px;background:rgba(170,223,147,.025)}.work-footer-icon{background:#203128;width:45px;height:45px;display:grid;place-items:center;color:var(--acid);font-size:25px;flex:0 0 45px}.work-footer p{font-size:12px;color:#9eada3;line-height:1.7;margin:0;flex:1;max-width:690px}.work-footer p strong{color:#d4e0d5;font-weight:700}.link-arrow{white-space:nowrap;color:var(--acid);font-size:12px;font-weight:800;padding-bottom:6px;border-bottom:1px solid var(--acid)}.link-arrow span{margin-left:15px}
/* Perspective */
.practice-section{padding:0;background:#162722}.practice-inner{display:grid;grid-template-columns:1fr 1fr;min-height:620px}.practice-art{background:#14231e;position:relative;display:flex;align-items:center;justify-content:center;isolation:isolate;overflow:hidden;border-right:1px solid rgba(255,255,255,.1)}.practice-art::before{content:"";inset:0;position:absolute;background-image:radial-gradient(rgba(182,237,128,.25) .8px,transparent .8px);background-size:23px 23px;opacity:.28;mask-image:radial-gradient(circle,#000,transparent 70%)}.practice-art::after{content:"";position:absolute;width:390px;height:390px;border:1px solid rgba(182,237,128,.12);border-radius:50%;box-shadow:0 0 0 53px rgba(182,237,128,.025),0 0 0 108px rgba(182,237,128,.025)}.practice-art-top{position:absolute;top:37px;left:36px;right:36px;display:flex;justify-content:space-between;gap:12px;color:#a8bcae;letter-spacing:1.4px;font-size:9px;font-weight:800}.practice-art-symbol{position:relative;z-index:2;font-size:158px;font-weight:300;letter-spacing:-35px;line-height:1;color:#d0e5cb;font-family:var(--serif);transform:translateX(-17px)}.practice-art-symbol span{color:var(--acid);font-family:var(--sans);font-size:100px;font-weight:300;vertical-align:3px;margin:0 17px}.practice-art-code{position:absolute;bottom:53px;left:43px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:13px;line-height:1.9;color:#c8d4c7;z-index:2}.practice-art-code span{color:#719d75}.practice-copy{display:flex;flex-direction:column;justify-content:center;padding:75px 9.8% 75px 11%}.practice-copy h2{font-size:clamp(38px,3.3vw,53px);line-height:1.17;letter-spacing:-2.4px;font-weight:600;margin:26px 0 28px}.practice-copy h2 em{color:var(--acid);letter-spacing:-1px}.practice-copy p{font-size:14px;line-height:2;color:#a7b6ab;max-width:505px;margin:0 0 17px}.practice-keywords{display:flex;flex-wrap:wrap;gap:8px;margin-top:19px}.practice-keywords span{font-size:10px;font-weight:700;letter-spacing:.2px;border:1px solid rgba(187,224,182,.2);color:#b9cbbc;padding:9px 11px}
/* Credentials */
.credentials-section{background:var(--paper);color:#16241d;padding-top:151px;padding-bottom:147px}.credentials-heading h2 em{color:#5c8a66}.credentials-heading .section-kicker{color:#637e65}.credentials-side{max-width:330px}.credential-count{font-size:45px;font-weight:700;letter-spacing:-2px;display:block;line-height:1.2}.credential-count span{font-size:11px;letter-spacing:1.3px;font-weight:800;color:#5f7465}.credentials-side p{font-size:12px;line-height:1.9;color:#647266}.badge-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.badge-card{min-height:327px;display:flex;flex-direction:column;background:#fff;border:1px solid #e1e7dd;padding:19px 21px 21px;transition:transform .25s,box-shadow .25s,border-color .25s}.badge-card:hover{transform:translateY(-5px);box-shadow:0 19px 30px rgba(37,62,42,.09);border-color:#b4d0a8}.badge-card-top{display:flex;justify-content:space-between;gap:10px;font-size:9px;letter-spacing:1.1px;font-weight:800;color:#758679}.badge-card-top>span:last-child{font-size:16px;color:#779c69;font-weight:500}.badge-art{height:171px;display:grid;place-items:center;position:relative;margin:8px 0 11px;overflow:hidden}.badge-art img{max-width:164px;max-height:162px;width:auto;height:auto;object-fit:contain;display:block;position:absolute;z-index:2;mix-blend-mode:multiply}.badge-backup{width:113px;height:126px;background:#0c3040;clip-path:polygon(50% 0%,92% 13%,100% 27%,100% 74%,50% 100%,0 74%,0 27%,8% 13%);display:grid;place-items:center;position:relative;filter:drop-shadow(0 3px 3px #10303c22)}.badge-backup::before{content:"";position:absolute;inset:5px;background:#acd995;clip-path:inherit}.badge-backup::after{content:"";position:absolute;inset:9px;background:#05283b;clip-path:inherit}.badge-backup span{z-index:3;position:relative;color:#c7efb1;font-size:18px;font-weight:850;letter-spacing:-.7px}.badge-title{color:#25372c;font-size:12px;font-weight:800;line-height:1.6;max-width:250px;margin:0 0 9px}.badge-code{margin-top:auto;color:#748477;display:flex;align-items:center;justify-content:space-between;font-size:10px;font-weight:800;letter-spacing:.6px}.badge-code span{font-size:16px;color:#2c6e3e;font-weight:400}.credly-cta{margin-top:34px;border:1px solid #ccdbca;padding:28px 30px;display:flex;align-items:center;gap:26px}.credly-cta-symbol{flex:0 0 44px;font-size:35px;color:#4d8957}.credly-cta>div:nth-child(2){flex:1}.credly-cta strong{font-size:15px}.credly-cta p{font-size:12px;color:#6f7c71;line-height:1.7;margin:6px 0 0}.button-outline{border:1px solid #8ba28f;font-size:11px;white-space:nowrap;padding:14px 20px;gap:24px}.button-outline:hover{background:#dfe8d9;transform:translateY(-2px)}
/* Languages */
.languages-section{padding:108px 0;background:#dae4d7;color:#193023}.languages-inner{display:grid;grid-template-columns:1.4fr 1fr;gap:12%}.language-label h2{font-size:clamp(36px,3.5vw,58px);line-height:1.2;letter-spacing:-2.7px;margin:23px 0 0;font-weight:650}.language-label h2 em{color:#5e8061;letter-spacing:-1px}.language-list{border-top:1px solid #bdcdb9}.language-list>div{display:flex;justify-content:space-between;align-items:center;padding:21px 0;border-bottom:1px solid #bdcdb9}.language-list span{font-size:14px;font-weight:650}.language-list strong{font-size:10px;color:#4d6552;letter-spacing:1px}
/* Contact */
.contact-section{background:#aeea80;color:#102018;padding:105px 0 110px;position:relative;overflow:hidden}.contact-section::after{content:"✳";position:absolute;right:-60px;bottom:-155px;font-size:570px;line-height:1;color:rgba(31,96,47,.075);pointer-events:none}.contact-inner{position:relative;z-index:2}.contact-top{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #77b464;padding-top:23px;font-size:10px;font-weight:800;letter-spacing:1.5px}.contact-body{display:grid;grid-template-columns:1.5fr 1fr;gap:9%;align-items:end;margin-top:73px}.contact-body h2{font-size:clamp(55px,6.15vw,94px);letter-spacing:-6.4px;line-height:1.04;margin:0;font-weight:650}.contact-body h2 em{color:#3f8050;font-size:1.04em;letter-spacing:-3px}.contact-text{padding-bottom:7px}.contact-text>p:first-child{font-size:15px;line-height:1.9;color:#34583b;max-width:390px}.location-note{margin-top:32px!important;font-size:11px;color:#355c40;font-weight:700;display:flex;align-items:center;gap:11px}.location-note i{background:#2b6f3d;box-shadow:0 0 0 4px #518b4f32}.contact-actions{border-bottom:1px solid #71b25e;padding:47px 0 30px;display:flex;justify-content:space-between;align-items:end;gap:30px}.contact-email{font-size:clamp(25px,3.5vw,55px);font-weight:650;letter-spacing:-2px;overflow-wrap:anywhere;transition:opacity .2s}.contact-email:hover{opacity:.65}.contact-email span{font-size:.6em;font-weight:400;vertical-align:.24em;margin-left:6px}.copy-email{background:transparent;border:1px solid #6ea45d;padding:12px 16px;color:#1b4229;font-size:11px;font-weight:750;white-space:nowrap;cursor:pointer;transition:background .2s}.copy-email:hover{background:#cbf5aa}.copy-email span{margin-left:16px}.contact-bottom{display:flex;gap:32px;padding-top:35px}.contact-bottom a{font-size:12px;font-weight:800}.contact-bottom span{margin-left:9px}
.site-footer{background:#0a1115;padding:30px 0;color:#899a91}.footer-inner{display:flex;gap:29px;align-items:center;justify-content:space-between}.footer-mark{font-size:29px;color:var(--text)}.footer-inner p{font-size:10px;margin:0}.footer-inner>span{font-size:9px;letter-spacing:1.1px;font-weight:700}.back-to-top{color:var(--acid);font-size:10px;font-weight:750}
/* Entrance animation remains readable with JS disabled */
.fade-in{opacity:1;transform:none}@media (prefers-reduced-motion:no-preference){.js .fade-in{opacity:0;transform:translateY(22px);transition:opacity .72s ease,transform .72s cubic-bezier(.2,.7,.2,1)}.js .fade-in.visible{opacity:1;transform:none}.js .hero-copy .fade-in:nth-child(2){transition-delay:.1s}.js .hero-copy .fade-in:nth-child(3){transition-delay:.18s}.js .hero-copy .fade-in:nth-child(4){transition-delay:.25s}.js .hero-copy .fade-in:nth-child(5){transition-delay:.33s}}@keyframes rotate{to{transform:rotate(360deg)}}
@media (max-width:1240px){.container{width:min(calc(100% - 72px),var(--max))}.hero-inner{gap:3%;grid-template-columns:minmax(0,1.1fr) minmax(350px,.75fr)}.hero-title{font-size:clamp(62px,6.5vw,82px);letter-spacing:-5.8px}.visual-top,.visual-bottom{left:20px;right:20px}.data-item{gap:11px}.data-num{font-size:40px}.data-label{font-size:9px}.expertise-card{padding-inline:24px}.badge-card{padding-inline:16px}.badge-art img{max-width:149px;max-height:149px}}
@media (max-width:1020px){.desktop-nav{gap:19px;margin-right:10px}.hero{padding-top:155px}.hero-inner{grid-template-columns:1fr 355px;gap:17px}.hero-title{font-size:clamp(51px,6.5vw,77px);letter-spacing:-4.7px}.title-serif{letter-spacing:-2px}.hero-intro{font-size:14px}.hero-eyebrow{letter-spacing:1.2px;font-size:9px;gap:11px}.hero-visual{height:440px}.orbit-three{width:380px;height:380px}.orbit-two{width:275px;height:275px}.data-end{display:none}.hero-data-strip{grid-template-columns:repeat(3,1fr)}.data-item:last-of-type{border-right:0}.expertise-grid{gap:10px}.expertise-card{padding:25px 20px;min-height:452px}.expertise-card h3{font-size:21px}.section{padding-block:120px}.about-section{padding-block:125px}.badge-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.badge-card{min-height:305px}.badge-art{height:141px}.badge-art img{max-width:140px;max-height:140px}.badge-title{font-size:11px}.practice-inner{min-height:570px}.practice-copy{padding-inline:8%}.timeline-heading{flex-wrap:wrap;gap:6px}.company{width:100%;padding-top:0}.section-heading-row h2{letter-spacing:-3px}}
@media (max-width:820px){html{scroll-padding-top:77px}.site-header{height:73px}.container{width:calc(100% - 44px)}.desktop-nav{display:none}.nav-contact{padding:12px 14px}.menu-toggle{display:flex}.mobile-nav{display:flex;position:absolute;top:73px;left:0;right:0;background:#111d20;border-bottom:1px solid #324037;padding:18px 22px 25px;flex-direction:column;gap:0;box-shadow:0 28px 35px #0006}.mobile-nav[hidden]{display:none}.mobile-nav a{padding:14px 8px;font-size:15px;font-weight:650;border-bottom:1px solid #29382f}.hero{padding:128px 0 0}.hero-inner{grid-template-columns:1fr;gap:50px;padding-bottom:55px}.hero-copy{max-width:700px}.hero-title{font-size:clamp(58px,10vw,93px)}.hero-intro{font-size:15px;max-width:610px}.hero-visual{width:min(100%,590px);height:380px;justify-self:center}.orbit-three{width:350px;height:350px}.orbit-two{width:265px;height:265px}.hero-footnote{margin-top:35px}.hero-data-strip{grid-template-columns:repeat(3,1fr)}.data-item{padding:20px!important;min-height:115px}.data-item:first-child{padding-left:0!important}.data-label{font-size:9px}.two-col-intro{grid-template-columns:1fr;gap:40px}.section-meta{padding:0}.section-marker{margin-right:0}.about-statement h2{font-size:clamp(41px,6.8vw,64px)}.section{padding-block:102px}.section-heading-row h2{font-size:clamp(44px,7vw,68px)}.expertise-grid{grid-template-columns:1fr 1fr}.expertise-card:last-child{grid-column:1/-1;min-height:340px}.expertise-card{min-height:400px}.expertise-card:last-child p{max-width:520px}.expertise-icon{margin-top:20px;margin-bottom:12px}.tech-line{align-items:flex-start;gap:15px;flex-direction:column}.badge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.badge-card{min-height:320px}.badge-art{height:170px}.badge-art img{max-width:165px;max-height:165px}.credentials-side{max-width:260px}.practice-inner{min-height:0;grid-template-columns:1fr}.practice-art{height:390px;border-bottom:1px solid rgba(255,255,255,.1)}.practice-copy{padding:86px 7% 94px}.languages-inner{gap:40px;grid-template-columns:1fr 1fr}.contact-body{grid-template-columns:1fr;gap:12px}.contact-body h2{font-size:clamp(55px,10vw,85px)}.contact-text>p:first-child{max-width:550px}.contact-actions{padding-top:34px}.contact-email{font-size:clamp(28px,5.1vw,45px)}.footer-inner{flex-wrap:wrap;justify-content:space-between}}
@media (max-width:600px){.container{width:calc(100% - 38px)}.brand{gap:10px}.brand-symbol{font-size:31px}.brand-name{font-size:11px}.nav-contact{font-size:10px;padding:11px 12px;gap:9px}.nav-contact span{font-size:14px}.hero{padding-top:122px}.hero-eyebrow{white-space:normal;flex-wrap:wrap;line-height:1.8;gap:9px}.tiny-cross{display:none}.hero-title{font-size:clamp(51px,12.2vw,75px);letter-spacing:-4.5px}.title-serif{font-size:1.03em;letter-spacing:-2px}.hero-intro{font-size:13.5px;line-height:1.85;margin-top:26px}.hero-ctas{gap:24px;flex-wrap:wrap}.button{padding:15px 19px}.hero-footnote{font-size:8px;line-height:1.6;gap:10px;flex-wrap:wrap}.hero-visual{height:340px;width:100%}.orbits{inset:43px 10px}.orbit-three{width:310px;height:310px}.orbit-two{width:245px;height:245px}.orbit-one{width:150px;height:150px}.orbit-center{width:113px;height:113px}.center-mark{font-size:32px}.orbit-node{padding:7px;min-width:70px;font-size:9px;gap:5px}.node-one{left:0%;top:15%}.node-two{right:0%;top:27%}.node-three{bottom:7%;left:8%}.visual-top,.visual-bottom{font-size:7px;letter-spacing:1px;left:17px;right:17px}.visual-top{top:19px}.visual-bottom{bottom:21px}.hero-data-strip{grid-template-columns:repeat(3,1fr)}.data-item{min-height:100px;padding:18px 8px!important;display:block}.data-item:first-child{padding-left:0!important}.data-num{display:block;font-size:36px;margin-bottom:8px}.data-num span{font-size:22px;vertical-align:8px}.data-label{display:block;font-size:7.5px;line-height:1.6;letter-spacing:.35px}.section{padding-block:83px}.about-statement h2{font-size:clamp(39px,9vw,60px);letter-spacing:-2.3px;margin-bottom:26px}.about-columns{grid-template-columns:1fr;gap:14px}.about-columns p{font-size:13px;line-height:1.95}.principles{margin-top:30px;gap:7px}.principles span{padding:10px 12px;font-size:10px}.section-heading-row{display:block;margin-bottom:33px}.section-heading-row h2{font-size:clamp(43px,10vw,60px);letter-spacing:-3px;margin-top:16px}.section-heading-row>p{margin-top:19px;font-size:12px}.expertise-grid{grid-template-columns:1fr}.expertise-card,.expertise-card:last-child{grid-column:auto;min-height:350px}.expertise-card h3{font-size:23px}.tech-list span{font-size:9px}.timeline-row{display:block;padding:30px 0}.timeline-when{margin-bottom:22px;flex-direction:row;align-items:center;gap:16px}.timeline-heading h3{font-size:19px}.timeline-main>p{font-size:12px}.work-footer{flex-wrap:wrap;padding:20px}.work-footer p{flex:1 1 calc(100% - 85px)}.link-arrow{margin-left:70px}.practice-art{height:335px}.practice-art-symbol{font-size:125px}.practice-art-symbol span{font-size:80px}.practice-art-code{font-size:10px;bottom:30px;left:24px}.practice-art-top{left:20px;right:20px;top:23px;font-size:8px}.practice-copy{padding:67px 24px 74px}.practice-copy h2{font-size:40px}.practice-copy p{font-size:12.5px}.credentials-side{margin-top:25px;max-width:none}.credential-count{font-size:38px}.badge-grid{gap:8px}.badge-card{padding:13px 12px;min-height:270px}.badge-card-top{font-size:7.5px;letter-spacing:.2px}.badge-art{height:132px;margin:8px 0}.badge-art img{max-width:127px;max-height:127px}.badge-backup{width:95px;height:108px}.badge-title{font-size:10px;line-height:1.5}.badge-code{font-size:8.5px}.credly-cta{flex-wrap:wrap;gap:14px;padding:23px}.credly-cta-symbol{font-size:28px;flex-basis:32px}.credly-cta>div:nth-child(2){flex:1 1 calc(100% - 65px)}.credly-cta p{font-size:11px}.credly-cta .button{width:100%;margin-top:11px}.languages-inner{grid-template-columns:1fr;gap:28px}.language-label h2{font-size:45px}.language-list>div{padding:18px 0}.contact-section{padding:80px 0}.contact-top{font-size:8px;gap:15px;line-height:1.6}.contact-body{margin-top:51px}.contact-body h2{font-size:clamp(49px,10.5vw,66px);letter-spacing:-4.2px}.contact-body h2 em{letter-spacing:-2px}.contact-text>p:first-child{font-size:13px}.location-note{font-size:10px;line-height:1.7}.contact-actions{display:block;padding:34px 0 22px}.contact-email{display:block;font-size:clamp(25px,6.6vw,39px);letter-spacing:-1.4px}.copy-email{margin-top:21px}.contact-bottom{gap:20px;flex-wrap:wrap}.site-footer{padding:27px 0}.footer-inner{gap:18px}.footer-inner>span{display:none}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.orbit-three{animation:none}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}}

/* Contact action: an accessible reveal button replaces static plain-text email. */
button.contact-email{background:none;border:0;color:inherit;padding:0;text-align:left;font-family:inherit;line-height:inherit;cursor:pointer}
button.contact-email:focus-visible,.contact-email:focus-visible{outline:2px solid #234e32;outline-offset:7px}
.copy-email[hidden]{display:none!important}
.email-nojs{color:#31573d;font-size:12px;margin-top:12px}

.badge-backup[hidden]{display:none!important}


/* v4: badge cards show the genuine Credly artwork ONLY—never a second synthetic badge layered behind. */
.badge-card{min-height:264px;align-items:stretch;padding-bottom:21px}
.badge-art{flex:1;margin:2px 0 0;min-height:197px;height:auto;overflow:visible}
.badge-art img{position:relative;z-index:1;display:block;mix-blend-mode:normal;max-width:194px;max-height:194px;width:auto;height:auto;filter:none}
.badge-art img[hidden]{display:none!important}
.badge-backup{display:none!important}
.badge-art.image-missing .badge-backup{display:grid!important}
.badge-card-top{margin-bottom:4px}
.badge-title,.badge-code{display:none!important}

/* v4: secure-looking, accessible contact form. Recipient is configured off-site. */
.contact-form-shell{border-top:1px solid rgba(41,93,48,.35);border-bottom:1px solid rgba(41,93,48,.35);margin:42px 0 12px;padding:35px 0 38px}
.form-intro{display:flex;gap:35px;align-items:baseline;justify-content:space-between;padding-bottom:26px}
.form-eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:850;color:#275235;white-space:nowrap}
.form-intro p{margin:0;max-width:490px;font-size:15px;color:#32543a;line-height:1.55}
.contact-form{max-width:1060px}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.form-field{margin-bottom:22px}
.form-field label{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;font-size:11px;font-weight:800;letter-spacing:.1px;color:#163824}
.form-field label>span:not(.form-optional){color:#2e6d3c}
.form-optional{font-size:9px;font-weight:750;letter-spacing:1.1px;color:#56795e}
.form-field input,.form-field textarea{background:rgba(255,255,255,.47);color:#163824;border:1px solid #a0c491;border-radius:0;padding:16px 17px;width:100%;font-family:inherit;font-size:14px;line-height:1.5;outline:0;transition:border-color .2s,background .2s,box-shadow .2s;box-sizing:border-box}
.form-field input::placeholder,.form-field textarea::placeholder{color:#647c69;opacity:.9}
.form-field input:focus,.form-field textarea:focus{background:#fff;border-color:#225b36;box-shadow:0 0 0 3px rgba(45,119,58,.13)}
.form-field input[aria-invalid="true"],.form-field textarea[aria-invalid="true"]{border-color:#a63636}
.form-field textarea{resize:vertical;min-height:145px}
.form-trap{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.form-footer{display:flex;align-items:center;justify-content:flex-end;gap:25px;padding-top:2px}
.form-privacy{display:flex;align-items:flex-start;gap:12px;font-size:11px;line-height:1.6;color:#3f6545;max-width:400px}
.privacy-icon{font-size:20px;line-height:1;color:#296138}
.form-submit{border:none;font-family:inherit;white-space:nowrap;cursor:pointer;min-width:185px;display:flex;align-items:center;justify-content:center;gap:24px}
.form-submit:disabled{opacity:.65;cursor:progress}
.form-submit:focus-visible{outline:3px solid #184a28;outline-offset:4px}
.form-status{min-height:22px;margin:19px 0 0;font-weight:700;font-size:12px;line-height:1.6;color:#214c2c}
.form-status[data-state="error"]{color:#8d3030}
.form-status[data-state="success"]{color:#174c26}
.contact-bottom{padding-top:19px}
@media (max-width:1020px){.badge-card{min-height:245px}.badge-art{min-height:162px}.badge-art img{max-width:170px;max-height:170px}}
@media (max-width:820px){.badge-card{min-height:248px}.badge-art{min-height:169px}.badge-art img{max-width:174px;max-height:174px}.form-intro{display:block}.form-eyebrow{display:block;margin-bottom:8px}.contact-form-shell{margin-top:33px}}
@media (max-width:600px){.badge-card{min-height:196px;padding:15px 10px}.badge-art{min-height:145px}.badge-art img{max-width:145px;max-height:145px}.form-grid{grid-template-columns:1fr;gap:0}.contact-form-shell{padding:27px 0 18px}.form-intro p{font-size:13px}.form-footer{align-items:stretch;flex-direction:column;gap:20px}.form-submit{width:100%;min-height:52px}.form-field input,.form-field textarea{padding:14px;font-size:14px}}


i18n-text[data-i18n]{display:contents!important}
.rss-subscribe{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;flex-shrink:0;border:1px solid #ffffff28;border-radius:4px;color:var(--acid);transition:background .2s,border-color .2s}.rss-subscribe:hover{border-color:#b6ed8080;background:#ffffff08}.rss-subscribe:focus-visible{outline:2px solid var(--acid);outline-offset:3px}@media(max-width:820px){.rss-subscribe{width:38px;height:38px}}
.locale-picker{position:relative;flex-shrink:0;color:#edf2eb}
.locale-current{display:flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:7px 8px;border:1px solid #ffffff28;border-radius:4px;cursor:pointer;list-style:none;user-select:none;font-size:10px;font-weight:700}
.locale-current::-webkit-details-marker{display:none}.locale-current:hover,.locale-picker[open] .locale-current{border-color:#b6ed8080;background:#ffffff08}
.locale-flag{display:block;width:22px;height:15px;flex-shrink:0;border-radius:2px;box-shadow:0 0 0 1px #ffffff20}.locale-chevron{font-size:13px;color:#b6ed80}.locale-options{max-height:min(420px,calc(100dvh - 110px));overflow-y:auto;overscroll-behavior:contain;position:absolute;right:0;top:calc(100% + 9px);z-index:120;min-width:154px;padding:6px;background:#14201e;border:1px solid #ffffff30;border-radius:5px;box-shadow:0 10px 25px #0005}.locale-options button{display:flex;align-items:center;gap:10px;width:100%;border:0;background:none;color:#edf2eb;border-radius:3px;padding:10px;font:600 12px var(--sans);cursor:pointer;text-align:left}.locale-options button:hover,.locale-options button:focus-visible{background:#ffffff12}.locale-check{margin-left:auto;color:#b6ed80;visibility:hidden}.locale-options [aria-pressed=true] .locale-check{visibility:visible}.locale-current:focus-visible{outline:2px solid #b6ed80;outline-offset:3px}
html.i18n-pending body{visibility:hidden}
html[lang=pl] .data-label{letter-spacing:.45px}html[lang=pl] .principles{flex-wrap:wrap}html[lang=pl] .contact-top{letter-spacing:1px}
@media(max-width:820px){.nav-inner{gap:12px}.nav-actions{gap:9px}.locale-code{display:none}.locale-current{padding:7px 6px;min-height:38px;gap:4px}.locale-flag{width:20px;height:14px}}
@media(max-width:600px){.brand-name{font-size:10px;max-width:115px}.brand{gap:10px}.nav-inner{gap:8px}.nav-actions{gap:7px}.nav-contact{font-size:10px;padding:11px 10px;gap:8px}.menu-toggle{width:36px;height:38px}.locale-current{min-height:38px;padding:7px 5px}.locale-flag{width:18px;height:12px}.locale-chevron{font-size:11px}html[lang=pl] .data-label{font-size:7px;letter-spacing:0}html[lang=pl] .contact-top{font-size:7px;letter-spacing:.4px}html[lang=pl] .hero-footnote{font-size:7px}}

html[lang="es"] .hero-title{font-size:clamp(58px,6.5vw,94px)}html[lang="es"] .expertise-card h3{font-size:clamp(22px,2.1vw,31px)}html[lang="es"] .principles{flex-wrap:wrap}html[lang="es"] .data-label{letter-spacing:.35px}@media(max-width:600px){html[lang="es"] .hero-title{font-size:clamp(52px,11.6vw,70px)}html[lang="es"] .hero-eyebrow{font-size:7px;letter-spacing:.5px}html[lang="es"] .contact-top{font-size:7px;letter-spacing:.2px}html[lang="es"] .contact-body h2{font-size:clamp(43px,9.5vw,58px)}html[lang="es"] .hero-footnote{font-size:6.5px}html[lang="es"] .data-label{font-size:6.8px;letter-spacing:0}}
/* Public blog shares the portfolio foundation; administration keeps Blog Studio. */
body.blog-public{min-height:100vh;background:radial-gradient(ellipse at 90% 15%,#203c2c55,transparent 48%),var(--bg);color:var(--text)}
.blog-public::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(#8fad9809 1px,transparent 1px),linear-gradient(90deg,#8fad9809 1px,transparent 1px);background-size:82px 82px}
.blog-public .site-header{background:#0b1217e8;border-bottom:1px solid var(--line);backdrop-filter:blur(18px)}
.desktop-nav{gap:26px;margin-right:20px}.desktop-nav a[aria-current=page],.mobile-nav a[aria-current=page]{color:var(--acid)}
.blog-public .site-content{width:min(calc(100% - 104px),var(--max));margin:auto;padding:175px 0 110px;min-height:calc(100vh - 110px)}
.blog-public .lead{max-width:850px;margin:0 0 68px;text-align:left}.blog-public .eyebrow{color:var(--acid);line-height:1.8}
.blog-public .lead .eyebrow::before{content:"";display:inline-block;vertical-align:middle;width:28px;height:2px;background:var(--acid);margin-right:15px}
.blog-public .lead h1{font-size:clamp(48px,6.1vw,86px);line-height:1.1;letter-spacing:-4px;font-weight:650;margin:28px 0}.blog-public .lead h1 em{font-family:var(--serif);font-weight:400;color:var(--acid);font-size:1.15em;letter-spacing:-2px}
.blog-public .lead p{font-size:16px;line-height:1.9;max-width:640px;color:var(--muted);margin:0}
.blog-search{display:flex;align-items:center;gap:12px;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:36px}
.blog-public input,.blog-public select,.blog-public textarea{font:inherit;width:100%;padding:14px 16px;background:#14201e;color:var(--text);border:1px solid #36463e;border-radius:3px;min-height:48px}.blog-public input::placeholder,.blog-public textarea::placeholder{color:#9baaa1}.blog-public select{color-scheme:dark}.blog-search input{flex:1;min-width:0}.blog-search select{width:240px}
.blog-public button{cursor:pointer}.blog-public :is(input,select,textarea):focus-visible{outline:2px solid var(--acid);outline-offset:3px}
.blog-public .btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid #40533f;background:transparent;color:var(--acid);padding:13px 23px;min-height:48px;border-radius:3px;font:800 12px var(--sans);text-decoration:none}.blog-public .btn.primary{background:var(--acid);color:var(--bg);border-color:var(--acid)}.blog-public .btn.primary:hover{background:#caf4a4}.blog-public button:disabled{opacity:.6;cursor:wait}
.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.blog-card{display:flex;flex-direction:column;min-width:0;background:#12201d;border:1px solid #304039;border-radius:4px;overflow:hidden;transition:transform .2s,border-color .2s}.blog-card:hover{transform:translateY(-4px);border-color:#789c67}.blog-card .thumb{height:140px;padding:24px;display:flex;align-items:flex-end;background:radial-gradient(ellipse at 80% 0,#b6ed8017,transparent 65%),repeating-linear-gradient(90deg,transparent 0 39px,#b6ed8008 40px),#152822;color:var(--acid);font-size:11px;letter-spacing:1.5px;font-weight:750;border-bottom:1px solid var(--line)}.blog-card section{padding:26px;display:flex;flex-direction:column;gap:18px;flex:1}.blog-card .cat{color:var(--acid);font-size:9px;letter-spacing:1.6px;text-transform:uppercase;font-weight:800}.blog-card h3{font-size:24px;letter-spacing:-.8px;line-height:1.35;margin:0;overflow-wrap:anywhere}.blog-card h3 a:hover{color:var(--acid)}.blog-card p{font-size:13px;color:var(--muted);line-height:1.85;margin:0;flex:1}.blog-card section>a{font-size:12px;font-weight:800;color:var(--acid);padding-top:16px;border-top:1px solid var(--line)}
.blog-public .muted{color:var(--muted)}.blog-public .empty{grid-column:1/-1;padding:65px 28px;text-align:center;border:1px dashed #40503f;border-radius:4px;background:#b6ed8004;color:var(--muted);font-size:14px;line-height:1.8}
.blog-public .single{max-width:800px;margin:auto;overflow-wrap:anywhere}.single>a{font-size:12px;color:var(--acid);font-weight:750}.single>h1{font-size:clamp(36px,4.5vw,64px);letter-spacing:-2.5px;line-height:1.15;margin:26px 0}.single .intro{font-size:18px;line-height:1.8;color:var(--muted)}.single>p.muted{font-size:12px;line-height:1.8}
.article-body{font-size:17px;line-height:1.95;border-top:1px solid var(--line);padding-top:28px;margin-top:38px;color:#d6dfd7}.article-body p{margin:0 0 18px}.article-body h1,.article-body h2,.article-body h3{color:var(--text);line-height:1.35;letter-spacing:-.7px;margin:36px 0 16px}.article-body h1{font-size:34px}.article-body h2{font-size:28px}.article-body h3{font-size:23px}.article-body a{color:var(--acid);text-decoration:underline;text-underline-offset:4px}.article-body pre{background:#07100e;border:1px solid #314339;padding:22px;border-radius:4px;overflow-x:auto;white-space:pre;font:13px/1.8 ui-monospace,Consolas,monospace;color:#cee2c5}.article-body pre code{font:inherit}.article-body code:not(pre code){background:#20372a;padding:3px 6px;border-radius:3px;font:14px ui-monospace,Consolas,monospace;color:var(--acid)}.article-body blockquote{border-left:2px solid var(--acid);margin:26px 0;padding:8px 22px;color:var(--muted)}
.commentbox{margin-top:65px;border-top:1px solid var(--line);padding-top:30px}.commentbox h2{font-size:26px;letter-spacing:-.8px}.commentbox form{padding:28px;border:1px solid #304039;border-radius:4px;background:#12201d}.field{margin-bottom:20px}.field label{display:block;font-size:12px;font-weight:750;margin-bottom:9px}.commentbox textarea{resize:vertical}.commentbox p{font-size:13px;line-height:1.8;color:var(--muted)}.comment{padding:22px 0;border-bottom:1px solid var(--line)}.comment p{white-space:pre-wrap;overflow-wrap:anywhere}.hp{position:absolute;left:-10000px}.blog-test{position:fixed;bottom:12px;left:12px;z-index:40;background:#17251d;border:1px solid var(--acid);color:var(--acid);padding:8px 12px;border-radius:6px;font-size:11px;font-weight:750}.blog-public .site-footer{border-top:1px solid var(--line)}
@media(max-width:1100px){.desktop-nav{gap:18px;margin-right:8px}.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.blog-public .site-content{width:calc(100% - 48px);padding-top:130px}.blog-public .lead h1{letter-spacing:-2.5px}.blog-search{flex-wrap:wrap}.blog-search input{flex-basis:100%}.blog-search select{flex:1;width:auto}.blog-public .mobile-nav:not([hidden]){display:flex}.blog-public .mobile-nav[hidden]{display:none}}
@media(max-width:600px){.blog-public .site-content{width:calc(100% - 40px);padding:115px 0 80px}.blog-public .lead{margin-bottom:35px}.blog-public .lead h1{font-size:48px;letter-spacing:-2.5px}.blog-public .lead p{font-size:14px}.blog-public .lead .eyebrow{font-size:8px;letter-spacing:1px}.blog-grid{grid-template-columns:1fr}.blog-search{gap:10px}.blog-search select{min-width:0;width:0;font-size:12px}.blog-public .single>h1{letter-spacing:-1.5px}.article-body{font-size:16px}.commentbox form{padding:20px}.blog-test{font-size:9px}.blog-public .brand-name{max-width:none}}

.translation-notice{padding:15px 18px;border:1px solid #40553b;background:#b6ed8009;color:#bacbb5;font-size:12px;line-height:1.85;margin:20px 0}.translation-notice a{color:var(--acid);text-decoration:underline}.blog-search input[type=hidden]{display:none}

.blog-welcome{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.8fr);align-items:center;gap:36px;min-height:360px;padding:48px 60px;border:1px solid var(--line);border-radius:4px;background:radial-gradient(ellipse at 90% 50%,#b6ed8009,transparent 65%),#10201b80;position:relative;overflow:hidden}.blog-welcome-copy{min-width:0}.blog-welcome-mark{display:block;font-size:28px;color:var(--acid);line-height:1;margin-bottom:24px}.blog-welcome h2{font-size:clamp(42px,5vw,68px);line-height:1.1;letter-spacing:-2px;margin:0 0 24px;color:var(--text)}.blog-welcome .article-body{font-size:18px;color:var(--muted);line-height:1.85}.blog-welcome .article-body p{margin:0 0 10px}.blog-welcome .article-body p:last-child{color:var(--acid);margin-top:20px}.blog-welcome-art{color:var(--acid);width:100%;max-width:420px;justify-self:end}.blog-welcome-art svg{display:block;width:100%;height:auto}@media(max-width:700px){.blog-welcome{grid-template-columns:1fr;gap:10px;padding:32px 26px;min-height:0}.blog-welcome-art{max-width:300px;justify-self:center}.blog-welcome .article-body{font-size:16px}.blog-welcome-mark{margin-bottom:18px}}


/* Shared public light/dark theme. The existing dark design is the default. */
html{color-scheme:dark}
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;flex-shrink:0;border:1px solid var(--line);border-radius:4px;background:transparent;color:var(--acid);cursor:pointer}
.theme-toggle:hover{background:var(--line)}.theme-toggle:focus-visible{outline:2px solid var(--acid);outline-offset:3px}
.theme-toggle svg{width:19px;height:19px}.theme-moon{display:none}html[data-theme=light] .theme-sun{display:none}html[data-theme=light] .theme-moon{display:block}
html[data-theme=light]{color-scheme:light;--bg:#f8faf5;--bg2:#eef3eb;--panel:#e7eee3;--paper:#fffef9;--paper2:#edf1e7;--text:#1b3026;--muted:#50645a;--dim:#62766b;--acid:#356b35;--acid2:#2d5d30;--line:rgba(31,65,43,.19)}
html[data-theme=light] .site-header,html[data-theme=light] .site-header.scrolled{background:#f8faf5ed;border-bottom-color:var(--line)}
html[data-theme=light] .desktop-nav a,html[data-theme=light] .locale-picker,html[data-theme=light] .locale-options button{color:var(--text)}
html[data-theme=light] .desktop-nav a:hover,html[data-theme=light] .desktop-nav a[aria-current],html[data-theme=light] .locale-chevron,html[data-theme=light] .locale-check{color:var(--acid)}
html[data-theme=light] .rss-subscribe,html[data-theme=light] .locale-current{border-color:var(--line)}
html[data-theme=light] .locale-options,html[data-theme=light] .mobile-nav{background:#f8faf5;border-color:var(--line);box-shadow:0 12px 28px #203c241a}
html[data-theme=light] .locale-options button:hover,html[data-theme=light] .locale-options button:focus-visible,html[data-theme=light] .locale-current:hover{background:#e4ecdf}
html[data-theme=light] :is(.hero-eyebrow,.title-quiet,.hero-intro,.hero-footnote,.data-label,.data-end,.work-heading>p,.timeline-when,.timeline-heading h3 span,.company,.timeline-main>p,.timeline-tags span,.work-footer p,.practice-copy p,.practice-keywords span,.site-footer){color:var(--muted)}
html[data-theme=light] .button-primary{color:#fff}html[data-theme=light] .button-primary:hover{background:#28582b}
html[data-theme=light] .hero-visual{background:radial-gradient(ellipse at center,#d9e8cc,transparent 70%),#edf3e7;border-color:#b7cbb0;box-shadow:0 24px 66px #24442912}
html[data-theme=light] .hero-visual::after,html[data-theme=light] .orbit{border-color:#91ac87}
html[data-theme=light] .orbit-center{background:radial-gradient(circle,#fffef9,#dce9d3);border-color:#7a9f6a}
html[data-theme=light] .orbit-node{background:#f8fcf3;border-color:#99b18d;color:var(--text);box-shadow:0 5px 21px #28422814}
html[data-theme=light] .center-mark{color:var(--text)}html[data-theme=light] :is(.center-top,.center-bottom,.visual-top,.visual-bottom){color:var(--muted)}
html[data-theme=light] .practice-section{background:#eef3e8}html[data-theme=light] .practice-art{background:#e1ead8;border-color:var(--line)}
html[data-theme=light] :is(.practice-art-top,.practice-art-symbol,.practice-art-code){color:#39573c}html[data-theme=light] .practice-art-code span{color:#426a3c}
html[data-theme=light] :is(.timeline-tags span,.work-footer,.practice-keywords span){border-color:var(--line)}html[data-theme=light] .work-footer p strong{color:var(--text)}html[data-theme=light] .work-footer-icon{background:#e4eddd}
html[data-theme=light] .contact-section{background:#dfeecf}html[data-theme=light] .site-footer{background:#eaf0e3}
html[data-theme=light] body.blog-public{background:radial-gradient(ellipse at 90% 15%,#d9e8cd66,transparent 48%),var(--bg)}
html[data-theme=light] .blog-public :is(input,select,textarea){background:#fffef9;color:var(--text);border-color:#b3c4ac;color-scheme:light}
html[data-theme=light] .blog-public :is(input,textarea)::placeholder{color:#627368}
html[data-theme=light] :is(.blog-card,.commentbox form){background:#fffef9;border-color:#c6d3bd}
html[data-theme=light] .blog-card .thumb{background:radial-gradient(ellipse at 80% 0,#b4d49d55,transparent 65%),#e8f0df}
html[data-theme=light] .blog-welcome{background:radial-gradient(ellipse at 90% 50%,#c5dfa655,transparent 65%),#f1f6e9}
html[data-theme=light] .article-body{color:#304a3b}html[data-theme=light] .article-body pre{background:#eaf0e4;border-color:#bacdb1;color:#203c2b}
html[data-theme=light] .article-body code:not(pre code){background:#e2ecd9;color:#28582b}
html[data-theme=light] .translation-notice{background:#eef4e6;border-color:#b6cca8;color:#415c3c}
html[data-theme=light] .blog-public .btn.primary{background:var(--acid);color:#fff}html[data-theme=light] .blog-public .btn.primary:hover{background:#28582b}
@media(max-width:820px){.theme-toggle{width:38px;height:38px}}
@media(max-width:380px){.nav-actions{gap:5px}.brand-name{max-width:90px}.brand{gap:7px}.theme-toggle,.rss-subscribe{width:34px}.nav-inner{gap:6px}}
