@font-face{font-family:DM Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/dm-sans-latin.woff2)format("woff2")}@font-face{font-family:Manrope;font-style:normal;font-weight:500 800;font-display:swap;src:url(/fonts/manrope-latin.woff2)format("woff2")}:root{--navy:#172b3a;--navy-deep:#12212c;--blue:#315f7d;--blue-bright:#467b9d;--blue-light:#dde7ed;--blue-pale:#eef2f3;--slate:#566570;--muted:#5f6d75;--border:#d8dee1;--surface:#f3f3f0;--white:#fff;--green:#1b8b68;--amber:#a46711;--shadow:0 18px 45px #162b3a1a;--shadow-soft:0 8px 24px #162b3a12;--radius:12px;--container:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}section[id]{scroll-margin-top:96px}body{color:var(--navy);background:var(--surface);-webkit-font-smoothing:antialiased;margin:0;font-family:DM Sans,sans-serif;line-height:1.65;overflow-x:hidden}body::selection{background:var(--blue-light);color:var(--navy-deep)}a{color:inherit;text-decoration:none}img,svg{max-width:100%;display:block}button,input,textarea,select{font:inherit}h1,h2,h3{letter-spacing:-.035em;margin:0;font-family:Manrope,sans-serif;line-height:1.12}h1{font-size:clamp(2.75rem,5.5vw,5rem)}h2{font-size:clamp(2rem,4vw,3.55rem)}h3{letter-spacing:-.02em;font-size:1.25rem}p{margin:0 0 1rem}.container{width:min(calc(100% - 40px), var(--container));margin-inline:auto}.narrow{max-width:850px}.section{padding:110px 0}.section-white{background:var(--white)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:1000;background:var(--navy);color:#fff;border-radius:8px;padding:10px 16px;transition:top .2s;position:fixed;top:-60px;left:20px}.skip-link:focus{top:12px}.eyebrow{color:var(--blue);letter-spacing:.16em;text-transform:uppercase;margin-bottom:16px;font-size:.78rem;font-weight:700}.button{cursor:pointer;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;min-height:50px;padding:0 22px;font-weight:700;transition:transform .2s,box-shadow .2s,background .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:3px;box-shadow:0 0 0 6px var(--navy-deep);outline:3px solid #fff}.button-primary{background:var(--blue);color:#fff;box-shadow:0 10px 25px #1769aa38}.button-primary:hover{background:#115a94;box-shadow:0 14px 30px #1769aa45}.button-secondary{border-color:var(--border);color:var(--navy);background:#fff}.button-secondary:hover{box-shadow:var(--shadow-soft);border-color:#9bbbd4}.button-white{color:var(--blue);background:#fff}.button-ghost-light{color:#fff;border-color:#ffffff4d}.button-row{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.text-link{color:var(--blue);font-weight:700}.text-link span{transition:transform .2s;display:inline-block}.text-link:hover span{transform:translate(4px)}.site-header{z-index:100;backdrop-filter:blur(16px);background:#ffffffe8;border-bottom:1px solid #dbe6efd9;position:sticky;top:0}.nav-wrap{justify-content:space-between;align-items:center;gap:28px;min-height:76px;display:flex}.brand{letter-spacing:-.02em;align-items:center;gap:11px;font-family:Manrope,sans-serif;font-weight:800;display:inline-flex}.brand-mark{background:var(--blue);color:#fff;border-radius:10px;place-items:center;width:34px;height:34px;display:grid;box-shadow:0 8px 18px #1769aa33}.primary-nav{align-items:center;gap:26px;display:flex}.primary-nav a{color:var(--slate);font-size:.93rem;font-weight:600;position:relative}.primary-nav a:hover,.primary-nav a[aria-current=page]{color:var(--blue)}.primary-nav a[aria-current=page]:after{content:"";background:var(--blue);border-radius:10px;height:2px;position:absolute;bottom:-11px;left:0;right:0}.primary-nav a:last-child{background:var(--blue);color:#fff;border-radius:10px;padding:9px 15px}.primary-nav a:last-child:after{display:none}.menu-button{background:0 0;border:0;width:44px;height:44px;padding:10px;display:none}.menu-button span:not(.sr-only){background:var(--navy);height:2px;margin:5px 0;display:block}.hero{background:var(--surface);padding:96px 0 118px;position:relative;overflow:hidden}.hero:before{display:none}.hero-decoration{filter:blur(2px);opacity:.7;border-radius:999px;position:absolute}.decoration-one{background:radial-gradient(circle,#2f80ed29,#0000 68%);width:520px;height:520px;top:-250px;right:-220px}.decoration-two{background:radial-gradient(circle,#56bedf2e,#0000 68%);width:420px;height:420px;bottom:-300px;left:-250px}.hero-grid{grid-template-columns:1.16fr .84fr;align-items:center;gap:76px;display:grid;position:relative}.hero-copy,.hero-portrait{min-width:0}.hero-copy h1 em{color:var(--blue);font-style:normal}.hero-intro{max-width:670px;color:var(--slate);margin-top:24px;font-size:1.18rem}.availability{max-width:100%;color:var(--slate);overflow-wrap:anywhere;background:#ffffffbf;border:1px solid #cfe2f2;border-radius:999px;align-items:center;gap:9px;margin-bottom:32px;padding:8px 12px;font-size:.82rem;font-weight:600;line-height:1.35;display:inline-flex}.availability span{background:#26a77a;border-radius:99px;flex:0 0 8px;width:8px;height:8px;box-shadow:0 0 0 5px #26a77a1f}.profile-links{color:var(--slate);flex-wrap:wrap;gap:22px;margin-top:24px;font-size:.9rem;font-weight:600;display:flex}.profile-links a:hover{color:var(--blue)}.hero-portrait{min-height:520px;position:relative}.hero-photo{aspect-ratio:2/3;object-fit:cover;object-position:center 28%;border-radius:6px;width:100%;min-height:520px;display:block}.portrait-card{min-width:185px;box-shadow:var(--shadow-soft);backdrop-filter:blur(12px);background:#ffffffe6;border:1px solid #fffc;border-radius:16px;padding:16px 18px;position:absolute}.portrait-card span,.portrait-card small{color:var(--muted);font-size:.72rem;display:block}.portrait-card strong{margin:3px 0;display:block}.portrait-school{bottom:46px;left:-42px}.portrait-place{min-width:115px;top:50px;right:-24px}.split-heading{grid-template-columns:1.1fr .7fr;align-items:end;gap:100px;display:grid}.split-heading>p{color:var(--slate);margin:0;font-size:1.08rem}.focus-grid{grid-template-columns:repeat(3,1fr);gap:24px;margin-top:54px;display:grid}.focus-grid article,.value-grid article{border:1px solid var(--border);border-radius:var(--radius);background:#fff;padding:28px}.focus-grid article>span,.value-grid article>span{color:var(--blue);margin-bottom:38px;font-size:.8rem;font-weight:800;display:block}.focus-grid h3,.value-grid h3{margin-bottom:10px}.focus-grid p,.value-grid p{color:var(--slate);margin:0}.impact-section{color:#fff;background:var(--navy-deep)}.section-heading{max-width:690px}.section-heading.centered{text-align:center;margin:0 auto 50px}.section-heading.centered .eyebrow,.impact-section .eyebrow{color:#8fd3ff}.section-heading>p:last-child{color:var(--slate);margin-top:18px;font-size:1.05rem}.impact-section .section-heading>p:last-child{color:#aabed0}.impact-grid{border-radius:var(--radius);border:1px solid #ffffff26;grid-template-columns:repeat(4,1fr);display:grid;overflow:hidden}.impact-grid article{background:#ffffff09;border-right:1px solid #ffffff26;min-height:190px;padding:30px}.impact-grid article:last-child{border:0}.impact-grid strong{color:#8fd3ff;letter-spacing:-.05em;margin-bottom:40px;font-family:Manrope;font-size:2.55rem;display:block}.impact-grid p{color:#bfd0de;margin:0;line-height:1.45}.section-heading-row{justify-content:space-between;align-items:end;gap:40px;margin-bottom:46px;display:flex}.project-grid{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}.project-card{border:1px solid var(--border);background:#fff;border-radius:24px;transition:transform .25s,box-shadow .25s,border-color .25s;overflow:hidden}.project-card:hover{box-shadow:var(--shadow);border-color:#accbe2;transform:translateY(-4px)}.project-card.large{grid-column:1/-1}.project-body{padding:30px}.project-meta{color:var(--blue);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;font-size:.73rem;font-weight:700;display:flex}.status{background:var(--surface);color:var(--slate);letter-spacing:0;text-transform:none;border-radius:999px;padding:5px 9px}.status.completed{color:#146b50;background:#e5f7f0}.status.in-progress{color:#7d4905;background:#fff3dc}.project-body h3{font-size:1.55rem}.project-body>p{color:var(--slate)}.project-body h3+p{margin-top:10px}.project-note{border-top:1px solid var(--border);margin-top:20px;padding-top:18px;font-size:.9rem}.project-outcome{color:var(--slate);margin-top:-4px;font-size:.9rem}.project-outcome strong{color:var(--navy)}.tag-list{flex-wrap:wrap;gap:8px;display:flex}.tag-list span{background:var(--blue-pale);color:var(--blue);border-radius:999px;padding:6px 10px;font-size:.75rem;font-weight:600}.project-links{min-height:24px;color:var(--blue);flex-wrap:wrap;gap:8px 18px;margin-top:20px;font-size:.85rem;font-weight:700;display:flex}.project-links>span{color:var(--muted);font-weight:500}.skills-section{background:var(--surface)}.skills-layout{grid-template-columns:.78fr 1.22fr;align-items:start;gap:95px;display:grid}.sticky-heading{position:sticky;top:120px}.skill-stack{border-top:1px solid var(--border)}.skill-stack article{border-bottom:1px solid var(--border);grid-template-columns:70px 180px 1fr;gap:20px;padding:32px 0;display:grid}.skill-number{color:var(--blue);font-weight:800}.personal-grid{grid-template-columns:.85fr 1.15fr;align-items:center;gap:85px;display:grid}.personal-grid p:not(.eyebrow){color:var(--slate);font-size:1.06rem}.personal-grid .button{margin-top:16px}.callout-section{padding-top:0}.callout{color:#fff;background:var(--blue);box-shadow:none;border-radius:12px;justify-content:space-between;align-items:center;gap:50px;padding:58px 64px;display:flex}.callout .eyebrow{color:#bfe4ff}.callout h2{font-size:clamp(1.9rem,3.4vw,3rem)}.callout p:last-child{color:#d8edfc;max-width:620px;margin:14px 0 0}.callout-actions{flex-shrink:0;gap:10px;display:flex}.page-hero{text-align:center;background:var(--surface);padding:112px 0 105px}.page-hero.compact{padding:94px 0 82px}.page-hero .narrow{margin-inline:auto}.page-intro{max-width:760px;color:var(--slate);margin:24px auto 0;font-size:1.15rem}.page-hero .button{margin-top:28px}.story-grid,.mission-grid{grid-template-columns:.82fr 1.18fr;align-items:center;gap:90px;display:grid}.story-copy p:not(.eyebrow),.mission-grid p:not(.eyebrow){color:var(--slate);font-size:1.03rem}.story-copy h2,.mission-grid h2{margin-bottom:24px}.values-section,.hobby-section{background:var(--surface)}.value-grid{grid-template-columns:repeat(4,1fr);gap:18px;display:grid}.mission-grid{grid-template-columns:1.1fr .9fr}.heading-note{max-width:360px;color:var(--slate);margin:0}.hobby-grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.centered-copy{text-align:center}.centered-copy>p:last-child{max-width:750px;color:var(--slate);margin:24px auto 0;font-size:1.1rem}.not-found{place-items:center;min-height:68vh;padding:100px 0;display:grid}.not-found p:not(.eyebrow){color:var(--slate);margin:20px 0 30px}.resume-layout{grid-template-columns:280px 1fr;align-items:start;gap:88px;display:grid}.resume-sidebar{position:sticky;top:120px}.resume-sidebar>p:last-child{color:var(--slate);margin-top:18px}.timeline{border-left:1px solid var(--border)}.timeline-item{padding:0 0 58px 42px;position:relative}.timeline-item:last-child{padding-bottom:0}.timeline-marker{background:var(--blue);width:13px;height:13px;box-shadow:0 0 0 1px var(--blue);border:3px solid #fff;border-radius:99px;position:absolute;top:4px;left:-7px}.timeline-heading{justify-content:space-between;align-items:start;gap:24px;display:flex}.timeline-heading p{color:var(--blue)}.timeline-heading time{color:var(--muted);white-space:nowrap;font-size:.9rem}.timeline-item ul{color:var(--slate);padding-left:20px}.timeline-item li{padding:5px 0}.education-section{background:var(--surface)}.education-card{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft);background:#fff;grid-template-columns:110px 1fr;gap:28px;padding:36px;display:grid}.education-mark{color:#fff;background:#002e5d;border-radius:18px;place-items:center;width:100px;height:100px;font-family:Manrope;font-size:1.55rem;font-weight:800;display:grid}.card-kicker{color:var(--blue);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:700}.education-degree{margin-top:8px;font-weight:600}.education-card p:last-of-type{color:var(--slate)}.course-list{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.course-list span{background:var(--blue-pale);color:var(--blue);border-radius:999px;padding:6px 10px;font-size:.75rem;font-weight:600}.capability-grid{grid-template-columns:repeat(4,1fr);gap:18px;display:grid}.capability-grid article{border:1px solid var(--border);border-radius:var(--radius);padding:28px}.capability-grid h3{border-bottom:1px solid var(--border);padding-bottom:16px}.capability-grid ul{color:var(--slate);padding:0;list-style:none}.capability-grid li{padding:4px 0}.honors-section{background:var(--navy-deep);color:#fff}.honors-grid{grid-template-columns:.8fr 1fr 1fr;align-items:start;gap:38px;display:grid}.honors-grid .eyebrow{color:#8fd3ff}.honors-grid article{gap:20px;display:flex}.honors-grid article>span{color:#8fd3ff;font-weight:800}.honors-grid article p{color:#adbfce}.projects-page{padding-top:44px}.project-legend{color:var(--slate);justify-content:flex-end;gap:20px;margin-bottom:30px;font-size:.8rem;display:flex}.project-legend span{align-items:center;gap:7px;display:flex}.legend-dot{background:var(--muted);border-radius:99px;width:8px;height:8px}.legend-dot.complete{background:var(--green)}.legend-dot.progress{background:#d59125}.full-grid .project-card:nth-child(4n){grid-column:1/-1}.process-section{background:var(--surface)}.resume-intro{background:#fff;padding:88px 0 64px}.resume-intro-grid{grid-template-columns:minmax(0,1.3fr) minmax(310px,.7fr);align-items:end;gap:88px;display:grid}.resume-intro h1{max-width:780px;color:var(--navy-deep);letter-spacing:-.065em;margin:24px 0 20px;font-size:clamp(3rem,5.5vw,5.6rem);line-height:.98}.resume-intro-grid>div>p:last-child{max-width:660px;color:var(--slate);margin:0;font-size:1.08rem;line-height:1.7}.resume-action-card{border-top:3px solid var(--blue);background:var(--surface);padding:28px}.resume-action-card p{margin:0 0 24px}.resume-action-card span,.resume-action-card strong{display:block}.resume-action-card span{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin-bottom:5px;font-size:.68rem;font-weight:700}.resume-action-card strong{color:var(--navy);font-size:1rem}.resume-action-card>div{gap:10px;display:grid}.resume-action-card .button{justify-content:center;width:100%}.resume-experience-link{color:var(--blue);margin-top:20px;font-size:.82rem;font-weight:700;display:inline-block}.resume-document-section{background:#f4f7fc;padding:28px 0 100px}.resume-document-container{max-width:1040px}.resume-toolbar{border:1px solid var(--border);background:#fff;border-bottom:0;border-radius:12px 12px 0 0;justify-content:space-between;align-items:center;padding:18px 22px;display:flex}.resume-toolbar span,.resume-toolbar strong{display:block}.resume-toolbar span{color:var(--blue);text-transform:uppercase;letter-spacing:.1em;font-size:.68rem;font-weight:700}.resume-toolbar strong{color:var(--navy);margin-top:3px;font-size:.9rem}.resume-preview{border:1px solid var(--border);background:#dfe6f0;padding:32px;box-shadow:0 28px 70px #0026571f}.resume-preview a{background:#fff;max-width:850px;margin:0 auto;display:block;position:relative;box-shadow:0 18px 45px #00265729}.resume-preview img{width:100%;height:auto;display:block}.resume-preview span{color:#fff;letter-spacing:.03em;background:#002657f0;padding:10px 14px;font-size:.72rem;font-weight:700;position:absolute;bottom:18px;right:18px}.contact-grid{grid-template-columns:.78fr 1.22fr;gap:80px;display:grid}.contact-copy>p:not(.eyebrow){color:var(--slate)}.contact-list{border-top:1px solid var(--border);margin:36px 0}.contact-list a,.contact-list>div{border-bottom:1px solid var(--border);padding:18px 0;display:block}.contact-list span,.contact-list strong{display:block}.contact-list span{color:var(--muted);text-transform:uppercase;letter-spacing:.09em;font-size:.72rem}.contact-socials{color:var(--blue);gap:20px;font-weight:700;display:flex}.contact-form{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-soft);border-radius:24px;padding:34px}.contact-form label{color:var(--navy);margin-bottom:20px;font-size:.88rem;font-weight:700;display:block}.contact-form label>span{color:var(--muted);font-weight:400}.contact-form input,.contact-form textarea,.contact-form select{width:100%;color:var(--navy);background:#fff;border:1px solid #c8d8e5;border-radius:10px;margin-top:8px;padding:13px 14px}.contact-form textarea{resize:vertical}.field-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-submit{border:0;width:100%}.form-submit:disabled{opacity:.65;cursor:wait}.form-status{color:var(--muted);text-align:center;margin:14px 0 0;font-size:.78rem}.form-status a{color:var(--blue);text-decoration:underline}.honeypot{position:absolute!important;left:-9999px!important}.site-footer{color:#c5d3df;background:var(--navy-deep);padding:76px 0 26px}.footer-grid{grid-template-columns:1.5fr .7fr .7fr;gap:80px;display:grid}.footer-grid>div:first-child p{color:#8fa5b6;max-width:450px;margin-top:20px}.footer-brand{color:#fff}.footer-grid h2{color:#fff;letter-spacing:.04em;margin-bottom:16px;font-size:.9rem}.footer-grid>div:not(:first-child) a{color:#9fb2c2;padding:4px 0;display:block}.footer-grid a:hover{color:#fff}.footer-bottom{color:#8098aa;border-top:1px solid #ffffff1f;justify-content:space-between;margin-top:58px;padding-top:22px;font-size:.82rem;display:flex}.simple-hero{padding-block:56px}.simple-hero .hero-grid{grid-template-columns:1.25fr .75fr;align-items:center;gap:64px}.simple-hero .hero-portrait{height:470px;min-height:0}.simple-hero .hero-photo{aspect-ratio:auto;object-position:center 24%;height:100%;min-height:0}.simple-hero .hero-copy h1{max-width:820px;font-size:clamp(2.6rem,5.5vw,4.6rem)}.hero-role{color:var(--slate);margin:16px 0 0;font-size:1.2rem}.simple-hero .hero-details{gap:8px;margin-top:20px;display:grid}.project-screenshot{border-bottom:1px solid var(--border);background:var(--blue-light);display:block;overflow:hidden}.project-screenshot img{aspect-ratio:1440/1000;object-fit:cover;width:100%;height:auto}.project-hero{text-align:left;padding-bottom:38px!important}.project-hero .eyebrow{margin-top:26px}.project-hero .page-intro{margin-inline:0}.project-evidence{padding-top:42px}.project-figure{max-width:1000px;margin:0 auto 64px}.project-figure img{border:1px solid var(--border);border-radius:var(--radius);width:100%;height:auto}.project-figure figcaption{color:var(--slate);margin-top:12px;font-size:.85rem}.evidence-sections{max-width:850px;margin-inline:auto}.evidence-sections section{border-top:1px solid var(--border);grid-template-columns:220px 1fr;gap:32px;padding:30px 0;display:grid}.evidence-sections h2{font-size:1.35rem}.evidence-sections p{color:var(--slate);margin:0}.project-end-nav{border-top:1px solid var(--border);max-width:850px;color:var(--blue);justify-content:space-between;gap:24px;margin:54px auto 0;padding-top:24px;font-size:.86rem;font-weight:700;display:flex}.simple-hero .hero-intro{max-width:720px}.hero-details{border-top:1px solid var(--border);max-width:760px;color:var(--slate);flex-wrap:wrap;gap:8px 24px;margin:24px 0 0;padding-top:18px;font-size:.93rem;display:flex}.hero-details span{gap:5px;display:inline-flex}.hero-details strong{color:var(--navy)}.hero-details a{color:var(--blue);text-underline-offset:3px;font-weight:700;text-decoration:underline 1px}.simple-section-heading{max-width:760px;margin-bottom:52px}.simple-section-heading>.heading-note{margin-top:18px}.heading-with-link{justify-content:space-between;align-items:end;gap:40px;max-width:none;display:flex}.simple-timeline{border-top:1px solid var(--border)}.simple-timeline article{border-bottom:1px solid var(--border);grid-template-columns:210px 1fr;gap:55px;padding:44px 0;display:grid}.timeline-date{color:var(--muted);font-size:.88rem}.simple-timeline h3{margin-bottom:13px;font-size:1.55rem}.timeline-title>span,.timeline-title>small{display:block}.timeline-title>small{color:var(--blue);letter-spacing:.01em;margin-top:7px;font-family:DM Sans,sans-serif;font-size:.68em;font-weight:700}.simple-timeline p:not(.card-kicker),.plain-results{max-width:800px;color:var(--slate)}.plain-results{padding-left:20px}.plain-results li{margin:7px 0}.subtle-detail{font-size:.9rem}.section-action{margin-top:32px}.projects-home{background:var(--surface)}.current-work-note{border:1px solid var(--border);background:#fff;justify-content:space-between;align-items:center;gap:28px;margin-top:28px;padding:24px 28px;display:flex}.current-work-note p{color:var(--slate);margin:0}.direction-grid{grid-template-columns:1fr 1fr;gap:100px;display:grid}.direction-grid p{color:var(--slate);font-size:1.04rem}.about-mountain-hero{color:#fff;background:#8fa6b2;align-items:end;min-height:610px;display:flex;position:relative;overflow:hidden}.about-mountain-hero:after{content:"";background:linear-gradient(#0e23302e,#0e2330ad);position:absolute;inset:0}.about-mountain-photo{object-fit:cover;object-position:center 49%;width:100%;height:100%;position:absolute;inset:0}.about-hero-content{z-index:2;padding-bottom:70px;position:relative}.about-hero-content .eyebrow{color:#d9e9f1}.about-hero-content h1{max-width:780px}.about-hero-content>p:not(.eyebrow){margin-top:15px;font-size:1.25rem}.simple-story h2{margin-bottom:24px}.story-photo-real{border-radius:var(--radius);background:#dce4e8;min-height:540px;margin:0;overflow:hidden}.story-photo-real img{width:100%;height:100%;min-height:inherit;object-fit:cover;object-position:center 58%;display:block}.personal-gallery-section{background:var(--surface)}.personal-gallery{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.personal-gallery .gallery-wide{grid-row:span 2}.gallery-photo{border-radius:var(--radius);background:#dce4e8;min-height:270px;margin:0;overflow:hidden}.gallery-photo img{width:100%;height:100%;min-height:inherit;object-fit:cover;display:block}.gallery-photo.gallery-feature{grid-row:span 2;min-height:558px}.photo-dirt-bike img{object-position:56% 58%}.photo-jeep img{object-position:center 74%}.photo-wedding{min-height:640px!important}.photo-wedding img{object-position:center 36%}.photo-philippines img{object-position:23% center;transform:scale(1.42)}.mission-about .mission-grid{grid-template-columns:1.1fr .9fr}.mission-photo{border-radius:var(--radius);background:#dce4e8;min-height:390px;margin:0;overflow:hidden}.mission-photo img{width:100%;height:100%;min-height:inherit;object-fit:cover;object-position:38% center;display:block}.plain-page-hero{text-align:left}.plain-page-hero .narrow{margin-left:max(20px, calc((100% - min(calc(100% - 40px), var(--container))) / 2))}.plain-page-hero .page-intro{margin-left:0}.now-page-hero{color:#fff;background:var(--navy-deep);align-items:end;min-height:500px;display:flex;position:relative;overflow:hidden}.now-page-hero:after{content:"";background:linear-gradient(90deg,#0a1e2de0 0%,#0a1e2da6 52%,#0a1e2d38 100%);position:absolute;inset:0}.now-hero-photo{object-fit:cover;object-position:center 48%;width:100%;height:100%;position:absolute;inset:0}.now-page-hero .narrow{z-index:1;position:relative}.now-page-hero .eyebrow{color:#d9e9f1}.now-page-hero h1{color:#fff;text-shadow:0 2px 20px #0003}.now-page-hero .page-intro{color:#ffffffe6}.now-list{border-top:1px solid var(--border)}.now-list>article{border-bottom:1px solid var(--border);grid-template-columns:90px 1fr;gap:40px;padding:58px 0;display:grid}.now-number{color:var(--blue);font-family:Manrope,sans-serif;font-weight:800}.now-list h2{margin-bottom:18px;font-size:clamp(1.8rem,3.2vw,2.75rem)}.now-list p:not(.card-kicker){max-width:820px;color:var(--slate);font-size:1.04rem}.now-projects{grid-template-columns:repeat(2,1fr);gap:18px;margin-top:28px;display:grid}.now-projects>div{border:1px solid var(--border);background:var(--surface);padding:24px}.now-projects>div>span{color:var(--blue);letter-spacing:.1em;text-transform:uppercase;font-size:.72rem;font-weight:700}.now-projects h3{margin:9px 0}.now-projects p{font-size:.92rem!important}@keyframes reveal{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}.reveal{animation:.7s both reveal}.delay-one{animation-delay:.12s}@media (width<=980px){.primary-nav{gap:17px}.hero-grid,.story-grid,.mission-grid,.personal-grid,.contact-grid{gap:50px}.hero-grid{grid-template-columns:1fr .72fr}.hero-portrait,.hero-photo{min-height:430px}.simple-hero .hero-portrait{height:430px;min-height:0}.simple-hero .hero-photo{min-height:0}.portrait-school{left:-20px}.impact-grid{grid-template-columns:repeat(2,1fr)}.impact-grid article:nth-child(2){border-right:0}.impact-grid article:nth-child(-n+2){border-bottom:1px solid #ffffff26}.value-grid,.capability-grid{grid-template-columns:repeat(2,1fr)}.skills-layout{gap:50px}.skill-stack article{grid-template-columns:45px 150px 1fr}.honors-grid{grid-template-columns:1fr 1fr}.honors-grid>div{grid-column:1/-1}}@media (width<=760px){.section{padding:78px 0}.container{width:min(calc(100% - 32px), var(--container))}.menu-button{display:block}.primary-nav{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:14px;padding:16px;display:none;position:absolute;top:68px;left:16px;right:16px}.primary-nav.is-open{display:grid}.primary-nav a{padding:10px}.primary-nav a[aria-current=page]:after{display:none}.hero{padding:70px 0 88px}.hero-grid,.split-heading,.skills-layout,.personal-grid,.story-grid,.mission-grid,.resume-layout,.contact-grid,.simple-hero .hero-grid{grid-template-columns:1fr}.simple-hero{padding-block:56px;padding-top:30px}.simple-hero .hero-grid{gap:32px}.hero-details span{flex-wrap:wrap}.evidence-sections section{grid-template-columns:1fr;gap:12px}.simple-hero .hero-portrait{height:480px;min-height:0}.simple-hero .hero-photo{min-height:0}.hero-grid{gap:52px}.hero-portrait{min-height:400px;margin:0 14px}.hero-photo{min-height:400px}.portrait-place{right:-14px}.portrait-school{bottom:26px;left:-14px}.split-heading{gap:20px}.focus-grid{grid-template-columns:1fr}.focus-grid article>span{margin-bottom:20px}.impact-grid{grid-template-columns:1fr}.impact-grid article{border-bottom:1px solid #ffffff26;border-right:0;min-height:auto}.impact-grid article:nth-child(3){border-bottom:1px solid #ffffff26}.impact-grid strong{margin-bottom:14px}.section-heading-row{flex-direction:column;align-items:start}.project-grid{grid-template-columns:1fr}.project-card,.project-card.large{grid-column:auto}.sticky-heading,.resume-sidebar{position:static}.skill-stack article{grid-template-columns:40px 1fr}.skill-stack article .tag-list{grid-column:2}.callout{flex-direction:column;align-items:start;padding:40px 26px}.callout-actions{flex-wrap:wrap;width:100%}.page-hero,.page-hero.compact{padding:72px 0 68px}.value-grid,.capability-grid,.hobby-grid{grid-template-columns:1fr}.timeline-heading{flex-direction:column;gap:4px}.education-card,.honors-grid{grid-template-columns:1fr}.honors-grid>div{grid-column:auto}.project-legend{flex-wrap:wrap;justify-content:flex-start}.resume-intro{padding:52px 0 42px}.resume-intro-grid{grid-template-columns:1fr;gap:34px}.field-row{grid-template-columns:1fr;gap:0}.footer-grid{grid-template-columns:1fr 1fr;gap:42px}.footer-grid>div:first-child{grid-column:1/-1}.simple-timeline article{grid-template-columns:1fr;gap:12px}.heading-with-link,.current-work-note{flex-direction:column;align-items:flex-start}.direction-grid{grid-template-columns:1fr;gap:32px}.about-mountain-hero{min-height:520px}.personal-gallery{grid-template-columns:1fr 1fr}.personal-gallery .gallery-wide{grid-row:auto}.personal-gallery .gallery-wide:first-child{grid-column:1/-1}.gallery-photo.gallery-feature{grid-row:auto;min-height:520px}.personal-gallery .gallery-photo:first-child{grid-column:1/-1}.mission-about .mission-grid{grid-template-columns:1fr}.plain-page-hero .narrow{margin-inline:auto}.now-page-hero{min-height:470px}.now-page-hero:after{background:linear-gradient(#0a1e2d6b,#0a1e2ddb)}.now-hero-photo{object-position:57% center}.now-list>article{grid-template-columns:45px 1fr;gap:18px}.now-projects{grid-template-columns:1fr}}@media (width<=620px){.resume-intro h1{font-size:clamp(2.8rem,13vw,4rem)}.resume-document-section{padding:20px 0 70px}.resume-toolbar{border-radius:10px 10px 0 0}.resume-preview{padding:10px}.resume-preview span{padding:8px 10px;font-size:.62rem;bottom:8px;right:8px}.project-hero{padding-bottom:28px!important}.project-evidence{padding-top:28px}}@media (width<=480px){h1{font-size:2.6rem}.availability{border-radius:14px;font-size:.76rem}.button-row .button{width:100%}.profile-links{gap:15px}.hero-portrait{margin:0}.portrait-card{min-width:155px;padding:13px}.portrait-place{top:28px}.project-body{padding:24px}.project-meta{flex-direction:column;align-items:start}.callout-actions .button{width:100%}.project-end-nav{flex-direction:column;align-items:flex-start}.contact-form{padding:24px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{flex-direction:column;gap:5px}.personal-gallery .gallery-photo:first-child{grid-column:auto}.personal-gallery{grid-template-columns:1fr}.personal-gallery .gallery-wide:first-child{grid-column:auto}.now-list>article{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.portfolio-v2{--surface:#fff;--navy:#10294e;--navy-deep:#002657;--blue:#003da5;--slate:#485b73;--border:#dbe3ef;--blue-pale:#eff4ff;--mint:#e4edff;background:var(--surface)}.portfolio-v2 .container{width:calc(100% - 96px);max-width:1240px}.portfolio-v2 .site-header{background:var(--surface);backdrop-filter:none;border-color:var(--border)}.portfolio-v2 .nav-wrap{min-height:88px}.portfolio-v2 .brand-mark{box-shadow:none;color:#fff;background:var(--blue);border-radius:50%}.portfolio-v2 .primary-nav a:last-child{border-radius:4px;padding:10px 20px}.portfolio-v2 .button{box-shadow:none;border-radius:4px}.portfolio-v2 .button-primary:hover{box-shadow:none;background:#002b78}.portfolio-v2 h1,.portfolio-v2 h2{letter-spacing:-.06em}.portfolio-v2 section[id]{scroll-margin-top:100px}.intro-v2{padding:34px 0 0}.intro-overline,.work-section-label{letter-spacing:.12em;justify-content:space-between;gap:20px;font-family:DM Sans,sans-serif;font-size:.68rem;font-weight:700;display:flex}.intro-overline{color:var(--slate)}.intro-layout{grid-template-columns:1.5fr 1fr;align-items:center;gap:72px;padding:24px 0 32px;display:grid}.intro-main h1{letter-spacing:-.07em;color:var(--blue);font-size:clamp(2.75rem,5.9vw,5.9rem);line-height:1.05}.intro-position{letter-spacing:-.025em;color:var(--slate);margin:16px 0 24px;font-family:Manrope,sans-serif;font-size:clamp(1.1rem,1.7vw,1.5rem);line-height:1.4}.intro-program{color:var(--navy);letter-spacing:-.02em;margin:0 0 12px;font-size:1.15rem;font-weight:700}.intro-focus{border-left:3px solid var(--blue);background:var(--blue-pale);color:var(--blue);letter-spacing:0;margin:0;padding:9px 13px;font-family:DM Sans,sans-serif;font-size:.92rem;font-weight:500;display:inline-block}.intro-focus span{color:#728ab3;padding-inline:7px}.intro-portrait{justify-self:end;width:100%;max-width:350px;margin:0}.intro-portrait img{object-fit:cover;object-position:center 23%;border-radius:6px;width:100%;height:400px}.intro-profile-links{color:var(--blue);flex-wrap:wrap;gap:12px;margin-top:22px;display:flex}.intro-profile-links a{background:#fff;border:1px solid #c9d8f2;border-radius:8px;place-items:center;width:48px;height:48px;transition:background .2s,color .2s;display:grid}.intro-profile-links a:hover{color:#fff;background:var(--blue);border-color:var(--blue)}.intro-contact-button{justify-content:center;min-width:150px;display:inline-flex}.section-kicker{color:var(--blue);letter-spacing:.13em;margin:0 0 10px;font-size:.68rem;font-weight:700}.projects-intro{background:var(--blue-pale);border-block:1px solid var(--border);margin-top:32px;padding:58px 0}.projects-intro .container{grid-template-columns:180px minmax(0,760px);align-items:start;gap:48px;display:grid}.projects-intro h2{color:var(--blue);margin-bottom:14px;font-size:clamp(2.2rem,4vw,3.8rem)}.projects-intro p:last-child{max-width:680px;color:var(--slate);margin:0;font-size:1.02rem}.flagship-skills{margin-top:22px}.flagship-skills h3{letter-spacing:.02em;margin-bottom:10px;font-family:DM Sans,sans-serif;font-size:.8rem}.flagship-skills .tag-list span{color:var(--blue);background:#eff4ff;padding:5px 9px;font-size:.75rem}.flagship-visit{gap:16px;min-height:52px;padding:12px 22px}.flagship-actions{flex-wrap:wrap;gap:12px;margin-top:22px;display:flex}.flagship-facts{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:repeat(3,minmax(0,1fr));margin:28px 0 0;display:grid}.flagship-facts>div{padding:16px 14px 16px 0}.flagship-facts>div+div{border-left:1px solid var(--border);padding-left:14px}.flagship-facts dt{color:var(--blue);letter-spacing:.09em;text-transform:uppercase;margin-bottom:5px;font-size:.62rem;font-weight:700}.flagship-facts dd{color:var(--navy);margin:0;font-size:.8rem;font-weight:600;line-height:1.35}.flagship-image-link{position:relative}.about-simple{border-top:1px solid var(--border);padding:70px 0 80px}.about-simple-grid{grid-template-columns:1.4fr 1fr;align-items:center;gap:72px;display:grid}.about-simple h2{color:var(--blue);margin-bottom:28px;font-size:clamp(2.5rem,4.7vw,4rem)}.about-simple-copy>p{max-width:650px;color:var(--slate);font-size:1rem}.about-simple-copy{max-width:850px}.about-simple-copy>p{max-width:none}.about-collage{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:230px;gap:16px;margin-top:40px;display:grid}.about-collage-item{background:var(--blue-pale);border-radius:6px;min-width:0;margin:0;position:relative;overflow:hidden}.about-collage-item img{object-fit:cover;width:100%;height:100%}.collage-dirt-bike{grid-row:span 2}.collage-dirt-bike img{object-position:56% 58%}.collage-snowboard img{object-position:center 65%}.collage-jeep img{object-position:center 75%}.collage-family img{object-position:center 28%}.collage-mission img{object-position:30% center}.about-simple-photo{object-fit:cover;object-position:center 65%;border-radius:6px;justify-self:end;width:100%;max-width:360px;height:440px}.about-simple-links{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.intro-email{border-bottom:1px solid var(--navy);justify-content:space-between;align-items:center;gap:15px;padding-bottom:6px;font-size:.9rem;font-weight:600;display:flex}.intro-bottom{border-top:1px solid var(--border);letter-spacing:.08em;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px 24px;padding:20px 0;font-size:.65rem;display:flex}.intro-bottom p{margin:0}.intro-bottom strong{letter-spacing:0;margin-top:4px;font-size:.86rem;font-weight:500;display:block}.intro-bottom a{letter-spacing:0;font-size:.85rem;font-weight:700}.flagship-section{padding:44px 0 80px}.work-section-label{border-top:1px solid var(--navy);padding:20px 0 24px}.flagship-image-link{background:var(--blue);border:1px solid var(--blue);border-radius:8px;display:block;overflow:hidden}.flagship-browser{color:#fff;letter-spacing:.04em;justify-content:space-between;align-items:center;gap:20px;padding:13px 20px;font-size:.7rem;display:flex}.browser-dots{color:#b4cbfa;letter-spacing:3px;font-size:.6rem}.flagship-visual{overflow:hidden}.flagship-visual>img{object-fit:cover;object-position:top center;width:100%;height:min(48vw,560px);transition:transform .6s;display:block}.flagship-image-link:hover .flagship-visual>img{transform:scale(1.015)}.flagship-description{grid-template-columns:1fr 1.2fr;gap:80px;padding:32px 0 0;display:grid}.flagship-description h2{font-size:clamp(2.4rem,4vw,4rem)}.flagship-status{color:var(--slate);align-items:center;gap:8px;margin-bottom:12px;font-size:.7rem;font-weight:600;display:flex}.flagship-status span{background:var(--blue);border-radius:50%;width:6px;height:6px}.flagship-detail-link{text-underline-offset:4px;color:var(--slate);margin-top:14px;font-size:.8rem;text-decoration:underline;display:inline-block}.flagship-description>div>p:not([class]){letter-spacing:-.02em;font-size:1.25rem}.flagship-summary{color:var(--slate);font-size:.95rem}.arrow-link{border-bottom:1px solid var(--navy);justify-content:space-between;align-items:center;gap:30px;padding:8px 0;font-size:.9rem;font-weight:600;display:inline-flex}.other-work-section{padding-bottom:90px}.earlier-projects{border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-top:44px}.earlier-projects>summary{color:var(--navy);cursor:pointer;justify-content:space-between;align-items:center;padding:18px 0;font-weight:700;list-style:none;display:flex}.earlier-projects>summary::-webkit-details-marker{display:none}.earlier-projects>summary span{color:var(--blue);font-size:1.4rem;line-height:1;transition:transform .2s}.earlier-projects[open]>summary span{transform:rotate(45deg)}.earlier-projects .project-grid{padding:18px 0 36px}.current-projects-note{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:145px 1fr;gap:6px 24px;margin-top:48px;padding:24px 0;display:grid}.current-projects-note>span{color:var(--blue);letter-spacing:.1em;grid-row:span 2;font-size:.68rem;font-weight:700}.current-projects-note h3{margin:0;font-size:1.3rem}.current-projects-note p{color:var(--slate);margin:0;font-size:.9rem}.portfolio-v2 .project-grid{gap:48px 28px}.portfolio-v2 .project-card{box-shadow:none;background:0 0;border:none;border-radius:0;flex-direction:column;display:flex}.portfolio-v2 .project-card:hover{box-shadow:none;border-color:#0000;transform:none}.portfolio-v2 .project-screenshot{border:1px solid var(--border);background:#f1f5fc;border-radius:6px;padding:18px}.portfolio-v2 .project-screenshot img{border-radius:2px;transition:transform .4s}.portfolio-v2 .project-screenshot:hover img{transform:scale(1.02)}.portfolio-v2 .project-body{flex-direction:column;flex:1;padding:24px 0 0;display:flex}.portfolio-v2 .project-meta{letter-spacing:.08em;margin-bottom:12px;font-size:.65rem}.portfolio-v2 .status{border:1px solid var(--border);color:var(--slate);background:0 0;border-radius:3px;padding:3px 7px}.portfolio-v2 .project-body h3{letter-spacing:-.045em;font-size:1.6rem}.portfolio-v2 .project-body>p{font-size:.92rem}.portfolio-v2 .project-note{border:0;margin:18px 0;padding:0}.portfolio-v2 .tag-list span{border:1px solid var(--border);color:var(--slate);background:0 0;border-radius:3px;padding:3px 7px;font-size:.65rem}.portfolio-v2 .project-links{font-size:.8rem}.portfolio-v2 .project-action-links{gap:10px;margin-top:auto;padding-top:20px}.portfolio-v2 .project-action-links a{border:1px solid var(--blue);min-height:42px;color:var(--blue);background:#fff;border-radius:4px;align-items:center;padding:8px 14px;text-decoration:none;display:inline-flex}.portfolio-v2 .project-action-links a:hover{color:#fff;background:var(--blue)}.experience-v2{background:#f4f7fd;padding:60px 0 80px}.experience-v2-heading{justify-content:space-between;align-items:end;gap:60px;padding:20px 0 48px;display:flex}.experience-v2-heading h2{font-size:clamp(2rem,3.7vw,3.5rem)}.experience-v2-heading>p{max-width:290px;color:var(--slate);font-size:.95rem}.experience-v2-list article{border-top:1px solid var(--border);grid-template-columns:230px 1fr;gap:40px;padding:34px 0;display:grid;position:relative}.experience-date{color:var(--slate);letter-spacing:.06em;padding-top:5px;font-size:.66rem}.experience-v2-list h3{max-width:680px;font-size:1.5rem}.experience-v2-list h3 span{margin-left:12px}.experience-company{color:var(--blue);margin-top:9px;font-size:.85rem;font-weight:600}.experience-v2-list article>div>p:not(.experience-company){max-width:680px;color:var(--slate);font-size:.9rem}.role-badge{letter-spacing:.08em;background:var(--mint);color:var(--blue);border:1px solid #bdceec;border-radius:3px;padding:4px 8px;font-size:.6rem;position:absolute;top:36px;right:0}.experience-results{color:var(--slate);gap:36px;margin:26px 0;font-size:.75rem;display:flex}.experience-results strong{color:var(--navy);letter-spacing:-.05em;margin-bottom:4px;font-size:1.7rem;line-height:1.1;display:block}.experience-v2 details{color:var(--slate);max-width:680px;font-size:.85rem}.experience-v2 summary{cursor:pointer;color:var(--navy);font-weight:600}.experience-v2 li{margin-bottom:9px}.toolkit-v2{padding:70px 0}.toolkit-layout{grid-template-columns:.7fr 1.3fr;gap:80px;padding-top:22px;display:grid}.toolkit-layout h2{font-size:clamp(2.4rem,4vw,3.6rem)}.skills-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.toolkit-layout article{border:1px solid var(--border);background:#f8faff;border-radius:6px;min-height:150px;padding:22px}.toolkit-layout article:last-child{grid-column:1/-1;min-height:0}.toolkit-layout h3{color:var(--navy);margin-bottom:16px;font-size:1rem}.skill-chip-list{flex-wrap:wrap;gap:7px;display:flex}.skill-chip-list span{color:var(--slate);background:#fff;border:1px solid #cad8ef;border-radius:3px;padding:5px 8px;font-size:.68rem;line-height:1.3}.credential-v2{border-top:1px solid var(--navy);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:32px;margin-top:16px;padding:24px 0;display:flex}.credential-v2 div{grid-template-columns:130px minmax(0,1fr);align-items:baseline;gap:2px 20px;display:grid}.credential-v2 span{color:var(--blue);letter-spacing:.1em;text-transform:uppercase;grid-row:span 2;font-size:.68rem;font-weight:700}.credential-v2 strong{font-family:Manrope,sans-serif;font-size:1rem}.credential-v2 small{color:var(--slate)}.credential-v2 a{color:var(--blue);flex:none;font-size:.82rem;font-weight:700}.personal-v2{padding:20px 0 90px}.personal-v2-grid{grid-template-columns:1fr 1fr;align-items:center;gap:85px;display:grid}.personal-v2 img{object-fit:cover;object-position:center 70%;border-radius:6px;width:100%;height:430px}.personal-v2 h2{margin-bottom:24px;font-size:clamp(2.4rem,4vw,3.6rem)}.personal-v2 p:not(.eyebrow){color:var(--slate);max-width:410px}.contact-v2{background:var(--blue);color:#fff;padding:60px 0}.contact-v2 h2{font-size:clamp(2.6rem,6vw,5.5rem)}.contact-v2 .eyebrow{color:var(--navy)}.contact-v2 .container>div{gap:40px;margin-top:38px;font-size:1rem;font-weight:600;display:flex}.about-simple{background:#f8faff}.contact-home-section{background:var(--blue);color:#fff;padding:80px 0}.contact-home-grid{grid-template-columns:.8fr 1.2fr;align-items:start;gap:72px;display:grid}.contact-home-copy h2{color:#fff;font-size:clamp(2.6rem,5vw,4.5rem)}.contact-home-copy p{color:#dce8ff;max-width:390px;margin-top:18px}.contact-home-section .contact-form{box-shadow:none;border-radius:6px}.portfolio-v2 .site-footer{background:var(--navy-deep);padding-top:54px}@media (width<=980px){.portfolio-v2 .container{width:calc(100% - 48px)}.intro-layout{gap:32px}.intro-bottom{gap:16px}.flagship-description,.toolkit-layout,.personal-v2-grid{gap:40px}.experience-v2-list article{grid-template-columns:180px 1fr;gap:25px}}@media (width<=760px){.projects-intro{margin-top:12px;padding:38px 0}.projects-intro .container{grid-template-columns:1fr;gap:8px}.projects-intro h2{font-size:2.45rem}.flagship-visit,.flagship-actions .button{width:100%}.about-simple{padding:36px 0 48px}.about-simple-grid{grid-template-columns:1fr;gap:32px}.about-simple h2{margin-bottom:20px}.about-simple-photo{justify-self:center;height:340px}.about-collage{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:200px;gap:12px;margin-top:30px}.portfolio-v2 .container{width:calc(100% - 36px)}.portfolio-v2 .nav-wrap{min-height:72px}.intro-v2{padding-top:22px}.intro-overline>span:last-child{display:none}.intro-layout{grid-template-columns:1fr;gap:26px;padding:28px 0 20px}.intro-main h1{font-size:clamp(2.4rem,10vw,4rem)}.intro-position{margin-top:14px;font-size:1.15rem}.intro-position br{display:none}.intro-portrait{justify-self:center;max-width:350px}.intro-portrait img{height:370px}.intro-bottom{flex-wrap:wrap;gap:16px;padding-block:18px}.intro-bottom p:first-child{width:100%}.intro-bottom strong{font-size:.8rem}.intro-bottom a{margin-left:auto}.flagship-section{padding:24px 0 48px}.work-section-label{letter-spacing:.07em;gap:12px;padding:15px 0 18px;font-size:.57rem}.flagship-browser{padding:10px 12px;font-size:.6rem}.flagship-browser>span:last-child{display:none}.flagship-visual>img{height:min(75vw,380px)}.flagship-description{grid-template-columns:1fr;gap:24px;padding-top:24px}.flagship-description h2{font-size:2.7rem}.flagship-summary{font-size:.9rem}.flagship-facts{grid-template-columns:1fr}.flagship-facts>div{padding:12px 0}.flagship-facts>div+div{border-top:1px solid var(--border);border-left:0;padding-left:0}.other-work-section{padding-bottom:48px}.current-projects-note{grid-template-columns:1fr;gap:8px;margin-top:36px}.current-projects-note>span{grid-row:auto}.portfolio-v2 .project-grid{gap:36px}.portfolio-v2 .project-screenshot{padding:10px}.experience-v2{padding:35px 0}.experience-v2-heading{padding:12px 0 24px;display:block}.experience-v2-heading>p{max-width:none;margin-top:20px}.experience-v2-list article{grid-template-columns:1fr;gap:12px;padding-block:28px}.experience-v2-list h3{font-size:1.35rem}.role-badge{top:28px}.experience-results{gap:20px}.experience-results>span{flex:1}.toolkit-v2{padding:45px 0}.toolkit-layout{grid-template-columns:1fr;gap:30px;padding-top:10px}.skills-cards{grid-template-columns:1fr}.toolkit-layout article:last-child{grid-column:auto}.credential-v2{flex-direction:column;align-items:flex-start;gap:16px}.credential-v2 div{grid-template-columns:1fr}.credential-v2 span{grid-row:auto;margin-bottom:8px}.personal-v2{padding:0 0 45px}.personal-v2-grid{grid-template-columns:1fr;gap:30px}.personal-v2 img{height:340px}.contact-v2{padding:45px 0}.contact-v2 .container>div{flex-direction:column;gap:14px;margin-top:25px;font-size:.9rem}.contact-home-section{padding:48px 0}.contact-home-grid{grid-template-columns:1fr;gap:24px}}@media (prefers-reduced-motion:reduce){.flagship-visual>img,.portfolio-v2 .project-screenshot img{transition:none}}.portfolio-v2::selection{color:var(--navy-deep);background:#b8cdf8}.portfolio-v2 .brand-monogram{letter-spacing:-.04em;border-radius:3px;width:42px;font-size:.68rem}.portfolio-v2 .site-header{transition:box-shadow .25s,background .25s}.portfolio-v2 .site-header.is-scrolled{background:#fffffff5;box-shadow:0 12px 34px #00265712}.scroll-progress{transform-origin:0;background:var(--blue);height:2px;position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(0)}.portfolio-v2 .button{transition:color .25s,background .25s,border-color .25s,transform .25s;position:relative;overflow:hidden}.portfolio-v2 .button:hover{transform:translateY(-2px)}.portfolio-v2 .button svg,.portfolio-v2 .button>span{transition:transform .25s}.portfolio-v2 .button:hover svg,.portfolio-v2 .button:hover>span{transform:translate(3px)}.section-kicker span{color:#7186aa;min-width:36px;margin-right:10px;display:inline-block}.editorial-hero{padding:72px 0 86px;position:relative;overflow:hidden}.editorial-hero .container{position:relative}.hero-grid-lines{pointer-events:none;opacity:.45;background-image:linear-gradient(90deg, transparent calc(25% - .5px), var(--border) 25%, transparent calc(25% + .5px)), linear-gradient(90deg, transparent calc(75% - .5px), var(--border) 75%, transparent calc(75% + .5px));position:absolute;inset:-72px 0 -86px}.editorial-hero-grid{grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);align-items:center;gap:86px;display:grid;position:relative}.hero-name{color:var(--blue);letter-spacing:.14em;margin:0 0 26px;font-size:.7rem;font-weight:700}.hero-name span{color:#8192ae;padding-inline:7px}.editorial-hero h1{max-width:810px;color:var(--navy-deep);letter-spacing:-.075em;font-size:clamp(3.35rem,6.1vw,6.25rem);line-height:.98}.hero-deck{max-width:690px;color:var(--slate);margin:28px 0 0;font-size:clamp(1.02rem,1.45vw,1.25rem);line-height:1.55}.hero-actions{flex-wrap:wrap;align-items:center;gap:24px;margin-top:32px;display:flex}.hero-text-link{border-bottom:1px solid var(--navy);color:var(--navy);padding:9px 0;font-size:.86rem;font-weight:700}.hero-meta{border-top:1px solid var(--border);grid-template-columns:1.6fr .75fr .75fr;gap:18px;margin-top:42px;padding-top:22px;display:grid}.hero-meta p{color:var(--navy);margin:0;font-size:.78rem;font-weight:600}.hero-meta span{color:var(--slate);letter-spacing:.1em;margin-bottom:5px;font-size:.58rem;font-weight:700;display:block}.editorial-hero .intro-profile-links{margin-top:22px}.editorial-portrait{margin:0;padding:18px 18px 0 0;position:relative}.editorial-portrait:before{content:"";border:1px solid var(--blue);position:absolute;inset:0 0 82px 18px}.portrait-index{z-index:2;background:var(--blue);color:#fff;letter-spacing:.1em;padding:7px 10px;font-size:.58rem;position:absolute;top:0;right:0}.portrait-frame{background:#dfe4eb;height:500px;position:relative;overflow:hidden}.portrait-frame img{object-fit:cover;object-position:center 23%;filter:saturate(.88)contrast(1.02);width:100%;height:100%;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.editorial-portrait:hover .portrait-frame img{transform:scale(1.025)}.editorial-portrait figcaption{background:var(--navy-deep);color:#fff;gap:3px;margin:0 22px 0 -18px;padding:14px 18px;display:grid;position:relative}.editorial-portrait figcaption span{color:#aecaef;letter-spacing:.12em;font-size:.55rem;font-weight:700}.editorial-portrait figcaption strong{font-family:Manrope,sans-serif;font-size:.8rem}.project-journey{border-top:1px solid var(--navy);border-bottom:1px solid var(--border);grid-template-columns:repeat(3,1fr);margin:62px 0 0;padding:0;list-style:none;display:grid}.project-journey li{padding:24px 26px 26px 0}.project-journey li+li{border-left:1px solid var(--border);padding-left:26px}.project-journey span{color:var(--blue);letter-spacing:.1em;text-transform:uppercase;font-size:.62rem;font-weight:700}.project-journey p{color:var(--slate);margin:12px 0 0;font-size:.82rem;line-height:1.6}.portfolio-v2 .project-screenshot{isolation:isolate;position:relative;overflow:hidden}.portfolio-v2 .project-screenshot:before{content:"";z-index:-1;opacity:.75;position:absolute;inset:0}.project-cougar-crossing .project-screenshot{background:#e9f2ff}.project-cougar-crossing .project-screenshot:before{background-image:linear-gradient(#003da514 1px,#0000 1px),linear-gradient(90deg,#003da514 1px,#0000 1px);background-size:24px 24px}.project-starrboard .project-screenshot{background:#071d39;border-color:#17365e}.project-starrboard .project-screenshot:before{background:radial-gradient(circle at 80% 20%,#578edb59,#0000 35%)}.project-visual-label{z-index:2;background:var(--blue);color:#fff;letter-spacing:.08em;padding:5px 7px;font-size:.5rem;font-weight:700;position:absolute;top:8px;left:8px}.project-starrboard .project-visual-label{color:var(--navy-deep);background:#fff}.experience-heading{justify-content:space-between;align-items:end;gap:40px;padding:0 0 48px;display:flex}.experience-heading h2{color:var(--navy-deep);font-size:clamp(2.7rem,4.6vw,4.6rem)}.experience-heading>a{border-bottom:1px solid var(--navy);letter-spacing:.08em;flex:none;padding-bottom:6px;font-size:.7rem;font-weight:700}.experience-v2-list{padding-left:34px;position:relative}.experience-v2-list:before{content:"";background:linear-gradient(var(--blue), #b9c7dd);width:1px;position:absolute;top:0;bottom:0;left:4px}.experience-v2-list article:before{content:"";background:var(--blue);width:9px;height:9px;box-shadow:0 0 0 1px var(--blue);border:3px solid #f4f7fd;border-radius:50%;position:absolute;top:42px;left:-35px}.capability-heading{grid-template-columns:.55fr 1.45fr;align-items:end;gap:80px;margin-bottom:42px;display:grid}.capability-heading h2{max-width:760px;color:var(--blue);font-size:clamp(2.6rem,4.5vw,4.5rem)}.capability-matrix{border-top:1px solid var(--navy);border-bottom:1px solid var(--border);grid-template-columns:repeat(3,1fr);display:grid}.capability-matrix article{min-height:300px;padding:24px 22px}.capability-matrix article+article{border-left:1px solid var(--border)}.capability-matrix article>span{color:#8294b1;letter-spacing:.1em;font-size:.62rem;font-weight:700}.capability-matrix h3{color:var(--blue);margin:42px 0 24px;font-size:1.45rem}.capability-matrix ul{gap:12px;margin:0;padding:0;list-style:none;display:grid}.capability-matrix li{color:var(--slate);font-size:.78rem}.capability-matrix li:before{content:"—";color:#91a1ba;margin-right:8px}.tool-rail{border-bottom:1px solid var(--border);grid-template-columns:180px 1fr;align-items:center;gap:30px;padding:22px 0;display:grid}.tool-rail>span{color:var(--blue);letter-spacing:.1em;font-size:.62rem;font-weight:700}.tool-rail>div{flex-wrap:wrap;gap:7px;display:flex}.tool-rail>div span{border:1px solid var(--border);color:var(--slate);border-radius:3px;padding:5px 9px;font-size:.68rem}.contact-kicker{color:#c5d8ff}.contact-kicker span{color:#91b4f7}.portfolio-v2 .footer-bottom{grid-template-columns:1fr auto 1fr}.portfolio-v2 .footer-bottom span:last-child{text-align:right}.motion-ready .reveal-target{opacity:0;transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1);transform:translateY(28px)}.motion-ready .reveal-target.is-visible{opacity:1;transform:none}.motion-ready .project-card:nth-child(2){transition-delay:80ms}@media (width<=980px){.editorial-hero-grid{gap:42px}.editorial-hero h1{font-size:clamp(3.2rem,7vw,5.2rem)}.hero-meta{grid-template-columns:1.4fr .8fr}.hero-meta p:last-child{grid-column:1/-1}.portrait-frame{height:440px}.capability-matrix{grid-template-columns:repeat(2,1fr)}.capability-matrix article:nth-child(3){border-left:0;border-top:1px solid var(--border)}.capability-matrix article:nth-child(4){border-top:1px solid var(--border)}}@media (width<=760px){.portfolio-v2 .brand-monogram{width:38px}.editorial-hero{padding:42px 0 56px}.hero-grid-lines{display:none}.editorial-hero-grid{grid-template-columns:1fr;gap:42px}.hero-name{margin-bottom:18px}.editorial-hero h1{font-size:clamp(3rem,13.3vw,4.25rem)}.hero-deck{margin-top:22px}.hero-actions{flex-direction:column;align-items:stretch;gap:10px}.hero-actions .button{width:100%}.hero-text-link{align-self:flex-start}.hero-meta{grid-template-columns:1fr 1fr;gap:18px;margin-top:30px}.hero-meta p:first-child{grid-column:1/-1}.hero-meta p:last-child{grid-column:auto}.editorial-portrait{justify-self:center;max-width:390px}.portrait-frame{height:470px}.project-journey{grid-template-columns:1fr;margin-top:42px}.project-journey li{padding:18px 0}.project-journey li+li{border-top:1px solid var(--border);border-left:0;padding-left:0}.experience-heading{flex-direction:column;align-items:flex-start;padding-bottom:28px}.experience-heading h2{font-size:2.7rem}.experience-v2-list{padding-left:24px}.experience-v2-list article:before{top:34px;left:-25px}.capability-heading{grid-template-columns:1fr;gap:8px;margin-bottom:28px}.capability-heading h2{font-size:2.7rem}.capability-matrix{grid-template-columns:1fr}.capability-matrix article{min-height:0;padding:22px 0}.capability-matrix article+article{border-top:1px solid var(--border);border-left:0}.capability-matrix h3{margin:18px 0 14px}.tool-rail{grid-template-columns:1fr;gap:12px}.portfolio-v2 .footer-bottom{flex-direction:column;align-items:flex-start;display:flex}.portfolio-v2 .footer-bottom span:last-child{text-align:left}}@media (prefers-reduced-motion:reduce){.motion-ready .reveal-target{opacity:1;transition:none;transform:none}.editorial-portrait:hover .portrait-frame img,.portfolio-v2 .button:hover{transform:none}.scroll-progress{display:none}}
