@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-outline-style:solid}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.hidden{display:none}.inline{display:inline}.resize{resize:both}.outline{outline-style:var(--tw-outline-style);outline-width:1px}}@font-face{font-display:swap;font-family:IBM Plex Sans;font-stretch:100%;font-style:normal;font-weight:400 700;src:url(/fonts/ibm-plex-sans-latin.woff2)format("woff2")}@font-face{font-display:swap;font-family:Newsreader;font-style:normal;font-weight:400 500;src:url(/fonts/newsreader-latin.woff2)format("woff2")}:root{--paper:#f4f1e9;--paper-soft:#fbfaf6;--ink:#14212d;--ink-soft:#52606a;--blue:#234d6f;--blue-dark:#15354f;--orange:#cb5434;--orange-dark:#a33b22;--line:#cfc9bd;--line-dark:#74818a;--white:#fffef9;--display:"Newsreader", Georgia, serif;--sans:"IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--ui:"IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--body-line-height:1.5;--display-line-height:1.1;--display-tracking:-.01em;--display-weight:400;--type-display:clamp(3.75rem, 6.25vw, 5.75rem);--type-page-title:clamp(3.25rem, 5vw, 4.75rem);--type-project-title:clamp(3.5rem, 6.3vw, 6rem);--type-section:clamp(2.5rem, 3.6vw, 3.75rem);--type-card-title:clamp(1.85rem, 2.6vw, 2.7rem);--type-subsection:clamp(1.45rem, 2.2vw, 2.1rem);--type-intro:clamp(1.08rem, .45vw + 1rem, 1.25rem);--type-body:clamp(1rem, .15vw + .97rem, 1.06rem);--type-small:clamp(.86rem, .12vw + .83rem, .92rem);--type-meta:clamp(.76rem, .1vw + .74rem, .81rem);--type-label:clamp(.7rem, .1vw + .68rem, .75rem);--type-ui:clamp(.84rem, .1vw + .82rem, .89rem);--leading-display:1;--leading-title:1.04;--leading-heading:1.08;--leading-intro:1.55;--leading-body:1.65;--leading-small:1.58;--tracking-display:-.018em;--tracking-heading:-.012em;--tracking-label:.105em;--tracking-ui:.012em;--measure-body:66ch;--measure-intro:58ch;--measure-compact:46ch;--space-1:.5rem;--space-2:.75rem;--space-3:1rem;--space-4:1.5rem;--space-5:2rem;--space-6:3rem;--space-7:4.5rem;--space-8:6.5rem;--space-9:9rem;--section-space:clamp(5rem, 9vw, 8rem);--shadow:0 24px 70px #14212d1f;--radius:4px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:var(--body-line-height);text-rendering:optimizelegibility;min-width:320px;margin:0;overflow-x:clip}body,button,a{-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,summary,a{-webkit-tap-highlight-color:transparent}::selection{background:var(--orange);color:var(--white)}:focus-visible{outline:3px solid var(--orange);outline-offset:4px}.skip-link{background:var(--ink);color:var(--white);z-index:100;padding:.8rem 1rem;position:fixed;top:-6rem;left:1rem}.skip-link:focus{top:1rem}.page-shell{width:100%;max-width:1320px;margin-inline:auto;padding-inline:clamp(1.25rem,4vw,4.5rem)}.eyebrow{color:var(--blue);letter-spacing:.15em;text-transform:uppercase;margin:0 0 1rem;font-size:.72rem;font-weight:700;line-height:1.3}.button{letter-spacing:.035em;border:1px solid #0000;justify-content:center;align-items:center;gap:1.1rem;min-height:3.3rem;padding:.9rem 1.25rem;font-size:.84rem;font-weight:700;transition:background-color .18s,border-color .18s,color .18s,transform .18s;display:inline-flex}.button:hover,.button:focus-visible{transform:translateY(-2px)}.button:active{transform:translateY(0)}.button>span[aria-hidden=true]{transition:transform .18s;display:inline-block}.button:hover>span[aria-hidden=true],.button:focus-visible>span[aria-hidden=true]{transform:translate(3px)}.button--primary{background:var(--orange);color:var(--white)}.button--primary:hover{background:var(--orange-dark)}.button--outline{border-color:var(--ink)}.button--outline:hover{background:var(--ink);color:var(--white)}.button--small{min-height:2.75rem;padding:.65rem 1rem}.button--text{min-height:auto;padding-inline:0}.button--text:hover{color:var(--orange-dark)}.button-row{flex-wrap:wrap;align-items:center;gap:1.4rem;display:flex}.text-link{color:var(--blue-dark);border-bottom:1px solid;gap:1rem;padding-bottom:.4rem;font-size:.82rem;font-weight:700;display:inline-flex}.text-link:hover{color:var(--orange-dark)}.text-link--light{color:var(--white)}.site-header{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:50;background:#f4f1e9ed;border-bottom:1px solid #cfc9bdcc;position:sticky;top:0}.site-header__inner{grid-template-columns:auto 1fr;align-items:center;gap:2rem;max-width:1440px;min-height:5.5rem;margin-inline:auto;padding:.8rem clamp(1.25rem,4vw,4.5rem);display:grid}.wordmark{letter-spacing:.035em;justify-self:start;align-items:center;gap:.8rem;font-size:.83rem;font-weight:700;display:inline-flex}.wordmark__mark{color:var(--ink);font-family:var(--ui);letter-spacing:.075em;background:linear-gradient(currentColor,currentColor) 0 0/1rem 1px no-repeat,linear-gradient(currentColor,currentColor) 0 0/1px 1rem no-repeat,linear-gradient(currentColor,currentColor) 100% 100%/1rem 1px no-repeat,linear-gradient(currentColor,currentColor) 100% 100%/1px 1rem no-repeat;border:0;justify-content:center;align-items:center;width:2.65rem;height:2.65rem;padding-left:.075em;font-size:.82rem;font-style:normal;font-weight:600;transition:color .18s;display:inline-flex}.wordmark:hover .wordmark__mark,.wordmark:focus-visible .wordmark__mark{color:var(--blue)}.site-nav{justify-self:end;align-items:center;gap:clamp(1.2rem,3vw,2.5rem);display:flex}.site-nav a{letter-spacing:.045em;padding:.6rem 0;font-size:.78rem;font-weight:700;position:relative}.site-nav a:after{background:var(--orange);content:"";transform-origin:0;width:100%;height:2px;transition:transform .18s;position:absolute;bottom:.2rem;left:0;transform:scaleX(0)}.site-nav a:hover:after,.site-nav a:focus-visible:after,.site-nav a[aria-current=page]:after{transform:scaleX(1)}.site-nav a[aria-current=page]:after{transform-origin:50%}.site-nav-toggle{display:none}.home-hero{color:var(--white);isolation:isolate;background:#08141d;min-height:calc(100vh - 5.5rem);scroll-margin-top:5.5rem;position:relative;overflow:hidden}.hero-media-host{isolation:isolate;position:relative;overflow:hidden}.hero-media{background-color:#0b1218;background-position:var(--hero-media-position-desktop);pointer-events:none;z-index:-1;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0}.hero-media[data-fixed=true]{clip-path:inset(0 0 var(--hero-media-cover,0px) 0);height:var(--hero-media-fixed-height);bottom:auto;left:0;right:0;top:var(--hero-media-fixed-top);position:fixed}.hero-media>img,.hero-media>video{object-fit:cover;object-position:var(--hero-media-position-desktop);width:100%;height:100%;display:block;position:absolute;inset:0}.hero-media__overlay{position:absolute;inset:0}.hero-media__overlay--about{background:linear-gradient(90deg,#08141de6 0%,#08141dc2 48%,#08141d94 100%)}.hero-media__overlay--page{background:linear-gradient(90deg,#09141dc7,#09141d8c 58%,#09141db3)}.home-hero__inner{min-height:inherit;grid-template-columns:minmax(0,1.15fr) minmax(260px,.55fr);align-items:center;gap:clamp(3rem,7vw,7rem);padding-block:clamp(3.5rem,8vw,7.5rem);display:grid}.home-hero__copy{max-width:47rem;padding-bottom:2rem}.home-hero h1,.page-intro h1,.about-hero h1,.contact-page h1,.not-found h1{font-family:var(--display);letter-spacing:-.06em;margin:0;font-size:clamp(3.5rem,7.2vw,7.4rem);font-weight:400;line-height:.91}.home-hero h1{color:var(--white);max-width:9ch;font-size:clamp(4rem,8.5vw,8rem)}.home-hero__headline{color:#fffef9;font-family:var(--display);max-width:30rem;margin:1.7rem 0 0;font-size:clamp(1.4rem,2.4vw,2rem);line-height:1.18}.home-hero__intro{color:#dce4e8;max-width:39rem;margin:1.4rem 0 2.4rem;font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.7}.button--text-light{color:var(--white)}.button--text-light:hover,.button--text-light:focus-visible{color:#f4b39e}.home-hero__portrait{border:1px solid #ffffff6b;justify-self:end;width:100%;max-width:24rem;margin:0;box-shadow:0 28px 70px #00000061}.home-hero__portrait img{object-position:center 25%}.home-hero__project{width:100%;margin-left:auto;display:block;position:relative}.home-hero__project .media-frame{box-shadow:var(--shadow)}.home-hero__project .media-frame img{transition:transform .42s cubic-bezier(.22,1,.36,1)}.home-hero__project:hover .media-frame img,.home-hero__project:focus-visible .media-frame img{transform:scale(1.02)}.home-hero__project-label{background:var(--paper-soft);border-bottom:3px solid var(--orange);justify-content:space-between;align-items:flex-end;padding:1rem 1.1rem;transition:background-color .18s,color .18s;display:flex;position:absolute;bottom:-1.25rem;left:1.25rem;right:1.25rem}.home-hero__project:hover .home-hero__project-label,.home-hero__project:focus-visible .home-hero__project-label{background:var(--ink);color:var(--white)}.home-hero__project-label span:first-child{font-family:var(--display);font-size:1.35rem}.home-hero__project-label span:last-child{color:var(--ink-soft);letter-spacing:.06em;text-transform:uppercase;font-size:.67rem;font-weight:700}.home-hero__project:hover .home-hero__project-label span:last-child,.home-hero__project:focus-visible .home-hero__project-label span:last-child{color:#c8d1d7}.home-facts{border-bottom:1px solid var(--ink);border-top:1px solid var(--ink);grid-template-columns:repeat(2,1fr);margin-bottom:clamp(1rem,3vw,2rem);display:grid}.home-facts div{border-right:1px solid var(--line);padding:1.3rem clamp(.8rem,2.5vw,1.8rem)}.home-facts div:first-child{padding-left:0}.home-facts div:last-child{border:0}.home-facts dt{color:var(--blue);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.6rem;font-size:.64rem;font-weight:700}.home-facts dd{margin:0;font-size:.8rem;line-height:1.5}.section{padding-block:clamp(5rem,10vw,9rem)}.section-heading{justify-content:space-between;align-items:end;gap:3rem;margin-bottom:clamp(2.5rem,5vw,4.5rem);display:flex}.section-heading__copy{max-width:52rem}.section-heading h2,.project-gallery h2,.about-section h2{font-family:var(--display);letter-spacing:-.05em;margin:0;font-size:clamp(2.6rem,5vw,5.2rem);font-weight:400;line-height:.98}.section-heading__description{color:var(--ink-soft);max-width:43rem;margin:1.4rem 0 0;line-height:1.7}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(3rem,7vw,6.5rem) clamp(1.5rem,4vw,3.5rem);display:grid}.project-card__media-link{--project-media-scale:1;--project-media-x:0px;--project-media-y:0px;display:block;position:relative;overflow:hidden}.project-card .media-frame img{transform:translate3d(var(--project-media-x), var(--project-media-y), 0) scale(var(--project-media-scale));will-change:transform;transition:transform .22s cubic-bezier(.22,1,.36,1)}.project-card__media-link:hover .media-frame img,.project-card__media-link:focus-visible .media-frame img{--project-media-scale:1.025}.project-card__body{padding-top:1.5rem;position:relative}.project-card[data-featured=true] .project-card__media-link{box-shadow:0 22px 55px #14212d29}.project-card__meta{color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:1rem;font-size:.66rem;font-weight:700;line-height:1.4;display:flex}.project-card__meta-end{text-align:right;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.65rem;display:flex}.project-card__external{background:var(--blue);color:var(--white);padding:.28rem .42rem}.project-card h3{font-family:var(--display);letter-spacing:-.045em;margin:1rem 0 .8rem;font-size:clamp(2rem,3.5vw,3.3rem);font-weight:400;line-height:1}.project-card h3 a{text-underline-offset:.2em;text-decoration-line:underline;text-decoration-color:#0000;text-decoration-thickness:2px;transition:color .18s,text-decoration-color .18s}.project-card h3 a:hover,.project-card h3 a:focus-visible{color:var(--orange-dark);text-decoration-color:currentColor}.project-card__body>p{color:var(--ink-soft);max-width:39rem;margin:0;line-height:1.65}.media-frame{background:#ded9ce;margin:0;position:relative;overflow:hidden}.media-frame img{width:100%;height:100%}.media-frame--wide{aspect-ratio:16/9}.media-frame--landscape{aspect-ratio:4/3}.media-frame--portrait{aspect-ratio:4/5}.media-frame--square{aspect-ratio:1}.media-frame--contain{background:linear-gradient(135deg, #234d6f0d, #cb54340a), var(--paper-soft)}.media-frame figcaption{color:var(--white);letter-spacing:.08em;text-transform:uppercase;background:#14212de6;padding:.65rem .85rem;font-size:.68rem;font-weight:700;position:absolute;bottom:0;left:0}.experience-preview{background:var(--blue-dark);color:var(--white);padding-block:clamp(5rem,10vw,9rem)}.experience-preview .eyebrow{color:#f2a78f}.experience-preview .section-heading__description{color:#c5d0d8}.experience-preview__grid{border-top:1px solid #ffffff59;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.experience-preview__grid article{border-right:1px solid #ffffff40;padding:1.5rem clamp(1rem,3vw,2.2rem) 2.5rem}.experience-preview__grid article:first-child{padding-left:0}.experience-preview__grid article:last-child{border:0}.experience-preview__index{color:#f2a78f;font-family:var(--display);margin-bottom:3.5rem;font-size:1.35rem;display:block}.experience-preview__grid p{color:#b6c2ca;margin:.55rem 0 0;font-size:.72rem;line-height:1.5}.experience-preview__grid .experience-preview__description{color:#d8e0e5;max-width:32rem;font-size:.82rem}.experience-preview__grid h3{font-family:var(--display);letter-spacing:-.03em;margin:0;font-size:clamp(1.6rem,3vw,2.3rem);font-weight:400}.page-intro{border-bottom:1px solid var(--line);padding-block:clamp(5rem,11vw,10rem) clamp(4rem,8vw,7rem)}.page-intro h1{max-width:13ch}.page-intro>p:last-child{color:var(--ink-soft);max-width:39rem;margin:2.2rem 0 0 auto;font-size:1.05rem;line-height:1.75}.experience-hero,.projects-hero{color:var(--white);background:#0b1218}.experience-hero__content .eyebrow,.projects-hero__content .eyebrow{color:#f2a78f}.page-hero__subheading{max-width:48rem;margin:1.5rem 0 0;line-height:1.6}.back-link{color:var(--ink-soft);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:.6rem;font-size:.75rem;font-weight:700;display:inline-flex}.back-link:hover{color:var(--orange-dark)}.project-hero{padding-block:clamp(3rem,7vw,6rem) 0}.project-hero__heading{grid-template-columns:minmax(0,1fr) minmax(16rem,.42fr);align-items:end;gap:3rem;margin:clamp(3rem,7vw,6rem) 0 clamp(2.5rem,5vw,4rem);display:grid}.project-hero h1{font-family:var(--display);letter-spacing:-.07em;margin:0;font-size:clamp(4rem,10vw,9rem);font-weight:400;line-height:.84}.project-facts{border-top:1px solid var(--ink);margin:0}.project-facts div{grid-template-columns:5rem 1fr;gap:1rem;padding:.8rem 0;display:grid}.project-facts div+div{border-top:1px solid var(--line)}.project-facts dt{color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;font-size:.66rem;font-weight:700}.project-facts dd{margin:0;font-size:.82rem;line-height:1.5}.project-hero__media{box-shadow:var(--shadow);max-height:46rem}.project-story{padding-block:clamp(5rem,10vw,9rem)}.project-featured-video{grid-template-columns:minmax(13rem,.32fr) minmax(0,1fr);gap:clamp(2rem,5vw,4rem);padding-top:clamp(5rem,9vw,8rem);display:grid}.project-featured-video__heading h2{font-family:var(--display);letter-spacing:-.045em;margin:0;font-size:clamp(2.3rem,4vw,4.2rem);font-weight:400;line-height:1}.project-featured-video__frame{box-shadow:none}.project-featured-video__frame .video-frame__viewport,.project-featured-video__frame:hover .video-frame__viewport,.project-featured-video__frame:focus-within .video-frame__viewport{box-shadow:none;border:0;transition:none}.project-story__layout{grid-template-columns:minmax(0,1.55fr) minmax(17rem,.65fr);grid-template-areas:"overview overview""role sidebar";gap:clamp(3.5rem,6vw,5rem) clamp(3rem,6vw,6rem);max-width:82rem;margin-inline:auto;display:grid}.project-story__lead{grid-area:overview;gap:1.5rem;display:grid}.project-story__lead>.eyebrow{margin:0}.project-story__summary{font-family:var(--display);letter-spacing:-.035em;max-width:none;margin:0;font-size:clamp(2rem,4vw,3.8rem);line-height:1.14}.project-role{grid-area:role}.project-role h2,.project-sidebar h2{letter-spacing:.1em;text-transform:uppercase;margin:0 0 1.5rem;font-size:.72rem;font-weight:700}.contribution-list{counter-reset:contributions;margin:0;padding:0;list-style:none}.contribution-list li{border-top:1px solid var(--line);counter-increment:contributions;grid-template-columns:2rem 1fr;gap:1.5rem;padding:1.25rem 0;font-size:1rem;line-height:1.7;display:grid}.contribution-list li:before{color:var(--orange-dark);content:counter(contributions, decimal-leading-zero);font-family:var(--display)}.project-sidebar{flex-direction:column;grid-area:sidebar;align-self:start;gap:clamp(2.5rem,4vw,3.5rem);display:flex}.tag-list{flex-wrap:wrap;gap:.55rem;margin:0;padding:0;list-style:none;display:flex}.tag-list li{border:1px solid var(--line);color:var(--ink-soft);letter-spacing:.05em;text-transform:uppercase;padding:.6rem .7rem;font-size:.69rem;font-weight:700}.results-panel{background:var(--orange);color:var(--white);padding:1.5rem}.results-panel .eyebrow{color:#ffe2d8;margin-bottom:1rem}.results-panel>p:not(.eyebrow){font-family:var(--display);margin:.7rem 0 0;font-size:1.5rem;line-height:1.2}.project-links{flex-direction:column;align-items:flex-start;display:flex}.project-links a,.related-links a{border-bottom:1px solid var(--ink);padding:.7rem 0;font-size:.78rem;font-weight:700}.project-links a:hover,.related-links a:hover{color:var(--orange-dark)}.video-frame{margin:0;position:relative}.video-frame__viewport{aspect-ratio:16/9;background:#0b1218;border:1px solid #0000;transition:border-color .18s,box-shadow .18s;overflow:hidden}.video-frame:hover .video-frame__viewport,.video-frame:focus-within .video-frame__viewport{border-color:var(--orange);box-shadow:0 16px 36px #14212d24}.video-frame iframe,.video-frame video{object-fit:contain;border:0;width:100%;height:100%;display:block}.video-frame figcaption{color:var(--ink-soft);justify-content:space-between;align-items:flex-start;gap:1rem;padding-top:.8rem;font-size:.74rem;line-height:1.5;display:flex}.video-frame figcaption>span{min-width:0}.video-frame figcaption strong{color:var(--ink);letter-spacing:.06em;text-transform:uppercase;margin-bottom:.2rem;font-size:.7rem;display:block}.video-frame figcaption>a{color:var(--blue-dark);border-bottom:1px solid;flex:none;padding-bottom:.15rem;font-weight:700}.video-frame figcaption>a:hover,.video-frame figcaption>a:focus-visible{color:var(--orange-dark)}.project-gallery{padding-bottom:clamp(5rem,10vw,9rem)}.project-gallery__heading{margin-bottom:2.5rem}.media-slider{margin-bottom:clamp(3rem,7vw,6rem)}.media-slider__viewport{aspect-ratio:4/3;background:#0b1218;position:relative;overflow:hidden}.media-slider__viewport>img{object-fit:cover;width:100%;height:100%}.media-slider__controls{color:var(--white);background:#14212df0;grid-template-columns:auto 1fr auto;align-items:center;width:min(19rem,100%);display:grid;position:absolute;bottom:0;left:0}.media-slider__controls button{color:inherit;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;width:3.5rem;height:3.5rem;font-size:1.2rem;transition:background-color .18s,color .18s;display:inline-flex}.media-slider__controls button:hover,.media-slider__controls button:focus-visible{background:var(--orange);color:var(--white)}.media-slider__controls p{letter-spacing:.12em;text-align:center;margin:0;font-size:.65rem;font-weight:700}.media-slider__thumbs{grid-template-columns:repeat(7,minmax(0,1fr));gap:clamp(.35rem,1vw,.7rem);margin-top:.8rem;display:grid}.media-slider__thumbs button{aspect-ratio:4/3;cursor:pointer;background:#ded9ce;border:0;padding:0;position:relative;overflow:hidden}.media-slider__thumbs button:after{content:"";pointer-events:none;border:3px solid #0000;transition:border-color .18s;position:absolute;inset:0}.media-slider__thumbs button:hover:after,.media-slider__thumbs button:focus-visible:after,.media-slider__thumbs button[aria-current=true]:after{border-color:var(--orange)}.media-slider__thumbs img{object-fit:cover;width:100%;height:100%;transition:transform .22s}.media-slider__thumbs button:hover img,.media-slider__thumbs button:focus-visible img{transform:scale(1.035)}.media-slider__thumbs span{color:var(--white);letter-spacing:.08em;background:#14212de0;padding:.3rem .4rem;font-size:.56rem;font-weight:700;position:absolute;bottom:0;left:0}.project-video-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(2rem,4vw,3.5rem) clamp(1rem,2vw,1.5rem);margin-bottom:clamp(3rem,7vw,6rem);display:grid}.project-video-grid .video-frame:only-child{grid-column:1/-1;max-width:58rem}.project-gallery__grid{grid-auto-flow:dense;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(.8rem,2vw,1.5rem);display:grid}.project-gallery__grid .media-frame{grid-column:span 6}.project-gallery__grid .media-frame--contain{aspect-ratio:auto;align-self:start}.project-gallery__grid .media-frame--contain img{height:auto}.project-gallery__grid .media-frame--feature{grid-column:span 12}.project-page--maestro-frc-robotics .project-gallery__grid .media-frame--feature,.project-page--science-olympiad-wind-turbine .project-gallery__grid .media-frame--feature,.project-page--dissect-wind-up-toy .project-gallery__grid .media-frame--feature,.project-page--physics-simulation .project-gallery__grid .media-frame--feature{grid-column:span 7}.project-page--maestro-frc-robotics .project-gallery__grid .media-frame:nth-child(2),.project-page--science-olympiad-wind-turbine .project-gallery__grid .media-frame:nth-child(2),.project-page--dissect-wind-up-toy .project-gallery__grid .media-frame:nth-child(2),.project-page--physics-simulation .project-gallery__grid .media-frame:nth-child(2){grid-column:span 5}.project-pagination{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));padding-block:2rem clamp(5rem,10vw,9rem);display:grid}.project-pagination a{flex-direction:column;align-items:flex-start;gap:.65rem;min-height:7rem;padding:1rem 2rem 1rem 0;display:flex}.project-pagination a+a{border-left:1px solid var(--line);text-align:right;align-items:flex-end;padding:1rem 0 1rem 2rem}.project-pagination span{color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;font-size:.66rem;font-weight:700}.project-pagination strong{font-family:var(--display);font-size:clamp(1.5rem,3vw,2.4rem);font-weight:400}.project-pagination a:hover strong{color:var(--orange-dark)}.experience-page{padding-block:clamp(5rem,10vw,9rem)}.experience-group+.experience-group{margin-top:clamp(5rem,10vw,8rem)}.experience-group>h2{color:var(--blue);letter-spacing:.12em;text-transform:uppercase;margin:0 0 2rem;font-size:.72rem}.experience-list{border-top:1px solid var(--ink)}.experience-entry{grid-template-columns:minmax(12rem,.36fr) minmax(0,1fr);gap:clamp(2rem,7vw,7rem);padding:clamp(2rem,5vw,4rem) 0;display:grid}.experience-entry+.experience-entry{border-top:1px solid var(--line)}.experience-entry__meta{color:var(--ink-soft);font-size:.73rem;line-height:1.5}.experience-entry__meta p{margin:0 0 .6rem}.experience-entry__logo{background:0 0;max-width:11rem;margin-top:2rem;overflow:visible}.experience-entry__logo img{padding:1rem}.experience-entry__media{width:100%;max-width:16rem;margin-top:2rem}.experience-entry__media img{object-position:center}.experience-entry__body h3{font-family:var(--display);letter-spacing:-.045em;margin:0;font-size:clamp(2rem,4vw,3.7rem);font-weight:400;line-height:1}.experience-entry__website{text-underline-offset:.16em;text-decoration-line:underline;text-decoration-color:#0000;text-decoration-thickness:2px;transition:color .18s,text-decoration-color .18s}.experience-entry__website:hover,.experience-entry__website:focus-visible{color:var(--orange-dark);text-decoration-color:currentColor}.experience-entry__role{color:var(--blue);letter-spacing:.055em;text-transform:uppercase;margin:.9rem 0 0;font-size:.78rem;font-weight:700}.experience-entry__description{color:var(--ink-soft);max-width:44rem;margin:1.7rem 0 0;font-style:italic;line-height:1.65}.experience-entry__sections{border-block:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));max-width:56rem;margin-top:2rem;display:grid}.experience-entry__sections section{padding:1.5rem}.experience-entry__sections section:first-child{padding-left:0}.experience-entry__sections section+section{border-left:1px solid var(--line)}.experience-entry__sections h4{color:var(--blue);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.72rem;line-height:1.4}.experience-entry__sections p{color:var(--ink-soft);margin:.8rem 0 0;font-size:.88rem;line-height:1.7}.experience-entry__body ul{max-width:48rem;margin:1.6rem 0 0;padding-left:1.2rem;line-height:1.7}.experience-entry__body li{padding-left:.5rem}.experience-entry__body li+li{margin-top:.8rem}.related-links{flex-wrap:wrap;gap:1rem 1.5rem;margin-top:1.5rem;display:flex}.about-hero{grid-template-columns:minmax(0,1.12fr) minmax(280px,.6fr);align-items:center;gap:clamp(3rem,9vw,8rem);padding-block:clamp(5rem,11vw,10rem);display:grid}.about-hero h1{max-width:12ch;font-size:clamp(3.3rem,7vw,6.7rem)}.about-hero__intro{color:var(--ink-soft);max-width:39rem;margin:2rem 0;line-height:1.75}.about-hero .media-frame{box-shadow:var(--shadow)}.about-section{padding-block:0;display:block}.about-section__content{border-top:1px solid var(--line);width:100%;max-width:68rem;margin-inline:auto;padding-block:clamp(4rem,8vw,7rem)}.about-section__content>h2{max-width:16ch;font-size:clamp(2.4rem,4vw,4.3rem)}.education-list{border-top:1px solid var(--ink);margin-top:2.5rem}.education-card{grid-template-columns:clamp(6rem,12vw,9rem) minmax(0,1fr);align-items:center;gap:clamp(1.5rem,4vw,3.5rem);padding:1.7rem 0;display:grid}.education-card+.education-card{border-top:1px solid var(--line)}.education-card__logo{justify-content:center;align-items:center;height:5.5rem;display:flex}.education-card__logo img{object-fit:contain;width:100%;height:100%}.education-card h3{font-family:var(--display);letter-spacing:-.035em;margin:0;font-size:clamp(1.65rem,3vw,2.5rem);font-weight:400;line-height:1.05}.education-card p{color:var(--ink-soft);margin:.5rem 0 0;font-size:.82rem;line-height:1.5}.skill-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 2rem;margin-top:2.5rem;display:grid}.skill-grid article{border-top:1px solid var(--line);padding:1.5rem 0 2rem}.skill-grid h3{color:var(--blue);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .8rem;font-size:.72rem}.skill-grid p{color:var(--ink-soft);margin:0;line-height:1.7}.coursework-featured{gap:0;margin:2.5rem 0;padding:0;list-style:none;display:grid}.coursework-featured li{border-top:1px solid var(--line);font-family:var(--display);padding:1rem 0;font-size:clamp(1.2rem,2.2vw,1.8rem)}.coursework-details{border:1px solid var(--line)}.coursework-details summary{cursor:pointer;letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;align-items:center;padding:1.2rem;font-size:.78rem;font-weight:700;list-style:none;display:flex}.coursework-details summary::-webkit-details-marker{display:none}.coursework-details summary:after{content:"";border-bottom:1.5px solid;border-right:1.5px solid;width:.45rem;height:.45rem;margin-left:1rem;transform:rotate(45deg)}.coursework-details[open] summary{border-bottom:1px solid var(--line)}.coursework-details[open] summary:after{transform:rotate(225deg)}.coursework-terms{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem;padding:1.5rem;display:grid}.coursework-terms h3{color:var(--blue);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem}.coursework-terms ul{color:var(--ink-soft);padding-left:1.1rem;font-size:.78rem;line-height:1.65}.contact-page{min-height:75vh;padding-block:clamp(6rem,14vw,12rem)}.contact-page h1{max-width:14ch}.contact-page__intro{color:var(--ink-soft);max-width:40rem;margin:2rem 0 clamp(4rem,8vw,7rem);line-height:1.7}.contact-links{border-top:1px solid var(--ink)}.contact-links a{border-bottom:1px solid var(--line);grid-template-columns:8rem 1fr auto;align-items:center;gap:2rem;padding:1.5rem 0;transition:color .18s,padding .18s;display:grid}.contact-links a:hover{color:var(--orange-dark);padding-inline:.7rem}.contact-links span:first-child{color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:700}.contact-links strong{font-family:var(--display);font-size:clamp(1.3rem,3vw,2.5rem);font-weight:400}.not-found{min-height:70vh;padding-block:clamp(7rem,14vw,12rem)}.not-found h1{max-width:13ch;font-size:clamp(3rem,7vw,6rem)}.not-found>p:not(.eyebrow){color:var(--ink-soft);margin:2rem 0}.site-footer{background:var(--ink);color:var(--white);padding:clamp(4rem,8vw,7rem) clamp(1.25rem,4vw,4.5rem) 1.5rem}.site-footer__inner,.site-footer__base{max-width:1290px;margin-inline:auto}.site-footer__inner{grid-template-columns:1fr auto;align-items:end;gap:3rem;display:grid}.site-footer .eyebrow{color:#f2a78f}.site-footer__prompt{font-family:var(--display);letter-spacing:-.05em;max-width:12ch;margin:0;font-size:clamp(2.8rem,6vw,5.8rem);line-height:.96}.site-footer__links{flex-direction:column;align-items:flex-start;gap:.4rem;display:flex}.site-footer__links a{border-bottom:1px solid #ffffff80;min-width:9rem;padding:.65rem 0;font-size:.8rem;font-weight:700}.site-footer__links a:hover{color:#f2a78f;border-color:#f2a78f}.site-footer__base{color:#aeb9c0;letter-spacing:.06em;text-align:center;text-transform:uppercase;border-top:1px solid #fff3;justify-content:center;margin-top:clamp(5rem,12vw,10rem);padding-top:1.3rem;font-size:.65rem;display:flex}@media (max-width:1024px),(hover:none),(pointer:coarse){.hero-media{background-position:var(--hero-media-position-mobile)}.hero-media>img,.hero-media>video{object-position:var(--hero-media-position-mobile)}}@media (max-width:960px){.site-header__inner{grid-template-columns:auto 1fr;gap:1.25rem}.site-nav{grid-area:1/2;justify-content:flex-end;width:auto}.home-hero__inner{grid-template-columns:1.1fr .9fr;gap:4rem;min-height:auto}.home-hero h1{font-size:clamp(3.8rem,8vw,6rem)}.experience-preview__grid{grid-template-columns:1fr}.experience-preview__grid article,.experience-preview__grid article:first-child{border-bottom:1px solid #ffffff40;border-right:0;padding:1.5rem 0 2rem}.experience-preview__index{margin-bottom:1.5rem}.education-grid{grid-template-columns:1fr 1fr}}@media (max-width:720px){.site-header__inner{grid-template-columns:1fr auto;min-height:4.7rem;position:relative}.wordmark__name{display:none}.site-nav-toggle{color:var(--ink);cursor:pointer;font:inherit;letter-spacing:.07em;text-transform:uppercase;background:0 0;border:0;grid-area:1/2;align-items:center;gap:.6rem;padding:.7rem;font-size:.68rem;font-weight:700;display:none}.site-header[data-menu-ready=true] .site-nav-toggle{display:inline-flex}.site-nav-toggle i,.site-nav-toggle i:after{background:currentColor;width:1.1rem;height:1px;display:block}.site-nav-toggle i{position:relative}.site-nav-toggle i:after{content:"";transition:transform .18s;position:absolute;top:5px}.site-header[data-menu-open=true] .site-nav-toggle i:after{transform:translateY(-5px)rotate(90deg)}.site-nav{border-bottom:1px solid var(--line);pointer-events:auto;background:#f4f1e9fa;grid-area:2/1/auto/-1;gap:0;width:auto;padding:.7rem clamp(1.25rem,4vw,4.5rem) 1rem;display:grid;position:static;top:100%;left:calc(-1*clamp(1.25rem,4vw,4.5rem));right:calc(-1*clamp(1.25rem,4vw,4.5rem));box-shadow:0 20px 36px #14212d1f}.site-header[data-menu-ready=true] .site-nav{pointer-events:none;display:none;position:absolute}.site-header[data-menu-open=true] .site-nav{pointer-events:auto;display:grid}.site-nav a{border-bottom:1px solid var(--line);font-family:var(--display);letter-spacing:-.02em;padding:.8rem 0;font-size:1.45rem;font-weight:400}.site-nav a:last-child{border-bottom:0}.site-nav a:after{width:2.5rem;bottom:0}.home-hero__inner,.about-hero{grid-template-columns:1fr}.home-hero__inner{padding-top:4.5rem}.home-hero__copy{padding:0}.home-hero__project{margin:0}.home-hero__portrait{order:-1;justify-self:start;width:58%;max-width:14rem;margin:0}.home-hero__project-label{bottom:-1rem;left:.8rem;right:.8rem}.home-facts{grid-template-columns:1fr}.home-facts div{border-bottom:1px solid var(--line);border-right:0;padding:1rem 0}.home-facts div:first-child{padding-left:0}.home-facts div:last-child{border-bottom:0}.section-heading{flex-direction:column;align-items:flex-start}.project-grid,.project-hero__heading,.project-featured-video,.project-story__lead,.experience-entry,.project-video-grid{grid-template-columns:1fr}.media-slider__thumbs{scroll-snap-type:x proximity;grid-template-columns:none;grid-auto-columns:5.5rem;grid-auto-flow:column;padding-bottom:.5rem;overflow-x:auto}.media-slider__thumbs button{scroll-snap-align:start}.project-video-grid .video-frame:only-child{grid-column:auto}.project-gallery__grid .media-frame,.project-gallery__grid .media-frame--feature,.project-page--maestro-frc-robotics .project-gallery__grid .media-frame--feature,.project-page--science-olympiad-wind-turbine .project-gallery__grid .media-frame--feature,.project-page--dissect-wind-up-toy .project-gallery__grid .media-frame--feature,.project-page--physics-simulation .project-gallery__grid .media-frame--feature,.project-page--maestro-frc-robotics .project-gallery__grid .media-frame:nth-child(2),.project-page--science-olympiad-wind-turbine .project-gallery__grid .media-frame:nth-child(2),.project-page--dissect-wind-up-toy .project-gallery__grid .media-frame:nth-child(2),.project-page--physics-simulation .project-gallery__grid .media-frame:nth-child(2){grid-column:span 12}.project-pagination,.experience-entry__sections{grid-template-columns:1fr}.experience-entry__sections section,.experience-entry__sections section:first-child{padding:1.25rem 0}.experience-entry__sections section+section{border-left:0;border-top:1px solid var(--line)}.project-pagination a+a{border-left:0;border-top:1px solid var(--line);text-align:left;align-items:flex-start;padding:1rem 0}.about-hero .media-frame{width:85%;max-width:24rem}.about-section__content>h2{max-width:18ch}.skill-grid,.coursework-terms{grid-template-columns:1fr}.contact-links a{grid-template-columns:1fr auto;gap:.5rem 1rem}.contact-links span:first-child{grid-column:1/-1}.site-footer__inner{grid-template-columns:1fr;align-items:start}}@media (max-width:480px){.home-hero h1,.page-intro h1,.about-hero h1,.contact-page h1{font-size:clamp(3rem,15vw,4.3rem)}.home-hero__project-label{flex-direction:column;align-items:flex-start;gap:.35rem}.project-card__meta{flex-direction:column;align-items:flex-start;gap:.4rem}.project-facts div{grid-template-columns:4.2rem 1fr}.education-card{grid-template-columns:5.5rem minmax(0,1fr)}.video-frame figcaption{flex-direction:column}}html :is(.home-hero h1,.page-intro h1,.about-hero h1,.contact-page h1,.not-found h1,.section-heading h2,.project-gallery h2,.about-section h2,.project-card h3,.experience-preview__grid h3,.project-hero h1,.project-featured-video__heading h2,.project-story__summary,.experience-entry__body h3,.education-card h3,.site-footer__prompt){font-weight:var(--display-weight)}html :is(.eyebrow,.button,.site-nav,.site-nav-toggle,.text-link,.back-link,.project-card__meta,.project-facts,.experience-entry__meta,.experience-entry__role,.tag-list,.media-slider__controls,.video-frame figcaption,.home-facts dt,.site-footer__links,.site-footer__base,.project-links,.related-links,.coursework-details summary){font-family:var(--ui)}html :is(.eyebrow,.project-card__meta,.experience-entry__role,.home-facts dt,.project-facts dt,.experience-group>h2,.experience-entry__sections h4,.skill-grid h3,.coursework-terms h3,.project-role h2,.project-sidebar h2,.project-pagination span,.contact-links span:first-child){font-size:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:500;line-height:1.45}html .eyebrow{margin-bottom:var(--space-3)}html :is(.site-nav a,.site-nav-toggle,.button,.text-link,.back-link,.project-links a,.related-links a,.coursework-details summary,.site-footer__links a){font-size:var(--type-ui);letter-spacing:var(--tracking-ui);font-weight:500}html .site-header__inner{min-height:5rem;padding-block:var(--space-2)}html .wordmark{font-size:var(--type-ui);letter-spacing:var(--tracking-ui);font-weight:600}html .site-nav{gap:clamp(1.4rem,2.6vw,2.35rem)}html .site-nav a{padding-block:var(--space-2)}html .button{gap:var(--space-3);min-height:3.125rem;padding:.8rem 1.2rem}html .button--small{min-height:2.75rem;padding:.65rem 1rem}html .button--text{min-height:auto;padding-inline:0}html .button-row{gap:var(--space-4)}html .text-link{gap:var(--space-3)}html .home-hero{min-height:calc(100vh - 5rem);scroll-margin-top:5rem}html .home-hero__inner{gap:clamp(var(--space-6), 6vw, var(--space-8));padding-block:clamp(var(--space-7), 8vw, 7rem)}html .home-hero__copy{max-width:44rem;padding-bottom:var(--space-4)}html .home-hero h1{font-size:var(--type-display);letter-spacing:var(--tracking-display);line-height:var(--leading-display);max-width:9ch}html .home-hero__headline{font-family:var(--sans);font-size:var(--type-intro);letter-spacing:0;margin-top:var(--space-5);max-width:var(--measure-compact);font-weight:500;line-height:1.45}html .home-hero__intro{font-size:var(--type-body);line-height:var(--leading-body);margin:var(--space-4) 0 var(--space-5);max-width:var(--measure-intro)}html .home-facts{margin-bottom:var(--space-5)}html .home-facts div{padding-block:var(--space-4)}html .home-facts dt{margin-bottom:var(--space-2)}html .home-facts dd{font-size:var(--type-small);line-height:var(--leading-small)}html :is(.section,.experience-preview,.experience-page){padding-block:var(--section-space)}html .section-heading{gap:var(--space-6);margin-bottom:clamp(var(--space-6), 5vw, var(--space-7))}html :is(.section-heading h2,.project-gallery h2,.about-section h2){font-size:var(--type-section);letter-spacing:var(--tracking-heading);line-height:var(--leading-heading)}html .section-heading__description{font-size:var(--type-body);line-height:var(--leading-body);margin-top:var(--space-4);max-width:var(--measure-body)}html .project-grid{gap:clamp(var(--space-7), 7vw, 6rem) clamp(var(--space-4), 4vw, var(--space-6))}html .project-card__body{padding-top:var(--space-4)}html .project-card__meta{gap:var(--space-3)}html .project-card h3{font-size:var(--type-card-title);letter-spacing:var(--tracking-heading);margin:var(--space-3) 0 var(--space-2);line-height:1.05}html .project-card__body>p{font-size:var(--type-body);line-height:var(--leading-body);max-width:var(--measure-body)}html .media-frame figcaption{font-size:var(--type-meta);letter-spacing:.055em;padding:var(--space-2) var(--space-3);font-weight:500}html .experience-preview__grid article{padding-block:var(--space-5) var(--space-6)}html .experience-preview__index{font-size:var(--type-subsection);margin-bottom:var(--space-5)}html .experience-preview__grid h3{font-size:var(--type-subsection);letter-spacing:var(--tracking-heading);line-height:var(--leading-heading)}html .experience-preview__grid p{font-size:var(--type-meta);line-height:var(--leading-small);margin-top:var(--space-2)}html .experience-preview__grid .experience-preview__period{margin-bottom:.6rem}html .experience-preview__grid .experience-preview__description{font-size:var(--type-small)}html .page-intro{padding-block:clamp(var(--space-7), 9vw, 8rem) clamp(var(--space-6), 7vw, var(--space-8))}html :is(.page-intro h1,.contact-page h1,.not-found h1){font-size:var(--type-page-title);letter-spacing:var(--tracking-display);line-height:var(--leading-title)}html .page-hero__subheading{margin-top:var(--space-4);max-width:62ch;line-height:1.55}html .back-link{gap:var(--space-2)}html .project-hero{padding-top:clamp(var(--space-5), 4vw, var(--space-7))}html .project-hero__heading{gap:var(--space-6);margin:clamp(var(--space-5), 4vw, var(--space-7)) 0 clamp(var(--space-5), 4vw, var(--space-7))}html .project-hero h1{font-size:var(--type-project-title);letter-spacing:var(--tracking-display);line-height:var(--leading-title);max-width:12ch}html .project-facts div{gap:var(--space-3);padding-block:var(--space-2)}html .project-facts dd{font-size:var(--type-meta);line-height:var(--leading-small)}html .project-story{padding-block:var(--section-space)}html .project-featured-video{gap:clamp(var(--space-5), 5vw, var(--space-7));padding-top:clamp(var(--space-7), 8vw, var(--space-8))}html .project-featured-video__heading h2{font-size:var(--type-section);letter-spacing:var(--tracking-heading);line-height:var(--leading-heading)}html .project-story__lead{gap:var(--space-4)}html .project-story__summary{letter-spacing:var(--tracking-heading);max-width:none;font-size:clamp(2rem,3vw,3.1rem);line-height:1.16}html .project-story__layout{column-gap:clamp(var(--space-6), 6vw, var(--space-8));row-gap:clamp(var(--space-6), 6vw, var(--space-7))}html :is(.project-role h2,.project-sidebar h2){margin-bottom:var(--space-4)}html .contribution-list li{font-size:var(--type-body);gap:var(--space-4);line-height:var(--leading-body);padding-block:var(--space-4)}html .project-sidebar{gap:var(--space-6)}html .tag-list{gap:var(--space-2)}html .tag-list li{font-size:var(--type-label);letter-spacing:.055em;padding:.55rem .65rem;font-weight:500}html .results-panel{padding:var(--space-4)}html .results-panel>p:not(.eyebrow){font-size:clamp(1.3rem,2vw,1.6rem);line-height:1.25}html :is(.project-links a,.related-links a){padding-block:var(--space-2)}html .video-frame figcaption{font-size:var(--type-meta);gap:var(--space-3);line-height:var(--leading-small);padding-top:var(--space-2)}html .video-frame figcaption strong{font-size:var(--type-label);letter-spacing:.055em;font-weight:500}html .project-gallery{padding-bottom:var(--section-space)}html .project-gallery__heading{margin-bottom:var(--space-6)}html .project-video-grid{gap:clamp(var(--space-5), 4vw, var(--space-6)) clamp(var(--space-3), 2vw, var(--space-4));margin-bottom:clamp(var(--space-6), 7vw, var(--space-8))}html .project-gallery__grid{gap:clamp(var(--space-2), 2vw, var(--space-4))}html .project-pagination{padding-block:var(--space-5) var(--section-space)}html .project-pagination a{gap:var(--space-2);min-height:6.5rem}html .project-pagination strong{font-size:var(--type-subsection);line-height:var(--leading-heading)}html .experience-group+.experience-group{margin-top:clamp(var(--space-7), 9vw, 7rem)}html .experience-group>h2{margin-bottom:var(--space-5)}html .experience-entry{gap:clamp(var(--space-6), 7vw, var(--space-8));padding-block:clamp(var(--space-6), 5vw, var(--space-7))}html .experience-entry__meta{font-size:var(--type-meta);line-height:var(--leading-small)}html .experience-entry__meta p{margin-bottom:var(--space-1)}html .experience-entry__body h3{letter-spacing:var(--tracking-heading);font-size:clamp(2rem,3vw,3rem);line-height:var(--leading-heading)}html .experience-entry__role{margin-top:var(--space-2)}html .experience-entry__description{font-size:var(--type-body);font-style:normal;line-height:var(--leading-body);margin-top:var(--space-4);max-width:var(--measure-body)}html .experience-entry__sections{margin-top:var(--space-5)}html .experience-entry__sections section{padding:var(--space-4)}html .experience-entry__sections p{font-size:var(--type-small);line-height:var(--leading-small);margin-top:var(--space-2)}html .experience-entry__body ul{font-size:var(--type-body);line-height:var(--leading-body);margin-top:var(--space-4);max-width:var(--measure-body)}html .related-links{gap:var(--space-3) var(--space-4);margin-top:var(--space-4)}html .about-section__content{max-width:68rem;padding-block:clamp(var(--space-7), 7vw, var(--space-8))}html .about-section__content>h2{max-width:18ch}html .education-list{margin-top:var(--space-5)}html .education-card{gap:clamp(var(--space-4), 4vw, var(--space-6));padding-block:var(--space-5)}html .education-card h3{font-size:var(--type-subsection);letter-spacing:var(--tracking-heading);line-height:var(--leading-heading)}html .education-card p{font-size:var(--type-small);line-height:var(--leading-small);margin-top:var(--space-1)}html .skill-grid{gap:0 var(--space-5);margin-top:var(--space-5)}html .skill-grid article{padding:var(--space-4) 0 var(--space-5)}html .skill-grid h3{margin-bottom:var(--space-2)}html .skill-grid p{font-size:var(--type-small);line-height:var(--leading-small)}html .coursework-featured{margin-block:var(--space-5)}html .coursework-featured li{padding-block:var(--space-3);font-size:clamp(1.12rem,1.6vw,1.5rem);line-height:1.35}html .coursework-details summary{padding:var(--space-3) var(--space-4)}html .coursework-terms{gap:var(--space-5);padding:var(--space-4)}html .coursework-terms ul{font-size:var(--type-small);line-height:var(--leading-small)}html .contact-page{padding-block:clamp(var(--space-8), 12vw, 10rem)}html .contact-page__intro{font-size:var(--type-intro);line-height:var(--leading-intro);margin:var(--space-5) 0 clamp(var(--space-7), 7vw, var(--space-8));max-width:var(--measure-intro)}html .contact-links a{gap:var(--space-5);padding-block:var(--space-4)}html .contact-links strong{font-size:clamp(1.3rem,2.4vw,2.15rem);line-height:var(--leading-heading)}html .not-found{padding-block:clamp(var(--space-8), 12vw, 10rem)}html .not-found>p:not(.eyebrow){font-size:var(--type-body);line-height:var(--leading-body);margin-block:var(--space-5);max-width:var(--measure-compact)}html .site-footer{padding-top:clamp(var(--space-7), 7vw, var(--space-8))}html .site-footer__inner{gap:var(--space-6)}html .site-footer__prompt{letter-spacing:var(--tracking-heading);font-size:clamp(2.6rem,4.5vw,4.25rem);line-height:var(--leading-heading)}html .site-footer__links{gap:.25rem}html .site-footer__base{font-size:var(--type-label);letter-spacing:.055em;margin-top:clamp(var(--space-7), 9vw, var(--space-9))}@media (max-width:960px){html .home-hero__inner{gap:var(--space-6)}html .project-hero__heading{gap:var(--space-5)}html .project-story__layout{gap:var(--space-6);grid-template-columns:1fr;grid-template-areas:"overview""role""sidebar"}}@media (max-width:720px){:root{--section-space:clamp(4rem, 16vw, 5.5rem);--space-7:3.75rem;--space-8:5rem}html .site-header__inner{min-height:4.7rem}html .site-nav-toggle{font-size:var(--type-label);letter-spacing:.075em;font-weight:600}html .site-nav a{font-family:var(--display);letter-spacing:var(--tracking-heading);padding-block:var(--space-2);font-size:1.3rem;font-weight:400}html .home-hero{min-height:calc(100vh - 4.7rem)}html .home-hero__inner{padding-top:var(--space-7)}html .home-hero h1{font-size:clamp(3rem,13vw,3.6rem);line-height:1}html .home-hero__headline{margin-top:var(--space-4);font-size:1.1rem}html .home-hero__intro{margin:var(--space-3) 0 var(--space-5)}html :is(.page-intro h1,.contact-page h1,.not-found h1){font-size:clamp(2.65rem,11vw,3.4rem);line-height:1.05}html .project-hero h1{font-size:clamp(2.75rem,12vw,3.9rem);line-height:1.03}html :is(.section-heading h2,.project-gallery h2,.about-section h2){font-size:clamp(2.3rem,10vw,3rem)}html .section-heading{gap:var(--space-4)}html .project-grid{gap:var(--space-7)}html .project-card h3{font-size:clamp(1.9rem,9vw,2.45rem)}html .project-story__summary{font-size:clamp(1.8rem,8.5vw,2.5rem)}html .project-story__lead{gap:var(--space-3)}html .experience-entry{gap:var(--space-5)}html .experience-entry__body h3{font-size:clamp(1.9rem,9vw,2.55rem)}html .experience-entry__sections section,html .experience-entry__sections section:first-child{padding:var(--space-4) 0}html .education-card{padding-block:var(--space-4)}html .contact-links a{gap:var(--space-2) var(--space-3)}}@media (max-width:480px){html .home-hero h1{font-size:clamp(2.85rem,13vw,3.25rem)}html .project-hero h1{font-size:clamp(2.55rem,12vw,3.25rem)}html .education-card{grid-template-columns:5rem minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation:none!important}.hero-media{background-position:var(--hero-media-position-desktop);will-change:auto;height:auto;position:absolute;inset:0;clip-path:none!important;transform:none!important}.hero-media--video>video{display:none}}.hero-media[data-save-data=true]>video{display:none}@media (prefers-reduced-motion:reduce) and (max-width:1024px){.hero-media{background-position:var(--hero-media-position-mobile)}}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}
