@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=DM+Serif+Display:ital@0;1&display=swap');
:root{--paper:#f6f1e6;--white:#fff;--ink:#202e28;--muted:#626d65;--green:#173d35;--line:#e0d7c5;--light:#eee6d5;--accent:#b4c4a7;--serif:'DM Serif Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}a,button,input{outline-offset:5px}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid #bc7143}img{max-width:100%;display:block}h1,h2,h3,h4,p,figure{margin:0}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.04em;line-height:1.08}h2{font-size:clamp(34px,4vw,52px)}em{font-weight:400}button{color:inherit}button:disabled{cursor:default}.container{width:min(1200px,calc(100% - 96px));margin-inline:auto}.section{padding-block:108px}.eyebrow{font-size:11px;font-weight:650;letter-spacing:.15em;line-height:1.6}.header{position:sticky;top:0;z-index:20;background:rgba(246,241,230,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.nav-wrap{width:min(1320px,calc(100% - 72px));margin:auto;min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:17px;font-size:10px;font-weight:700;letter-spacing:.13em;white-space:nowrap}.monogram{font-family:var(--serif);font-size:36px;letter-spacing:-.12em;line-height:1}.monogram span{font-family:var(--sans);font-size:20px;color:#819575;margin-left:7px;vertical-align:top}.header nav{display:flex;gap:29px;align-items:center;font-size:12px;font-weight:550}.header nav a{padding-block:6px}.header nav a:hover{color:#657b52}.nav-contact{border-bottom:1px solid var(--ink)}.nav-contact span{margin-left:14px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.35fr 1fr;gap:75px;align-items:center;padding-top:68px;padding-bottom:76px}.hero .eyebrow{font-size:10px;letter-spacing:.11em;display:flex;align-items:center;gap:9px}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#60834f;flex-shrink:0}.hero h1{font-size:clamp(68px,7.8vw,105px);line-height:.97;margin-top:26px;margin-bottom:29px}.hero h1 em{color:#657e53}.hero-intro{font-size:19px;line-height:1.55;max-width:420px;letter-spacing:-.025em}.hero-sub{font-size:12px;color:var(--muted);line-height:1.8;margin-top:18px}.hero-actions{display:flex;gap:28px;align-items:center;margin-top:31px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:14px 20px;font-size:12px;font-weight:550}.primary{background:var(--green);color:var(--paper)}.primary:hover{background:#28554b}.text-link{display:inline-flex;gap:25px;align-items:center;border-bottom:1px solid var(--ink);padding-block:5px;font-size:12px;font-weight:550}.hero-portrait{position:relative;max-width:410px;justify-self:end;width:100%;margin-top:6px}.portrait-frame{overflow:hidden;background:#e2dac9;aspect-ratio:4/4.65;border-radius:160px 160px 3px 3px}.portrait-frame img{width:100%;height:100%;object-fit:cover;object-position:50% 54%}.hero-portrait figcaption{background:var(--green);color:#f3f5e9;display:flex;justify-content:space-between;align-items:center;padding:19px 22px}.caption-label{display:block;font-size:9px;letter-spacing:.16em;opacity:.6;margin-bottom:1px}.hero-portrait strong{font-size:14px;font-weight:500}.portrait-mark{font-size:9px;line-height:1.8;letter-spacing:.05em;opacity:.7;text-align:right}.photo-caption{display:block;text-align:center;font-size:10px;color:var(--muted);margin-top:12px}.intro-strip{border-block:1px solid var(--line);background:var(--light)}.intro-strip .container{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-block:30px}.intro-strip span{font-size:9px;letter-spacing:.14em;font-weight:650;max-width:160px;line-height:1.8}.intro-strip p{font-family:var(--serif);font-size:29px;line-height:1.3;letter-spacing:-.02em}.intro-strip a{font-size:30px}.mobile-break{display:none}.section-heading{display:grid;grid-template-columns:230px 1fr;gap:40px;margin-bottom:48px}.section-heading>.eyebrow{padding-top:9px;color:#5a6e54}.section-lede{max-width:590px;font-size:15px;line-height:1.75;color:var(--muted);margin-top:23px}.research-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:54px}.research-topic{width:100%;display:grid;grid-template-columns:22px 1fr 20px;gap:15px;text-align:left;background:none;border:none;border-top:1px solid var(--line);padding:27px 12px 27px 0;transition:background .2s}.research-topic:last-child{border-bottom:1px solid var(--line)}.research-topic.active{background:#efe7d4;padding-left:15px;border-left:3px solid #5b7950}.topic-number{font-size:10px;color:var(--muted);margin-top:5px}.research-topic strong{font-family:var(--serif);font-size:24px;font-weight:400;letter-spacing:-.02em;line-height:1.25;display:block}.research-topic small{display:block;font-size:12px;color:var(--muted);margin-top:10px}.topic-arrow{font-size:22px}.research-feature{background:var(--green);color:var(--paper)}.diagram-wrap{padding:20px 20px 0}.diagram-label{display:flex;gap:8px;align-items:center;font-size:8px;letter-spacing:.08em}.diagram-label>span:last-child{margin-left:auto;opacity:.5;font-size:7px}.mini-dot{width:5px;height:5px;background:#b4c4a7;border-radius:50%}.robot-diagram{display:block;width:100%;margin-top:17px}#safety-envelope,#learning-line,#contact-ring{transition:opacity .4s}.feature-caption{border-top:1px solid #3e5c51;padding:23px 27px 26px;min-height:235px}.feature-caption h3{font-size:19px;line-height:1.4;font-weight:500;letter-spacing:-.02em}.feature-caption p{font-size:12px;line-height:1.8;color:#c2cfc3;margin-top:13px}.feature-tag{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.07em;color:#b4c4a7;margin-top:17px}.ongoing{display:grid;grid-template-columns:230px 1fr;gap:40px;border-top:1px solid var(--line);margin-top:42px;padding-top:27px}.ongoing>.eyebrow{font-size:9px;color:var(--muted);padding-top:3px}.ongoing>div{display:flex;flex-wrap:wrap;gap:8px 20px}.ongoing p{font-size:11px;color:var(--muted)}.ongoing p:before{content:'↗';margin-right:8px;color:#5c7951}.publications-section{background:#fbf8f1;border-block:1px solid var(--line)}.publication-tools{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:27px}.filters{display:flex;gap:8px}.filter{background:transparent;border:1px solid var(--line);border-radius:2px;padding:8px 13px;font-size:11px}.filter.active{background:var(--green);border-color:var(--green);color:white}.filter span{opacity:.6;font-size:9px;margin-left:7px}.search-box{display:flex;align-items:center;gap:10px;border-bottom:1px solid #bfb29a;padding:5px}.search-box>span{font-size:22px;line-height:1}.search-box input{border:none;background:none;font-size:11px;min-width:210px;padding:7px 0;color:var(--ink)}.publication{display:grid;grid-template-columns:80px 1fr 110px;gap:30px;padding:30px 0;border-top:1px solid var(--line)}.publication:last-child{border-bottom:1px solid var(--line)}.publication-year{font-family:var(--serif);font-size:27px;color:#788773}.publication h3{font-family:var(--serif);font-size:25px;line-height:1.25;font-weight:400;letter-spacing:-.018em;max-width:790px}.publication h3 a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}.authors{font-size:11px;color:var(--muted);margin-top:10px}.authors strong{font-weight:550;color:var(--ink)}.venue{font-size:10px;letter-spacing:.02em;margin-top:5px;color:#5d7650}.pub-links{display:flex;gap:16px;margin-top:15px;align-items:center;font-size:10px}.pub-links a,.pub-links button{border:0;border-bottom:1px solid #d1c4ab;background:transparent;padding:0 0 2px;font-size:10px}.pub-type{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);padding-top:7px;justify-self:end}.empty-state{text-align:center;padding:60px 20px;font-size:14px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.about-copy p{font-size:14px;color:var(--muted);margin-bottom:22px;line-height:1.9}.about-copy .large-copy{color:var(--ink);font-size:22px;line-height:1.5;letter-spacing:-.03em}.about-copy .text-link{margin-top:6px}.timeline{list-style:none;margin:0;padding:0 0 0 29px;border-left:1px solid #cdbfa5}.timeline li{position:relative;padding-bottom:34px}.timeline li:last-child{padding-bottom:0}.timeline li:before{content:'';position:absolute;left:-34px;top:8px;width:9px;height:9px;background:var(--paper);border:1px solid #6c8561;border-radius:50%}.timeline li:first-child:before{background:#6c8561}.timeline-date{font-size:9px;letter-spacing:.1em;color:#657e53;font-weight:600}.timeline h3{font-family:var(--serif);font-size:23px;font-weight:400;line-height:1.3;margin-top:7px}.timeline p{font-size:12px;margin-top:6px}.timeline small{display:block;font-size:11px;color:var(--muted);margin-top:8px;line-height:1.7}.teaching-heading{border-top:1px solid var(--line);margin-top:65px;padding-top:34px;display:flex;align-items:baseline;justify-content:space-between;gap:20px}.teaching-heading h3{font-family:var(--serif);font-size:29px;font-weight:400;letter-spacing:-.02em}.teaching-heading p{font-size:12px;color:var(--muted)}.teaching-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:28px}.teaching-grid article{border-left:1px solid #d9cdb6;padding-left:17px}.teaching-grid span{font-size:10px;color:#7b8a72}.teaching-grid h4{font-size:13px;font-weight:550;margin-top:11px}.teaching-grid p{font-size:11px;line-height:1.8;color:var(--muted);margin-top:9px}.beyond-section{background:#efe8d9;border-top:1px solid var(--line)}.beyond-section h2 em{color:#6c7e5d}.travel-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.travel-card{display:block;text-align:left;border:none;background:transparent;padding:0}.travel-card>div{aspect-ratio:1.65;overflow:hidden;background:#e2d9c6}.travel-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.travel-card:hover img{transform:scale(1.035)}.travel-card>span{display:flex;align-items:center;justify-content:space-between;margin-top:14px}.travel-card strong{font-family:var(--serif);font-size:26px;font-weight:400;letter-spacing:-.02em}.travel-card>span>span{font-size:10px;color:var(--muted)}.travel-card i{font-size:25px;font-style:normal;margin-left:20px}.contact-section{background:var(--green);color:#f1f3e9;padding-block:90px}.contact-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:80px;align-items:center}.contact-section .eyebrow{font-size:10px;color:#b4c4a7;margin-bottom:23px}.contact-section h2{font-size:48px}.contact-section p:not(.eyebrow){font-size:13px;line-height:1.8;color:#bacabd;margin-top:24px}.contact-email{font-size:21px;display:inline-flex;gap:36px;border-bottom:1px solid #82967c;padding-bottom:10px;margin-top:27px;letter-spacing:-.02em}.contact-meta{border-left:1px solid #4e6a59;padding-left:50px;display:flex;flex-direction:column;align-items:flex-start}.contact-meta .status-dot{background:#b4c4a7}.contact-meta p{margin-top:14px!important;margin-bottom:25px}.contact-meta a,.contact-meta button{font-size:11px;margin-top:10px}.contact-meta button{background:none;color:#bacabd;border:0;padding:0;display:flex;gap:25px;margin-top:25px}.footer{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-block:30px}.footer .brand{font-size:9px}.footer .monogram{font-size:30px}.footer p,.footer>a:last-child{font-size:10px;color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:20px;background:var(--green);color:#fff;padding:12px;z-index:100}.skip-link:focus{top:10px}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:var(--green);color:white;padding:12px 23px;border:1px solid #819575;font-size:12px;z-index:60;transition:all .2s}.toast.visible{opacity:1;transform:translate(-50%,0)}.gallery{width:min(1100px,94vw);max-height:94vh;border:0;padding:22px;background:var(--paper);color:var(--ink)}.gallery::backdrop{background:rgba(10,26,21,.88)}.gallery-top,.gallery-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px}.gallery-top{padding-bottom:16px}.gallery-top p{font-family:var(--serif);font-size:24px}.gallery button{border:1px solid var(--line);background:transparent;padding:7px 12px;font-size:12px}.gallery img{width:100%;height:min(68vh,760px);object-fit:contain;background:#ebe4d4}.gallery-bottom{padding-top:17px}[hidden]{display:none!important}
@media(min-width:1500px){.hero{gap:120px}.hero-portrait{max-width:430px}}
@media(max-width:1050px){.container{width:calc(100% - 64px)}.nav-wrap{width:calc(100% - 48px)}.header nav{gap:20px}.brand>span:last-child{font-size:9px}.hero{gap:42px}.hero h1{font-size:80px}.hero .eyebrow{font-size:8px}.section-heading{grid-template-columns:160px 1fr;gap:30px}.research-grid{gap:30px}.research-topic strong{font-size:21px}.ongoing{grid-template-columns:160px 1fr;gap:30px}.about-grid{gap:55px}.contact-grid{gap:45px}.contact-section h2{font-size:42px}.contact-email{font-size:19px;gap:20px}.section{padding-block:80px}}
@media(max-width:800px){html{scroll-padding-top:90px}.container{width:calc(100% - 44px)}.nav-wrap{width:calc(100% - 40px);min-height:74px}.brand{gap:13px}.brand>span:last-child{font-size:9px}.monogram{font-size:31px}.menu-toggle{display:flex;align-items:center;gap:17px;background:transparent;border:1px solid var(--line);padding:7px 10px;font-size:11px}.header nav{display:none;position:absolute;left:0;right:0;top:74px;padding:24px;background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;font-size:14px;gap:16px}.header nav.open{display:flex}.hero{gap:33px;padding-top:45px;padding-bottom:50px}.hero h1{font-size:68px;margin-top:22px}.hero-intro{font-size:16px}.hero-sub{font-size:11px}.hero-actions{gap:18px;flex-wrap:wrap}.button{font-size:10px;gap:18px;padding:12px 15px}.hero .eyebrow{font-size:8px;max-width:220px;align-items:flex-start}.hero .status-dot{margin-top:4px;width:5px;height:5px}.hero-portrait figcaption{padding:14px}.hero-portrait strong{font-size:11px}.caption-label,.portrait-mark{font-size:7px}.photo-caption{font-size:8px}.intro-strip p{font-size:22px}.intro-strip span{font-size:8px;max-width:130px}.intro-strip .container{gap:20px}.section-heading{grid-template-columns:1fr;gap:15px;margin-bottom:34px}.section-heading>.eyebrow{padding:0}.section{padding-block:65px}.section-lede{font-size:14px;margin-top:18px}.research-grid{grid-template-columns:1fr;gap:26px}.research-topics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.research-topic{grid-template-columns:1fr;gap:9px;padding:15px 10px!important;border:1px solid var(--line)!important;align-content:start}.research-topic.active{border-bottom:3px solid #5b7950!important}.research-topic strong{font-size:20px}.research-topic small{font-size:10px;line-height:1.5}.topic-arrow{display:none}.robot-diagram{max-height:290px}.feature-caption{min-height:190px}.ongoing{grid-template-columns:1fr;gap:15px;margin-top:26px}.publication{grid-template-columns:46px 1fr;gap:20px}.pub-type{display:none}.publication h3{font-size:23px}.publication-tools{align-items:flex-start}.search-box input{min-width:155px;width:155px;font-size:10px}.filter{padding:8px 9px;font-size:10px}.filter span{display:none}.filters{gap:5px}.about-grid{gap:35px}.about-copy .large-copy{font-size:20px}.about-copy p{font-size:12px}.timeline h3{font-size:21px}.timeline p,.timeline small{font-size:10px}.teaching-heading{align-items:flex-start;flex-direction:column;gap:5px;margin-top:45px}.teaching-grid{grid-template-columns:repeat(2,1fr);gap:27px}.travel-grid{gap:20px}.travel-card strong{font-size:23px}.travel-card>span>span{font-size:9px}.travel-card i{margin-left:7px}.contact-grid{gap:30px;grid-template-columns:1.4fr 1fr}.contact-meta{padding-left:25px}.contact-section h2{font-size:35px}.contact-email{font-size:16px;gap:10px}.contact-section{padding-block:60px}.footer{flex-wrap:wrap;gap:20px}.footer p{display:none}}
@media(max-width:560px){.hero{grid-template-columns:1fr;gap:35px}.hero h1{font-size:clamp(55px,17vw,68px);letter-spacing:-.045em}.hero .eyebrow{font-size:8px;max-width:none;align-items:center}.hero .status-dot{margin-top:0}.hero-intro{max-width:340px;font-size:17px}.hero-sub{font-size:11px}.hero-portrait{max-width:none;display:grid;grid-template-columns:130px 1fr;align-items:center;justify-self:start;background:var(--light);padding:14px;column-gap:20px}.portrait-frame{aspect-ratio:1;border-radius:50%;width:130px}.portrait-frame img{object-position:50% 60%;object-fit:cover;transform:scale(1.2)}.hero-portrait figcaption{background:none;color:var(--ink);padding:0;display:block}.hero-portrait strong{font-size:17px}.caption-label{font-size:9px;margin-bottom:5px}.portrait-mark{display:block;text-align:left;margin-top:10px;font-size:9px}.photo-caption{grid-column:2;font-size:9px;text-align:left;margin-top:-17px;max-width:180px}.hero-portrait .portrait-frame{grid-row:span 2}.intro-strip .container{padding-block:24px;align-items:center}.intro-strip span{font-size:7px;max-width:88px}.intro-strip p{font-size:23px}.mobile-break{display:block}.intro-strip a{font-size:24px}.intro-strip .container{gap:13px}h2{font-size:36px;letter-spacing:-.035em}h2 br{display:none}.section-heading{gap:17px}.research-topics{gap:8px}.research-topic strong{font-size:18px}.research-topic small{font-size:9px}.research-topic{padding:12px 8px!important}.topic-number{margin-top:0;font-size:9px}.diagram-wrap{padding:15px 12px 0}.diagram-label{font-size:7px}.diagram-label>span:last-child{font-size:6px}.feature-caption{padding:22px}.feature-caption h3{font-size:19px}.feature-caption p{font-size:12px}.feature-tag{font-size:8px}.publication-tools{flex-direction:column;gap:18px;align-items:stretch}.filters{gap:8px}.filter{font-size:11px;padding:8px 12px}.search-box input{width:100%;min-width:0;font-size:12px}.publication{gap:13px;padding-block:26px;grid-template-columns:39px 1fr}.publication-year{font-size:22px}.publication h3{font-size:23px}.authors{font-size:10px;line-height:1.8}.venue{font-size:9px;line-height:1.8}.about-grid{grid-template-columns:1fr;gap:40px}.about-copy p{font-size:14px}.about-copy .large-copy{font-size:23px}.timeline h3{font-size:24px}.timeline p,.timeline small{font-size:12px}.teaching-heading h3{font-size:28px}.teaching-heading p{font-size:11px}.teaching-grid{gap:25px 20px}.teaching-grid p{font-size:11px}.travel-grid{grid-template-columns:1fr;gap:30px}.travel-card strong{font-size:25px}.travel-card>span>span{font-size:11px}.travel-card i{margin-left:15px}.contact-grid{grid-template-columns:1fr;gap:40px}.contact-section h2{font-size:39px}.contact-email{font-size:18px;gap:14px;max-width:100%}.contact-meta{border-left:none;border-top:1px solid #4e6a59;padding:27px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:5px 30px;align-items:start}.contact-meta>.status-dot{display:none}.contact-meta p{grid-row:span 3;margin:0!important}.contact-meta button{margin-top:10px;font-size:10px;gap:8px}.contact-meta a{margin-top:0;margin-bottom:6px}.footer .brand{gap:10px}.footer .brand>span:last-child{font-size:7px}.footer>a:last-child{font-size:9px}.gallery{padding:13px}.gallery img{height:63vh}.gallery-top p{font-size:22px}.gallery button{font-size:10px}.gallery-bottom{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Portrait alternatives: editorial is the default, with square and circle previews. */
body[data-portrait="editorial"] .portrait-frame{border-radius:2px;border:9px solid #fff;box-shadow:11px 12px 0 #e3d8c1;aspect-ratio:4/4.65;margin-right:10px}
body[data-portrait="editorial"] .hero-portrait figcaption{margin-top:25px;background:transparent;color:var(--ink);padding:0 0 0 2px}
body[data-portrait="editorial"] .hero-portrait .photo-caption{text-align:left;padding-left:2px}
body[data-portrait="square"] .portrait-frame{border-radius:3px;aspect-ratio:1;box-shadow:none}
body[data-portrait="square"] .portrait-frame img{object-position:50% 66%}
body[data-portrait="square"] .hero-portrait figcaption{margin-top:18px;background:transparent;color:var(--ink);padding-inline:0}
body[data-portrait="circle"] .portrait-frame{border-radius:50%;aspect-ratio:1;box-shadow:0 0 0 10px #ece4d2}
body[data-portrait="circle"] .portrait-frame img{object-position:50% 66%}
body[data-portrait="circle"] .hero-portrait figcaption{background:transparent;color:var(--ink);padding-top:30px}
.availability{display:inline-flex;align-items:center;gap:9px;padding:8px 11px;border:1px solid #cbbd9f;background:#f1eadb;color:#4d6842;font-size:8px;font-weight:650;letter-spacing:.07em;margin-bottom:24px}.availability>span:last-child{margin-left:8px;font-size:13px;line-height:1}.availability:hover{background:#ebe1cd}.hero{padding-top:48px;padding-bottom:64px}.hero h1{font-size:clamp(68px,7vw,97px);margin-top:22px}.hero-portrait{max-width:390px}.opportunities{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;padding-block:58px;border-bottom:1px solid var(--line)}.opportunities .eyebrow{color:#607c51;margin-bottom:15px}.opportunities h2{font-size:35px}.opportunities>div>p:not(.eyebrow){font-size:16px;line-height:1.75;letter-spacing:-.015em}.opportunities .opportunity-detail{font-size:12px!important;color:var(--muted);margin-top:14px}.opportunity-links{display:flex;flex-wrap:wrap;gap:25px;margin-top:20px}.opportunity-links .text-link{font-size:11px}.code-section{display:grid;grid-template-columns:1fr 2fr;gap:40px;padding-bottom:95px}.code-intro .eyebrow{color:#637c53;margin-bottom:19px}.code-intro h2{font-size:35px}.code-intro>p:last-child{font-size:13px;color:var(--muted);margin-top:20px;max-width:250px}.code-projects{display:grid;grid-template-columns:1fr 1fr;gap:20px}.code-project{background:#f1eadb;border:1px solid #ddd1b9;padding:25px;transition:transform .2s,background .2s}.code-project:hover{background:#e9dfca;transform:translateY(-3px)}.code-language{font-size:8px;letter-spacing:.1em;color:#637c53}.code-project h3{font-family:var(--serif);font-size:27px;font-weight:400;letter-spacing:-.025em;line-height:1.15;margin-top:18px}.code-project h3 span{font-family:var(--sans);font-size:24px;color:#6d865b}.code-project p{font-size:11px;color:var(--muted);line-height:1.8;margin-top:19px}.code-link{display:block;font-size:10px;margin-top:25px}.header nav a.nav-active{color:#5d7850}.demos-section{background:var(--light)}.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.video-card video,.video-card iframe{width:100%;aspect-ratio:16/9;background:#173d35;border:0;display:block}.video-card h3{font:25px var(--serif);margin-top:18px}.video-card p{font-size:13px;color:var(--muted);margin-top:12px}
@media(max-width:1050px){.opportunities{gap:40px}.code-section{grid-template-columns:1fr;gap:28px}.code-intro{display:grid;grid-template-columns:160px 1fr;gap:20px 30px}.code-intro>p:last-child{grid-column:2;max-width:none;margin-top:0}.code-intro .eyebrow{margin-top:7px}.code-intro h2 br{display:none}}
@media(max-width:800px){.availability{font-size:7px;letter-spacing:.035em;gap:6px;padding:7px 8px;max-width:100%;line-height:1.6;margin-bottom:20px}.hero h1{font-size:66px}.opportunities{grid-template-columns:1fr;gap:24px;padding-block:42px}.opportunities h2{font-size:35px}.opportunities h2 br{display:none}.opportunities>div>p:not(.eyebrow){font-size:15px}.code-section{padding-bottom:65px}.code-intro{display:block}.code-intro h2{font-size:35px}.code-intro>p:last-child{margin-top:18px}.code-project{padding:22px}.code-project h3{font-size:26px}}
@media(max-width:560px){.hero h1{font-size:clamp(55px,17vw,68px)}.availability{font-size:7px;margin-bottom:20px}.hero-portrait{max-width:none;width:100%}body[data-portrait="editorial"] .portrait-frame{border-width:4px;box-shadow:5px 6px 0 #e3d8c1;aspect-ratio:1;margin:0}body[data-portrait="editorial"] .hero-portrait figcaption,body[data-portrait="square"] .hero-portrait figcaption,body[data-portrait="circle"] .hero-portrait figcaption{margin:0;padding:0}body[data-portrait="editorial"] .hero-portrait .photo-caption{padding:0}body[data-portrait="circle"] .portrait-frame{box-shadow:0 0 0 5px #e6dcc7}.code-projects{grid-template-columns:1fr}.code-project{padding:25px}.code-project h3 br{display:none}.code-project p{font-size:12px}.opportunity-links{gap:20px}.opportunity-links .text-link{font-size:10px}.video-grid{grid-template-columns:1fr}}
