:root{--ink:#0a1217;--dark:#10191d;--dark-mid:#162328;--slate:#314248;--muted:#93a7af;--line:#2e4145;--light:#f3f4ef;--paper:#f9faf7;--cyan:#a5e9e5;--cyan-bright:#bbf7ef;--lime:#e6f2b0;--body:#dce6e4;--shadow:0 30px 90px rgba(0,0,0,.2);--wrap:1320px;--font:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;--mono:'Cascadia Code','Consolas','Courier New',monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:94px}body{margin:0;background:var(--dark);color:var(--body);font-family:var(--font);-webkit-font-smoothing:antialiased}button,input{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}::selection{background:var(--cyan);color:var(--ink)}.wrap{width:min(calc(100% - 96px),var(--wrap));margin-inline:auto}.page-grid{pointer-events:none;position:absolute;left:0;top:0;width:100%;height:900px;opacity:.4;z-index:0;background-image:linear-gradient(90deg,transparent 0, transparent calc(25% - 1px),rgba(127,182,177,.08) 25%,transparent calc(25% + 1px)),linear-gradient(0deg,transparent 0,transparent calc(25% - 1px),rgba(127,182,177,.04) 25%,transparent calc(25% + 1px));background-size:25% 25%}.skip-link{position:fixed;top:-100px;left:16px;background:#fff;color:#111;padding:12px 18px;z-index:100}.skip-link:focus{top:12px}.site-header{height:84px;width:100%;z-index:30;position:relative;border-bottom:1px solid rgba(189,219,217,.13);display:flex;align-items:center;justify-content:space-between;padding:0 max(48px,calc((100vw - var(--wrap))/2));background:rgba(16,25,29,.96)}.identity{display:flex;align-items:center;gap:15px}.identity-mark{display:flex;align-items:center;letter-spacing:-.15em;padding-right:.17em;font-size:26px;font-weight:850;color:#f1fcfa}.identity-dot{color:var(--cyan);margin-left:1px;margin-right:2px}.identity-name{font-weight:760;letter-spacing:.085em;font-size:12px;white-space:nowrap;display:flex;flex-direction:column;gap:3px}.identity-name small{font-family:var(--mono);letter-spacing:.055em;color:#a6bbb8;font-size:9px;font-weight:400}.top-nav{display:flex;align-items:center;gap:35px;font-size:12px;font-weight:650;letter-spacing:.02em}.top-nav a:not(.nav-contact){transition:color .2s}.top-nav a:hover{color:var(--cyan)}.top-nav .nav-contact{border:1px solid rgba(177,224,221,.5);padding:12px 18px;display:inline-flex;gap:26px;align-items:center}.top-nav .nav-contact:hover{background:var(--cyan);color:var(--ink)}.mobile-toggle{display:none}.hero{min-height:770px;padding:96px 0 96px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:44px;position:relative}.hero-copy{position:relative;z-index:2}.eyebrow,.section-label,.pretitle,.tag,.slot-type,.chapter-header,.chapter-numeral,.chapter-years,.takeaway-label,.hero-art-top,.hero-art-bottom,.hero-footnote,.micro-note,.capability-no,.capability-tags,.toolbox-label,.sample-box>span,.contact-email,.media-slot figcaption,.media-placeholder code,.ticker,.footer-right,.footer-brand small{font-family:var(--mono);letter-spacing:.075em}.eyebrow{font-size:10px;color:var(--cyan);display:flex;align-items:center;gap:11px;font-weight:700}.status-light{height:6px;width:6px;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 5px rgba(165,233,229,.09)}h1,h2,h3,h4,p{margin:0}h1,h2,h3{letter-spacing:-.055em}h1{font-size:clamp(58px,5.2vw,94px);line-height:1.04;font-weight:760;color:var(--paper);margin:30px 0 28px}h1 em,h2 em,h3 em{font-style:normal;color:var(--cyan)}.hero-accent{display:block;font-size:.66em;letter-spacing:-.065em;margin-top:13px;line-height:1.11;white-space:nowrap}.period{color:var(--lime)}.hero-lead{font-size:16px;line-height:1.8;color:#b2c1c4;max-width:600px}.hero-actions{display:flex;align-items:center;gap:12px;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:50px;padding:14px 21px;font-weight:750;font-size:12px;white-space:nowrap;transition:transform .2s,background .2s,border-color .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--cyan);color:#132124}.button-primary:hover{background:var(--cyan-bright)}.button-secondary{border:1px solid #456267;color:#eff6f5}.button-secondary:hover{border-color:var(--cyan)}.hero-footnote{font-size:9px;display:flex;align-items:center;gap:10px;color:#758f92;margin-top:65px}.hairline{width:45px;height:1px;background:#6a8388}.hero-art{max-width:540px;justify-self:end;width:100%;padding:15px;background:#162529;border:1px solid #344d50;transform:rotate(1.15deg);box-shadow:var(--shadow)}.hero-art-top,.hero-art-bottom{font-size:9px;color:#849f9e;display:flex;justify-content:space-between;padding:7px 3px 13px}.hero-art-bottom{padding:13px 3px 4px}.hero-art-grid{height:495px;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1.2fr .8fr;gap:9px}.hero-tile-main{grid-column:1/3}.hero-tile{height:auto!important;min-height:0!important}.hero-tile .media-placeholder{padding:24px}.hero-tile .media-placeholder strong{font-size:24px;max-width:280px}.hero-tile-small .media-placeholder strong{font-size:16px}.hero-tile-small .media-placeholder small{font-size:11px}.hero-tile .media-placeholder .media-symbol{position:absolute;right:20px;top:20px;font-size:54px;color:#9addd6;opacity:.5}.hero-tile figcaption{position:absolute;bottom:0;left:0;right:0;z-index:2;padding:10px 13px!important;margin:0;background:linear-gradient(0deg,rgba(0,0,0,.78),transparent);border:none!important;color:#e2f5ef!important;font-size:9px!important;pointer-events:none}.ticker{background:var(--cyan);color:#193034;font-size:11px;font-weight:800;overflow:hidden}.ticker-inner{display:flex;align-items:center;justify-content:space-between;width:min(100% - 96px,var(--wrap));margin:auto;gap:18px;min-height:66px;white-space:nowrap}.ticker-star{font-size:22px;font-family:var(--font);color:#5a9896;font-weight:400}.intro-section{padding:123px 0 118px}.section-label{display:flex;align-items:center;gap:17px;font-size:11px;color:#8da9aa;font-weight:650}.number-box{font-size:11px;color:var(--cyan);border:1px solid #496569;min-width:34px;height:34px;display:grid;place-items:center}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start;margin-top:38px}.intro-grid h2{font-size:clamp(42px,4.4vw,73px);line-height:1.09;font-weight:760;color:#f4f9f5;max-width:630px}.intro-prose{max-width:565px;padding-top:8px}.intro-prose>p{font-size:15px;color:#bdcaca;line-height:1.85;margin-bottom:17px}.intro-prose .intro-pull{border-left:3px solid var(--cyan);padding-left:23px;margin-top:28px;color:#f7fff9;font-size:19px;line-height:1.55}.intro-pull strong{color:var(--cyan);font-weight:700}.principle-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-top:89px;border-top:1px solid #2d4246;padding-top:22px}.principle-strip div{font-size:11px;letter-spacing:.04em;color:#eff7f4;font-weight:750}.principle-strip span{font-family:var(--mono);color:var(--cyan);padding-right:9px}.timeline-area{background:var(--light);color:#182429;padding:100px 0 130px}.timeline-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:77px}.timeline-aside{align-self:start;position:sticky;top:36px}.timeline-aside .aside-label{color:#718183}.timeline-tracks{display:flex;flex-direction:column;border-left:1px solid #c6d0d0;margin:37px 0 45px}.timeline-link{font-family:var(--mono);letter-spacing:.03em;font-size:10px;color:#7b898a;padding:13px 0 13px 19px;position:relative;transition:color .2s}.timeline-link span{font-weight:800;margin-right:9px;color:#a0aaaa}.timeline-link:before{content:"";width:3px;height:0;position:absolute;left:-2px;top:0;background:#147880;transition:height .2s}.timeline-link:hover,.timeline-link.is-active{color:#123337;font-weight:700}.timeline-link.is-active:before{height:100%}.timeline-link.is-active span{color:#16818a}.aside-quote{font-size:16px;line-height:1.65;color:#53696d;max-width:190px;letter-spacing:-.02em}.chapters{min-width:0}.chapter{padding-bottom:106px;margin-bottom:102px;border-bottom:1px solid #d2ddda;scroll-margin-top:24px}.chapter-last{border-bottom:none;margin-bottom:0;padding-bottom:0}.chapter-header{display:flex;align-items:center;justify-content:space-between;gap:15px;font-weight:700;font-size:10px;color:#47777b;margin-bottom:22px}.chapter-years{color:#7b8b8c;text-align:right}.chapter h3{font-size:clamp(40px,4.3vw,68px);line-height:1.12;font-weight:750;color:#16252a;margin-bottom:26px}.chapter h3 em{color:#16828a}.chapter-lede{font-size:17px!important;line-height:1.75!important;color:#25393d!important;font-weight:480;max-width:850px}.chapter>p{font-size:14px;color:#637276;line-height:1.83;margin-bottom:22px;max-width:840px}.feature-grid{display:grid;gap:15px;margin-top:35px;min-width:0}.feature-grid-uneven{grid-template-columns:1.34fr .66fr}.feature-grid-thirds{grid-template-columns:repeat(3,minmax(0,1fr))}.feature-grid-halves{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-gallery{margin-top:14px}.media-slot{position:relative;margin:0;overflow:hidden;background:#1d3338;color:#effff9;isolation:isolate;min-width:0;min-height:240px;cursor:default}.media-slot:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.72;background:radial-gradient(circle at 81% 11%,rgba(121,207,200,.27),transparent 38%),repeating-linear-gradient(0deg,transparent,transparent 23px,rgba(158,237,219,.04) 24px),linear-gradient(130deg,#14292e,#274147)}.media-slot:nth-child(2):before{background:radial-gradient(circle at 8% 100%,rgba(188,219,194,.22),transparent 52%),repeating-linear-gradient(90deg,transparent,transparent 31px,rgba(158,237,219,.05) 32px),linear-gradient(120deg,#0f2b33,#1b3c42)}.media-slot:nth-child(3):before{background:radial-gradient(circle at 90% 15%,rgba(213,237,176,.20),transparent 47%),linear-gradient(120deg,#15242e,#244048)}.media-placeholder{position:absolute;inset:0;padding:27px;display:flex;align-items:flex-start;justify-content:flex-end;flex-direction:column;z-index:1;background:linear-gradient(0deg,rgba(5,20,25,.35),transparent 75%)}.media-placeholder:after{content:"+";position:absolute;right:24px;top:12px;color:rgba(182,255,237,.31);font-size:76px;font-weight:200;line-height:1}.media-placeholder .slot-type{font-size:10px;position:absolute;top:22px;left:25px;color:#a4d0cc;font-weight:700}.media-placeholder strong{font-size:24px;line-height:1.15;letter-spacing:-.035em;max-width:330px;position:relative}.media-placeholder small{font-size:12px;line-height:1.5;margin-top:11px;color:#c0d5d4;max-width:330px;position:relative}.media-placeholder code{display:block;color:#8ce2d8;font-size:10px;line-height:1.5;margin-top:16px;overflow-wrap:anywhere}.media-slot>figcaption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(0deg,rgba(0,0,0,.76),transparent);padding:23px 18px 12px;color:#dff4ee;font-size:9px;font-weight:700;z-index:4;pointer-events:none;opacity:0;transition:opacity .2s}.media-slot.is-loaded>figcaption{opacity:1}.media-slot.is-loaded{cursor:zoom-in}.media-slot.is-loaded:focus-visible{outline:3px solid #1d8d93;outline-offset:3px}.media-slot.is-loaded .media-placeholder{display:none}.media-slot .slot-media{width:100%;height:100%;position:absolute;inset:0;display:block;object-fit:cover;z-index:0}.media-slot .slot-media[hidden]{display:none}.media-slot .play-overlay{display:none}.media-slot.is-video.is-loaded .play-overlay{display:grid;place-items:center;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:rgba(11,28,31,.82);width:68px;height:68px;border-radius:50%;z-index:3;font-size:26px;color:#fff;pointer-events:none;border:1px solid #b5eeea}.media-slot:hover .slot-media{transition:transform .6s;transform:scale(1.025)}.media-medium{min-height:288px}.media-large{min-height:390px}.media-xlarge{min-height:485px}.media-short{min-height:232px}.media-wide{min-height:260px;margin-top:15px}.media-wide .media-placeholder{max-width:none}.insight-panel{background:#dae7e4;border:1px solid #cadad6;padding:28px;display:flex;flex-direction:column;min-height:288px}.tag{color:#247981;font-size:10px;font-weight:800}.insight-panel>p{margin:auto 0;font-size:clamp(20px,2vw,31px);line-height:1.4;letter-spacing:-.04em;color:#3b5457}.insight-panel strong{color:#117d83}.insight-line{font-family:var(--mono);font-size:9px;line-height:1.6;color:#6f8180}.story-numbers{margin-top:38px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #cbd4d2;border-bottom:1px solid #cbd4d2}.story-numbers>div{padding:25px 20px 24px 0;border-right:1px solid #cbd4d2;display:flex;flex-direction:column;gap:5px}.story-numbers>div:not(:first-child){padding-left:24px}.story-numbers>div:last-child{border:none}.story-numbers strong{font-size:38px;color:#137e85;line-height:1;letter-spacing:-.045em}.story-numbers span{font-family:var(--mono);font-size:9px;color:#748688;letter-spacing:.025em}.micro-note{display:block;font-size:9px;color:#758684;margin-top:8px}.takeaway{display:grid;grid-template-columns:150px 1fr;gap:16px;border-left:3px solid #2d9395;background:#e8efec;padding:24px 28px;margin-top:30px}.takeaway-label{font-size:10px;color:#257780;font-weight:800;line-height:1.65}.takeaway>p{font-size:14px;line-height:1.75;color:#415558}.side-project{display:grid;grid-template-columns:1.05fr .95fr;gap:14px;margin-top:17px;background:#dce8e4;min-height:260px}.side-project-copy{padding:29px}.side-project h4{font-size:28px;letter-spacing:-.04em;line-height:1.17;margin:15px 0}.side-project p{font-size:13px;line-height:1.73;color:#445e5e}.side-project p em{font-style:italic}.side-project-foot{font:9px var(--mono);letter-spacing:.03em;color:#287f83;display:block;margin-top:23px}.side-project-media{min-height:275px}.side-project-media .media-placeholder strong{font-size:22px}
.outcome-card,.spec-card{background:#1b3236;color:#e5f3ef;padding:33px 31px;display:flex;flex-direction:column;min-height:390px}.outcome-card h4{font-size:27px;letter-spacing:-.03em;line-height:1.16;margin-top:21px}.outcome-card ul{padding-left:20px;margin:25px 0;line-height:1.7;color:#bfd4d1;font-size:13px}.outcome-card li{margin-bottom:7px}.outcome-bottom{font:10px var(--mono);letter-spacing:.05em;margin-top:auto;border-top:1px solid #436263;padding-top:17px;color:#9ee4de;display:flex;justify-content:space-between}.mini-career-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:35px}.mini-career{border-top:3px solid #217f83;background:#e9f0ed;padding:24px;min-height:270px}.mini-career>span{font:10px var(--mono);letter-spacing:.035em;color:#33757b}.mini-career h4{font-size:22px;letter-spacing:-.035em;line-height:1.15;margin:23px 0 13px}.mini-career p{font-size:13px;line-height:1.7;color:#576d70}.spec-card{min-height:485px}.spec-card .tag{color:#9fdad5;margin-bottom:36px}.spec-line{border-top:1px solid #426167;padding:21px 0 17px;display:flex;flex-direction:column;gap:9px}.spec-line>span{font:10px var(--mono);letter-spacing:.04em;color:#9bbfbc}.spec-line strong{font-size:29px;letter-spacing:-.04em;line-height:1}.spec-footer{font:10px var(--mono);line-height:1.8;color:#8dd1ce;margin-top:auto}.achievement-band{margin-top:25px;display:grid;grid-template-columns:210px 1fr;gap:24px;background:#dcece8;border:1px solid #bbd6d1;padding:28px}.achievement-band>div>span{font:10px var(--mono);color:#367e80;display:block;margin-bottom:10px}.achievement-band strong{font-size:28px;letter-spacing:-.055em}.achievement-band p{font-size:14px;line-height:1.75;color:#3d5c60}.field-method{margin-top:25px;display:grid;grid-template-columns:1fr 1fr;gap:28px;padding:29px;background:#e1eae7}.field-method-intro h4{font-size:26px;letter-spacing:-.035em;max-width:270px;line-height:1.25;margin:13px 0}.field-method-intro p{font-size:13px;color:#657777}.method-steps{list-style:none;margin:0;padding:0}.method-steps li{display:flex;align-items:center;gap:16px;font-size:13px;border-bottom:1px solid #c6d5d0;padding:11px 0}.method-steps li:last-child{border:none}.method-steps li span{font:10px var(--mono);font-weight:700;color:#20878a}.approach-section{background:#12242a;color:#e8f3f0;padding:110px 0 118px}.section-label-dark{color:#9dc4bf}.section-label-dark .number-box{color:#b1f1e6;border-color:#436e6b}.approach-head{display:flex;justify-content:space-between;align-items:end;gap:54px;margin-top:34px}.approach-head h2{font-size:clamp(40px,4.5vw,71px);line-height:1.1;color:#f1fbf8}.approach-head h2 em{color:#adf0e5}.approach-head p{max-width:380px;color:#aac2bf;line-height:1.8;font-size:14px;padding-bottom:5px}.capability-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #335056;margin-top:60px}.capability{padding:27px 23px 30px;border-right:1px solid #335056;min-height:340px;display:flex;flex-direction:column}.capability:last-child{border:none}.capability-no{color:#79aaaa;font-size:11px}.capability-icon{color:#bcf9ed;font-size:48px;line-height:1;margin-top:32px}.capability h3{margin-top:20px;font-size:27px;letter-spacing:-.03em}.capability p{margin:13px 0 23px;font-size:13px;line-height:1.7;color:#b6ccca}.capability-tags{font-size:9px;color:#82beb6;margin-top:auto;line-height:1.5}.toolbox{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:42px}.toolbox-label{color:#9de0da;font-size:10px}.toolbox p{color:#aac2be;line-height:1.7;font-size:12px;margin-top:12px}.next-section{padding:130px 0 135px}.next-hero{display:grid;grid-template-columns:1.3fr .7fr;align-items:end;gap:70px;margin-top:38px}.pretitle{color:#8bd1ca;font-size:10px;font-weight:800}.next-hero h2{color:#f4fbf7;font-size:clamp(46px,5vw,82px);line-height:1.08;margin-top:19px}.next-hero h2 em{color:#a9e9de}.next-hero p{font-size:15px;color:#b4c7c5;line-height:1.8;padding-bottom:5px}.rm-track{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:70px}.rm-track>div{border-top:2px solid #77c5c3;padding:22px 7px 0 0}.rm-track>div>span{font:11px var(--mono);color:#83c4c2}.rm-track strong{display:block;font-size:18px;letter-spacing:-.025em;margin:23px 0 10px}.rm-track p{color:#98aeaf;font-size:12px;line-height:1.7}.sample-work{margin-top:90px;border:1px solid #345158;padding:32px;background:#18292e}.sample-head{max-width:800px}.tag-cyan{color:#a7e7e0}.sample-head h3{font-size:34px;color:#f5fcf8;letter-spacing:-.04em;margin:19px 0 13px}.sample-head p{font-size:13px;color:#b1c7c4;line-height:1.8}.sample-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:34px}.sample-box{border:1px solid #39575a;padding:20px;min-height:200px}.sample-box>span{font-size:10px;color:#98d4cd}.sample-box strong{display:block;font-size:15px;line-height:1.35;letter-spacing:-.02em;margin:20px 0 12px}.sample-box p{font-size:12px;line-height:1.6;color:#9aafac}.sample-loop{display:flex;gap:8px;align-items:center;justify-content:space-between;margin-top:25px;border-top:1px solid #3c5a5c;padding-top:25px}.sample-loop div{font:10px var(--mono);font-weight:750;letter-spacing:.025em;color:#bce8dd}.sample-loop>span{color:#5b9696}.contact-section{background:#b9eee3;color:#12282b;padding:105px 0 112px}.contact-inner{display:grid;grid-template-columns:1.35fr .65fr;gap:45px;align-items:end}.contact-section .section-label{color:#3a7575}.contact-section h2{font-size:clamp(49px,5.6vw,86px);line-height:1.06;color:#102c32;margin:22px 0}.contact-section h2 em{color:#447a76}.contact-section p{font-size:15px;line-height:1.75;max-width:600px;color:#335a5b}.contact-actions{display:flex;flex-direction:column;gap:12px;align-items:stretch;padding-bottom:10px}.button-dark{background:#133039;color:#f1fffa}.button-outline-dark{border:1px solid #518b87;background:transparent;color:#18393c;text-align:left}.button-outline-dark:hover{background:#d4f5ed}.contact-email{text-align:right;color:#416d6c;font-size:11px;margin-top:5px}.site-footer{background:#0b161b;padding:31px 0}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:20px}.footer-brand{font-weight:900;font-size:19px;letter-spacing:-.1em;color:#f1fcf7}.footer-brand>span{color:#a0e8db}.footer-brand small{font-weight:500;letter-spacing:.04em;margin-left:25px;color:#829997;font-size:10px}.footer-right{display:flex;align-items:center;gap:45px;color:#8cb0ac;font-size:9px}.footer-right a{color:#d5f0e8}.footer-right a:hover{color:#a1efe0}.toast{position:fixed;right:18px;bottom:20px;background:#c4f5e8;color:#123139;padding:13px 19px;border-radius:3px;font-size:13px;font-weight:750;z-index:99;opacity:0;transform:translateY(15px);pointer-events:none;transition:.25s}.toast.show{opacity:1;transform:translateY(0)}#media-dialog{width:min(1100px,calc(100% - 30px));max-height:calc(100dvh - 42px);padding:0;border:1px solid #66888a;background:#102329;color:#e3f4ef;box-shadow:0 25px 70px #000a;overflow:auto}#media-dialog::backdrop{background:rgba(0,12,16,.88)}.dialog-close{z-index:15;position:sticky;float:right;top:12px;margin:12px 12px -55px 0;border:1px solid #668b89;color:#fff;background:#19363b;width:43px;height:43px;font-size:31px;line-height:1}.dialog-close:hover{background:#285056}#dialog-media img,#dialog-media video{display:block;width:100%;height:auto;max-height:74dvh;object-fit:contain;background:#060d10}.dialog-meta{padding:20px 24px 27px}.dialog-meta strong{font-size:19px}.dialog-meta p{font-size:13px;line-height:1.65;color:#9ab9b8;margin-top:7px}
@media (max-width:1250px){.hero{gap:26px;grid-template-columns:1.05fr .95fr}.hero h1{font-size:clamp(51px,5.4vw,78px)}.hero-accent{font-size:.64em}.timeline-layout{gap:43px;grid-template-columns:193px minmax(0,1fr)}.mini-career{padding:20px}.capability{padding:24px 18px}.sample-box{padding:16px}}
@media (max-width:1020px){.wrap{width:min(calc(100% - 58px),var(--wrap))}.site-header{padding:0 29px}.hero{padding:83px 0;min-height:0;grid-template-columns:1fr;gap:44px}.hero h1{font-size:clamp(58px,8vw,96px)}.hero-art{max-width:100%;transform:none}.hero-art-grid{height:380px;grid-template-columns:1.6fr 1fr;grid-template-rows:1fr 1fr}.hero-tile-main{grid-column:1;grid-row:1/3}.hero-tile-small{grid-column:2}.hero-footnote{margin-top:40px}.ticker-inner{width:calc(100% - 58px);gap:12px;font-size:9px}.intro-grid{gap:38px}.timeline-layout{display:block}.timeline-aside{position:static;margin-bottom:55px}.timeline-tracks{flex-direction:row;flex-wrap:wrap;border:none;gap:5px;margin:19px 0 0}.timeline-link{padding:9px 11px;border:1px solid #ccd6d2}.timeline-link:before{top:auto;bottom:-1px;width:100%;height:0;left:0}.timeline-link.is-active:before{height:2px}.aside-quote{display:none}.chapter h3{font-size:clamp(42px,6vw,70px)}.capability-grid{grid-template-columns:repeat(2,1fr)}.capability{min-height:300px}.capability:nth-child(2){border-right:none}.capability:nth-child(-n+2){border-bottom:1px solid #335056}.approach-head{align-items:start;display:block}.approach-head p{margin-top:24px;max-width:570px}.rm-track,.sample-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sample-loop{flex-wrap:wrap;justify-content:flex-start;row-gap:15px}}
@media (max-width:710px){html{scroll-padding-top:80px}.wrap{width:calc(100% - 38px)}.site-header{height:70px;padding:0 19px}.identity-name{font-size:10px}.identity-name small{font-size:8px}.mobile-toggle{border:1px solid #3e6060;background:transparent;width:41px;height:38px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px}.mobile-toggle span{display:block;width:18px;height:2px;background:#e2fbf3}.top-nav{display:none;position:absolute;top:70px;left:0;right:0;background:#13252a;border-bottom:1px solid #365457;padding:18px 21px 24px;flex-direction:column;align-items:stretch;gap:3px;box-shadow:0 16px 30px #07111388}.top-nav.is-open{display:flex}.top-nav>a{padding:12px 6px}.top-nav .nav-contact{margin-top:12px;padding:13px}.hero{padding:68px 0 70px}.eyebrow{font-size:9px;line-height:1.6;max-width:320px}.hero h1{font-size:clamp(44px,9.9vw,72px);margin:24px 0}.hero-accent{white-space:normal;font-size:.78em}.hero-lead{font-size:14px;line-height:1.75}.hero-actions{align-items:stretch;flex-direction:column;gap:9px}.button{justify-content:space-between}.hero-art{padding:10px}.hero-art-grid{height:415px;grid-template-columns:1fr 1fr;grid-template-rows:1.35fr .8fr}.hero-tile-main{grid-column:1/3;grid-row:1}.hero-tile-small{grid-row:2}.hero-tile-small:nth-child(2){grid-column:1}.hero-tile-small:nth-child(3){grid-column:2}.hero-tile .media-placeholder{padding:14px}.hero-tile .media-placeholder .slot-type{font-size:8px;top:13px;left:12px}.hero-tile .media-placeholder strong{font-size:19px}.hero-tile-small .media-placeholder strong{font-size:15px}.hero-tile-small .media-placeholder small{font-size:10px}.hero-art-top,.hero-art-bottom{font-size:7px}.hero-footnote{font-size:8px;margin-top:32px}.ticker-inner{min-width:720px;justify-content:flex-start;padding-left:19px;margin:0;font-size:9px}.intro-section{padding:77px 0 85px}.intro-grid{display:block;margin-top:25px}.intro-grid h2{font-size:clamp(37px,10vw,62px)}.intro-prose{padding-top:25px}.intro-prose>p{font-size:14px}.intro-prose .intro-pull{font-size:17px}.principle-strip{grid-template-columns:1fr 1fr;margin-top:55px;gap:24px}.principle-strip div{font-size:9px}.timeline-area{padding:70px 0 85px}.timeline-aside{margin-bottom:43px}.timeline-link{font-size:9px}.chapter{padding-bottom:75px;margin-bottom:75px}.chapter-header{font-size:9px;align-items:flex-start}.chapter h3{font-size:clamp(36px,10vw,53px);margin-bottom:19px}.chapter-lede{font-size:15px!important}.chapter>p{font-size:13px}.feature-grid-uneven,.feature-grid-thirds,.feature-grid-halves,.mini-career-grid,.side-project{grid-template-columns:1fr}.feature-grid{gap:12px;margin-top:25px}.media-medium,.media-large,.media-xlarge{min-height:280px}.media-short{min-height:250px}.media-wide{min-height:260px}.media-placeholder{padding:23px}.media-placeholder strong{font-size:21px}.insight-panel{min-height:240px}.story-numbers strong{font-size:29px}.story-numbers span{font-size:8px}.story-numbers>div{padding:18px 12px 18px 0}.story-numbers>div:not(:first-child){padding-left:12px}.takeaway{grid-template-columns:1fr;gap:11px;padding:21px}.takeaway p{font-size:13px}.side-project{display:grid;grid-template-columns:1.05fr .95fr;gap:14px;margin-top:17px;background:#dce8e4;min-height:260px}.side-project-copy{padding:29px}.side-project h4{font-size:28px;letter-spacing:-.04em;line-height:1.17;margin:15px 0}.side-project p{font-size:13px;line-height:1.73;color:#445e5e}.side-project p em{font-style:italic}.side-project-foot{font:9px var(--mono);letter-spacing:.03em;color:#287f83;display:block;margin-top:23px}.side-project-media{min-height:275px}.side-project-media .media-placeholder strong{font-size:22px}
.outcome-card,.spec-card{min-height:320px}.achievement-band{grid-template-columns:1fr;gap:11px}.field-method{grid-template-columns:1fr;gap:13px;padding:23px}.mini-career{min-height:0}.side-project-copy{padding:25px}.side-project-media{min-height:280px}.approach-section{padding:75px 0 85px}.approach-head h2{font-size:clamp(35px,9vw,60px)}.approach-head p{font-size:13px}.capability-grid{grid-template-columns:1fr;margin-top:39px}.capability{border-right:none;border-bottom:1px solid #335056!important;min-height:245px}.capability:last-child{border-bottom:none!important}.capability-icon{margin-top:21px}.capability h3{margin-top:15px}.toolbox{grid-template-columns:1fr;gap:20px}.next-section{padding:85px 0}.next-hero{grid-template-columns:1fr;gap:23px}.next-hero h2{font-size:clamp(40px,10vw,62px)}.rm-track,.sample-grid{grid-template-columns:1fr 1fr;gap:16px}.rm-track{margin-top:43px}.rm-track strong{font-size:15px}.rm-track p{font-size:11px}.sample-work{margin-top:58px;padding:19px}.sample-head h3{font-size:28px}.sample-box{min-height:185px;padding:13px}.sample-box strong{font-size:13px}.sample-box p{font-size:11px}.sample-box>span{font-size:9px}.sample-loop{gap:5px}.sample-loop div{font-size:9px}.contact-section{padding:76px 0}.contact-inner{grid-template-columns:1fr;gap:34px}.contact-section h2{font-size:clamp(44px,10vw,64px)}.contact-section p{font-size:13px}.contact-email{text-align:left}.footer-inner{align-items:flex-start;flex-direction:column}.footer-right{gap:20px;flex-wrap:wrap}.footer-brand small{font-size:8px;margin-left:10px}}
@media (max-width:400px){.hero h1{font-size:43px}.rm-track,.sample-grid{grid-template-columns:1fr}.story-numbers strong{font-size:25px}.story-numbers span{font-size:7px}.media-slot{min-height:260px}.hero-art-grid .media-slot{min-height:0}.hero-tile-small .media-placeholder strong{font-size:13px}.hero-tile-small .media-placeholder small{font-size:9px}.hero-tile-small .media-placeholder code{font-size:8px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
@media print{.site-header,.mobile-toggle,.top-nav,.ticker,.timeline-aside,.hero-actions,.contact-actions,.site-footer,.page-grid{display:none!important}body{background:#fff;color:#000}.hero{padding:25px 0}.hero h1,.intro-grid h2,.chapter h3{color:#111}.timeline-area,.approach-section,.contact-section{background:#fff;color:#111;padding:25px 0}.approach-head h2,.next-hero h2,.contact-section h2{color:#111}.chapter{break-inside:avoid}.wrap{width:94%}.media-slot{break-inside:avoid}}


/* Portfolio media expansion — chronological engineering archive */
.gallery-kicker{margin:43px 0 5px;display:flex;align-items:baseline;justify-content:space-between;gap:18px;border-top:1px solid #d4e0db;padding-top:18px}
.gallery-kicker span{font:700 10px var(--mono);color:#177f84;letter-spacing:.08em}
.gallery-kicker p{font-size:12px;line-height:1.55;color:#657b7a;max-width:55%;text-align:right}
.gallery-kicker-spaced{margin-top:56px}
.archive-strip{margin-top:15px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.archive-strip .media-slot{min-height:168px}
.media-portrait-safe .slot-media{object-fit:contain!important;object-position:center center;background:#1b3437}
.media-diagram{background:#15262b}
.media-diagram .slot-media{object-fit:contain!important;background:#e3e9e5;padding:12px}
.media-slot video.slot-media{object-fit:cover}
.media-slot.is-video.is-loaded{cursor:pointer}
.media-slot.is-video.is-loaded figcaption{padding-left:60px}
.media-slot.is-video.is-loaded .slot-media{filter:brightness(.92)}
.chapter-drone .chapter-lede{max-width:890px}
.drone-insight{background:#153a3e;padding:30px 34px;margin:33px 0 19px;color:#fff;border-left:4px solid #78c8bf}
.drone-insight>span,.drone-spec>span{font:700 10px var(--mono);letter-spacing:.07em;color:#a7e8df}
.drone-insight strong{font-size:clamp(21px,2.3vw,32px);font-weight:740;line-height:1.34;letter-spacing:-.034em;display:block;max-width:840px;margin:15px 0}
.drone-insight p{color:#b4d4d1;font-size:13px;line-height:1.7;max-width:760px}
.drone-spec{min-height:260px;background:#d9e8e3;padding:32px 30px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.drone-spec>span{color:#177780}
.drone-spec h4{font-size:25px;line-height:1.14;letter-spacing:-.045em;margin:19px 0 12px;max-width:380px}
.drone-spec p{font-size:13px;line-height:1.7;color:#516769;max-width:430px}
.drone-keywords{margin-top:26px;font:10px var(--mono);line-height:1.55;color:#31777e}
.outcome-card-compact{min-height:300px}
@media(max-width:710px){.gallery-kicker{display:block;margin-top:32px}.gallery-kicker p{max-width:100%;text-align:left;margin-top:8px}.archive-strip{gap:9px;grid-template-columns:repeat(3,minmax(0,1fr))}.archive-strip .media-slot{min-height:155px}.archive-strip .media-slot figcaption{font-size:7px}.drone-insight{padding:25px 22px}.drone-insight strong{font-size:22px}.drone-spec{padding:27px 24px}.media-diagram .slot-media{padding:7px}}
@media(max-width:430px){.archive-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.archive-strip .media-slot:last-child{grid-column:1/-1}}

/* V4: Hide unfinished media visually without using display:none / the hidden
   attribute. Native lazy images must remain layout-visible to be fetched. */
.media-slot .slot-media { opacity: 0; pointer-events: none; }
.media-slot.is-loaded .slot-media { opacity: 1; }

/* V5: employer-neutral portfolio, stronger Calcean evidence, and direct resume access. */
.top-nav .nav-resume{color:var(--cyan);display:inline-flex;align-items:center;gap:9px;white-space:nowrap}
.top-nav .nav-resume:hover{color:#fff}
.field-case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-top:31px}
.field-case{min-width:0;background:#eff4f0;border:1px solid #d3e0d9;display:flex;flex-direction:column}
.field-case>.media-slot{min-height:235px;height:240px;flex:none}
.field-case>.media-slot .slot-media{object-position:50% 36%}
.field-case-body{padding:25px 24px 28px;display:flex;flex-direction:column;flex:1}
.case-index{font:700 10px var(--mono);color:#1b8685;letter-spacing:.07em}
.field-case h4{font-size:clamp(19px,1.7vw,24px);color:#172e30;line-height:1.2;letter-spacing:-.035em;margin:15px 0 13px}
.field-case p{font-size:13px;line-height:1.72;color:#466064;margin:0}
.case-lesson{font:700 10px/1.5 var(--mono);color:#277f82;border-top:1px solid #cddbd7;padding-top:17px;margin-top:auto;transform:translateY(13px)}
.thermal-evidence{display:grid;grid-template-columns:210px minmax(0,1fr);gap:36px;align-items:center;background:#173d41;color:#f3f9f7;padding:28px 34px;margin-top:18px;border-left:4px solid #88d7c9}
.thermal-evidence-stat>span{display:block;font:700 10px var(--mono);color:#a4ded7;letter-spacing:.075em}
.thermal-evidence-stat strong{display:block;font-size:clamp(40px,4.4vw,57px);letter-spacing:-.07em;line-height:1.04;margin:8px 0 12px;color:#f4fff9}
.thermal-evidence-stat small{display:block;font-size:11px;line-height:1.5;color:#bed4d1}
.thermal-evidence-story strong{font-size:19px;line-height:1.35;letter-spacing:-.025em}
.thermal-evidence-story p{font-size:12px;line-height:1.75;color:#c5dad8;margin:10px 0 0}
.vpa-takeaway{margin-top:20px}
.forward-statement{margin-top:54px;padding:28px 0 0;border-top:1px solid #35535a;max-width:980px;display:grid;grid-template-columns:215px 1fr;gap:28px;align-items:start}
.forward-statement>span{font:700 10px/1.5 var(--mono);letter-spacing:.08em;color:#89c6c6}
.forward-statement p{font-size:clamp(18px,2vw,25px);line-height:1.43;letter-spacing:-.018em;margin:0;color:#dcece9}
.contact-resume-download,.copy-email-inline{font-size:12px;font-weight:700;letter-spacing:.01em;background:transparent;color:#204c4e;text-align:left;border:0;line-height:1.4;display:inline-flex;align-items:center;gap:10px;padding:6px 0;width:max-content;max-width:100%}
.contact-resume-download:hover,.copy-email-inline:hover{text-decoration:underline;text-underline-offset:4px}
.contact-email{margin-top:0}
@media(max-width:1050px){.field-case-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field-case-grid .field-case:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1.1fr}.field-case-grid .field-case:last-child>.media-slot{height:100%;min-height:285px}}
@media(max-width:710px){.field-case-grid{grid-template-columns:1fr;gap:17px}.field-case-grid .field-case:last-child{grid-column:auto;display:flex}.field-case-grid .field-case:last-child>.media-slot{height:245px;min-height:245px}.field-case>.media-slot{height:245px;min-height:245px}.thermal-evidence{grid-template-columns:1fr;gap:18px;padding:26px 23px}.forward-statement{grid-template-columns:1fr;gap:8px;margin-top:39px}.contact-resume-download,.copy-email-inline{padding:8px 0}.top-nav .nav-resume{width:max-content;padding:12px 6px}}
@media(max-width:440px){.field-case-body{padding:24px 20px 28px}.field-case h4{font-size:23px}}

.fll-grid{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);align-items:stretch}.fll-photo{min-height:360px;background:#162529}.fll-photo .slot-media{object-fit:contain;object-position:center center;background:#162529}.fll-insight{min-height:360px;padding:34px 34px 30px}.fll-insight>p{font-size:clamp(22px,1.9vw,39px);line-height:1.26;letter-spacing:-.045em}.fll-insight .insight-line{font-size:10px;line-height:1.65;margin-top:14px}

/* V7: 2017 world championship FRC media and field-operations narrative */
.frc-world-kicker{margin-top:38px}
.frc-world-feature{grid-template-columns:minmax(0,1.4fr) minmax(0,.9fr);margin-top:16px}
.frc-world-feature .media-large{min-height:342px}
.frc-driver-photo .slot-media{object-position:center 40%}
.frc-world-note{margin:13px 0 26px!important;max-width:860px;font-size:13px!important;line-height:1.75!important;color:#526970!important}
.frc-world-note a{color:#0d7379;text-decoration:underline;text-underline-offset:3px;font-weight:750}
.frc-pit-context{display:grid;grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);gap:16px;margin-top:22px;background:#dce8e4}
.frc-pit-context .media-slot{min-height:275px}
.frc-pit-context .slot-media{object-position:center 44%}
.frc-pit-copy{padding:33px 32px 30px 16px;align-self:center}
.frc-pit-copy h4{font-size:clamp(24px,2.25vw,32px);line-height:1.17;margin:16px 0;color:#19383b;letter-spacing:-.045em}
.frc-pit-copy p{font-size:13px;line-height:1.75;color:#506b6d}
@media(max-width:800px){.frc-world-feature{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.frc-pit-context{grid-template-columns:1fr}.frc-pit-copy{padding:24px 27px 29px}}
@media(max-width:710px){.frc-world-feature{grid-template-columns:1fr}.frc-world-feature .media-large{min-height:270px}.frc-pit-context{grid-template-columns:1fr}}

/* V8: Fix the FLL gallery on narrow screens and give remote mentoring a quiet second beat. */
.fll-continuation{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:16px;align-items:stretch;margin-top:16px;background:#e5efeb;min-width:0}
.fll-continuation-copy{padding:31px 31px 29px;align-self:center;min-width:0}
.fll-continuation-copy h4{font-size:clamp(23px,2.1vw,31px);line-height:1.16;letter-spacing:-.045em;color:#19363a;margin:16px 0 13px;font-weight:745}
.fll-continuation-copy p{font-size:13px;line-height:1.77;color:#4b6569}
.fll-remote-photo{min-height:262px;height:100%;background:#263c41}
.fll-remote-photo .slot-media{object-fit:cover;object-position:center center}
@media(max-width:1180px){
  .feature-grid.fll-grid{grid-template-columns:minmax(0,1fr);gap:14px}
  .fll-photo{width:100%;min-height:420px;height:420px}
  .fll-insight{min-height:0;padding:30px 34px;gap:23px}
  .fll-insight>p{font-size:clamp(25px,3.3vw,33px);margin:0;line-height:1.3}
}
@media(max-width:710px){
  .feature-grid.fll-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;width:100%;max-width:100%;min-width:0}
  .fll-photo{height:clamp(350px,110vw,455px);min-height:0;max-width:100%;width:100%;margin:0}
  .fll-photo .slot-media{object-fit:contain;object-position:center center;width:100%;height:100%}
  .fll-insight{padding:27px 24px 25px;min-height:0;max-width:100%}
  .fll-insight>p{font-size:clamp(21px,5.4vw,26px);line-height:1.35;letter-spacing:-.035em;overflow-wrap:normal}
  .fll-insight .insight-line{font-size:9px;line-height:1.7}
  .fll-continuation{grid-template-columns:minmax(0,1fr);gap:0;margin-top:13px}
  .fll-continuation-copy{padding:25px 24px 24px}
  .fll-continuation-copy h4{font-size:24px}
  .fll-remote-photo{height:300px;min-height:0;grid-row:1}
}
@media(max-width:350px){
  .fll-insight>p{font-size:20px}
  .fll-insight{padding:25px 21px}
}

/* V9: Stack the BattleBots story on narrow screens and show the whole prototype.
   The desktop two-column design is intentionally unchanged. */
@media (max-width: 800px) {
  .side-project {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    min-height: 0;
    width: 100%;
  }
  .side-project-copy {
    min-width: 0;
    padding: 26px 25px 28px;
  }
  .side-project .side-project-media {
    width: 100%;
    min-width: 0;
    min-height: 0;
    height: clamp(230px, 70vw, 430px);
    aspect-ratio: auto;
    background: #1d3338;
  }
  .side-project .side-project-media .slot-media {
    object-fit: contain;
    object-position: center center;
    background: #1d3338;
  }
}
