@charset "UTF-8";:root{--paper:#f6f6f0;--white:#fff;--ink:#202b25;--muted:#636b63;--green:#294e3e;--green-dark:#1d3c2e;--lime:#dbeaab;--line:#d8ddd2;--panel:#ecede4;--sans:Arial,Helvetica,sans-serif;--serif:Georgia,'Times New Roman',serif;--mono:'SFMono-Regular',Consolas,'Liberation Mono',monospace;--width:1280px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}body,button,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button,a{touch-action:manipulation}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.24em}a:focus-visible,button:focus-visible{outline:3px solid #538b4c;outline-offset:5px;border-radius:2px}button{color:inherit}img{max-width:100%;height:auto;display:block}figure,p,h1,h2,h3,ul,ol,dl{margin:0}h1,h2,h3{line-height:1.08;font-weight:500;letter-spacing:-.055em;text-wrap:balance}h1{font-size:clamp(3rem,5.6vw,5.6rem)}h2{font-size:clamp(2.3rem,4vw,4rem)}h3{font-size:1.65rem;letter-spacing:-.035em}em{font-family:var(--serif);font-weight:400;letter-spacing:-.065em}[hidden]{display:none!important}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}::selection{background:var(--lime);color:var(--ink)}.wrap{width:calc(100% - 112px);max-width:var(--width);margin-inline:auto}.section{padding-block:112px}.eyebrow{font-family:var(--mono);font-size:.67rem;font-weight:500;line-height:1.5;letter-spacing:.1em;text-transform:uppercase}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:1.8rem;background:var(--green);color:var(--white);padding:15px 21px;text-decoration:none;font-size:.88rem;line-height:1.5;border:1px solid var(--green);border-radius:3px;transition:background .18s,color .18s}.button:hover{background:var(--green-dark)}.button span{font-size:1.2rem;line-height:1}.button-light{background:var(--lime);border-color:var(--lime);color:var(--ink)}.button-light:hover{background:var(--white)}.text-link{font-size:.88rem;text-decoration:none;display:inline-flex;align-items:center;gap:1rem;border-bottom:1px solid var(--ink);padding-bottom:5px;line-height:1.5}.text-link:hover{color:var(--green);border-color:var(--green)}.text-link span{font-size:1.1rem}.skip-link{position:fixed;left:1rem;top:-8rem;z-index:100;background:var(--ink);color:#fff;padding:1rem}.skip-link:focus{top:1rem}.site-header{min-height:108px;display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line)}.wordmark{font-size:1.95rem;letter-spacing:-.08em;font-weight:700;text-decoration:none;line-height:1}.wordmark span{color:#678943}.main-nav{display:flex;align-items:center;gap:30px;font-size:.8rem;margin-left:auto}.main-nav>a{text-decoration:none;white-space:nowrap;line-height:1.5;padding-block:9px}.main-nav>a:hover,.main-nav>a[aria-current]{color:var(--green);text-decoration:underline;text-underline-offset:7px}.main-nav a.nav-contact{border:1px solid var(--ink);padding:9px 16px;border-radius:3px;display:flex;gap:25px;align-items:center}.main-nav a.nav-contact:hover{background:var(--green);color:#fff;border-color:var(--green);text-decoration:none}.language-links{border-left:1px solid var(--line);padding-left:12px;font-family:var(--mono)}.hero{display:grid;grid-template-columns:1fr 1.1fr;gap:50px;padding-block:67px 61px;align-items:center}.hero-copy>.eyebrow{display:flex;align-items:center;gap:9px;font-size:.62rem;letter-spacing:.06em;white-space:nowrap;margin-bottom:30px}.status-dot{width:6px;height:6px;border-radius:50%;background:#5b7953;flex-shrink:0}.hero h1{font-size:clamp(3.8rem,5.85vw,5.9rem);line-height:1.01;letter-spacing:-.065em;margin-left:-4px}.hero h1 em{font-size:.91em;letter-spacing:-.07em;white-space:nowrap}.hero-intro{font-size:1rem;line-height:1.7;color:var(--muted);max-width:390px;margin-top:26px}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:22px;margin-top:29px}.hero-actions .button{font-size:.8rem;gap:22px;padding:14px 17px}.hero-actions .text-link{font-size:.78rem;gap:13px}.hero-note{font-size:.72rem;color:var(--muted);margin-top:20px}.hero-visual{align-self:stretch;display:flex;flex-direction:column;justify-content:center;padding-top:4px;min-width:0}.hero-visual>a{display:block;overflow:hidden;border-radius:3px}.hero-visual img{width:100%;aspect-ratio:1.18;object-fit:cover;object-position:52% center;transition:transform .6s}.hero-visual>a:hover img{transform:scale(1.025)}.hero-visual figcaption{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:17px}.hero-visual figcaption .eyebrow{font-size:.55rem;display:block;color:var(--muted);margin-bottom:4px}.hero-visual figcaption strong{font-size:.8rem;font-weight:500;letter-spacing:-.02em}.caption-index{font-family:var(--mono);font-size:.67rem;color:var(--muted)}.expertise-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:23px;display:flex;justify-content:space-between;align-items:center;gap:30px}.expertise-strip>span{font-family:var(--mono);font-size:.58rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.expertise-strip ul{padding:0;list-style:none;display:flex;justify-content:space-between;gap:36px;font-size:.92rem;letter-spacing:-.02em}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:64px;margin-bottom:44px}.section-heading .eyebrow{margin-bottom:20px;color:var(--muted)}.section-heading>p{font-size:.96rem;line-height:1.75;max-width:380px;color:var(--muted);padding-bottom:5px}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:55px 30px}.project-card{min-width:0}.project-image{display:block;position:relative;overflow:hidden;border-radius:3px;background:var(--panel)}.project-image img{width:100%;aspect-ratio:1.65;object-fit:cover;transition:transform .5s}.project-image:hover img{transform:scale(1.025)}.image-arrow{position:absolute;right:14px;bottom:14px;width:37px;height:37px;display:grid;place-items:center;background:var(--paper);border-radius:50%;font-size:1.25rem;line-height:1;color:var(--ink)}.project-meta{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-block:18px 8px;font-family:var(--mono);font-size:.58rem;text-transform:uppercase;letter-spacing:.065em;color:var(--muted)}.project-meta span:last-child{border:1px solid var(--line);border-radius:2px;padding:2px 7px;font-size:.55rem;white-space:nowrap}.project-card h3 a{text-decoration:none}.project-card h3 a:hover{text-decoration:underline;text-underline-offset:5px}.project-card>p{font-size:.86rem;line-height:1.65;color:var(--muted);max-width:480px;margin-top:10px}.section-links{display:flex;justify-content:flex-end;gap:30px;margin-top:42px}.services-overview{background:var(--panel)}.service-rows{border-top:1px solid #cdd2c5}.service-row{display:grid;grid-template-columns:42px 1.1fr 1fr 30px;align-items:start;gap:25px;padding-block:33px;border-bottom:1px solid #cdd2c5;text-decoration:none}.service-number{font-family:var(--mono);font-size:.65rem;letter-spacing:.04em;color:var(--muted);padding-top:5px}.service-row h3{font-size:1.65rem;line-height:1.3}.service-row p{font-size:.88rem;line-height:1.7;color:var(--muted);max-width:345px}.row-arrow{font-size:1.4rem;line-height:1.4;transition:transform .15s}.service-row:hover .row-arrow,.social-list a:hover .row-arrow{transform:translate(3px,-3px)}.service-row:hover h3{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}.about-section{display:grid;grid-template-columns:.8fr 1fr;gap:110px;align-items:center;padding-inline:45px}.portrait{position:relative}.portrait img{width:100%;aspect-ratio:.91;object-fit:cover;object-position:center;border-radius:3px;filter:saturate(.78)}.portrait>span{display:block;margin-top:11px;font-family:var(--mono);font-size:.57rem;color:var(--muted);text-align:right}.about-copy .eyebrow{margin-bottom:22px;color:var(--muted)}.about-copy h2{margin-bottom:25px}.about-copy>p:not(.eyebrow){font-size:.93rem;line-height:1.8;color:var(--muted);margin-top:16px}.about-copy .text-link{margin-top:25px}.contact-banner{display:flex;justify-content:space-between;align-items:center;gap:45px;background:var(--green-dark);color:var(--paper);padding:60px 55px;border-radius:4px}.contact-banner .eyebrow{color:var(--lime);margin-bottom:15px}.contact-banner h2{font-size:clamp(2.1rem,3.3vw,3.25rem);margin-bottom:16px}.contact-banner p:not(.eyebrow){color:#d4ded5;font-size:.9rem;max-width:480px}.contact-banner .button{flex-shrink:0;font-size:.8rem}.contact-banner a:focus-visible{outline-color:var(--lime)}.site-footer{padding-block:66px 35px;display:grid;grid-template-columns:1fr 1fr auto;align-items:start;gap:40px}.site-footer .wordmark{font-size:1.6rem}.site-footer p{font-size:.7rem;line-height:1.8;color:var(--muted);margin-top:16px}.footer-links{display:flex;flex-direction:column;gap:9px;padding-top:3px;font-size:.77rem}.footer-links a{text-decoration:none;width:fit-content}.footer-links a:hover{text-decoration:underline}.site-footer .copyright{font-size:.61rem;margin-top:4px;text-align:right}.page-intro{padding-block:80px 56px}.page-intro .eyebrow{color:var(--muted);margin-bottom:24px}.page-intro h1{max-width:940px;font-size:clamp(3.3rem,5.3vw,5.25rem)}.lead{font-size:1.06rem;color:var(--muted);line-height:1.75;max-width:640px;margin-top:28px}.page-intro .button{margin-top:30px}.catalog{padding-bottom:90px}.catalog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-block:20px 30px}.filters{display:flex;gap:5px;flex-wrap:wrap}.filters button{border:1px solid transparent;border-radius:2px;background:0 0;font-size:.8rem;line-height:1.5;padding:9px 17px;cursor:pointer;min-height:42px}.filters button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.filters button:hover:not([aria-pressed=true]){border-color:var(--line)}.catalog-count{font-size:.72rem;color:var(--muted);font-family:var(--mono);white-space:nowrap}.empty-state{padding:65px 30px;background:var(--panel);text-align:center}.empty-state h2{font-size:2.1rem;margin-block:15px}.empty-state p:not(.eyebrow){max-width:540px;margin-inline:auto;font-size:.95rem;color:var(--muted)}.empty-state .text-link{margin-top:25px}.detail-intro{padding-block:45px 44px}.back-link{font-size:.74rem;color:var(--muted);text-decoration:none;display:inline-flex;gap:15px;margin-bottom:40px}.back-link:hover{text-decoration:underline}.detail-heading{display:grid;grid-template-columns:1.65fr 1fr;gap:80px;align-items:start}.detail-heading .eyebrow{margin-bottom:20px;color:var(--muted)}.detail-heading h1{font-size:clamp(2.8rem,4.9vw,5rem)}.detail-heading .lead{font-size:1rem;margin-top:22px}.project-facts{padding-top:8px}.project-facts>div{display:grid;grid-template-columns:95px 1fr;gap:15px;padding-block:12px;border-top:1px solid var(--line);font-size:.77rem;line-height:1.6}.project-facts dt{font-size:.6rem;font-family:var(--mono);text-transform:uppercase;color:var(--muted);padding-top:2px}.project-facts dd{margin:0}.detail-cover img{width:100%;height:auto;max-height:700px;object-fit:contain;background:var(--panel);border-radius:3px}.detail-cover figcaption{font-size:.72rem;color:var(--muted);line-height:1.7;margin-top:10px}.reading-layout{display:grid;grid-template-columns:minmax(0,700px)1fr;gap:95px;padding-block:60px}.prose{font-size:1.02rem;line-height:1.85;max-width:70ch}.prose>p,.prose>ul,.prose>ol{margin-bottom:1.3rem}.prose h2{font-size:2.1rem;margin-block:2.4rem 1.2rem;letter-spacing:-.04em}.prose h3{font-size:1.5rem;margin-block:2rem 1rem}.prose h2:first-child{margin-top:0}.prose ul,.prose ol{padding-left:1.3rem}.prose li{padding-left:.2rem;margin-bottom:.55rem}.prose a{color:var(--green)}.prose blockquote{border-left:3px solid var(--green);padding-left:1.3rem;margin-left:0;color:var(--muted)}.prose pre{padding:20px;overflow-x:auto;background:var(--panel);font-size:.85rem}.project-links{align-self:start;border-top:1px solid var(--line);padding-top:20px}.project-links .eyebrow{margin-bottom:15px;color:var(--muted)}.project-links>a{font-size:.84rem;display:flex;justify-content:space-between;gap:15px;padding-block:13px;border-bottom:1px solid var(--line);text-decoration:none}.project-links>a:hover{color:var(--green);text-decoration:underline}.project-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;padding-bottom:90px}.project-gallery figure:only-child{grid-column:1/-1}.project-gallery img{width:100%;height:auto;border-radius:3px}.project-gallery--uniform img{aspect-ratio:4/3;object-fit:contain;background:var(--panel)}.project-gallery figcaption{font-size:.73rem;color:var(--muted);margin-top:10px}.service-details{padding-bottom:55px}.service-detail{display:grid;grid-template-columns:1fr 1.2fr;gap:85px;border-top:1px solid var(--line);padding-block:50px 60px;scroll-margin-top:40px}.service-title{display:flex;align-items:start;gap:30px}.service-title h2{font-size:2.5rem;line-height:1.15;max-width:330px}.service-description{font-size:.97rem;color:var(--muted);line-height:1.8}.service-description .service-audience{color:var(--ink);font-size:1.1rem;margin-bottom:18px}.service-description ul{list-style:none;padding:0;margin-block:22px}.service-description li{position:relative;padding-left:23px;margin-bottom:9px}.service-description li:before{content:'↗';position:absolute;left:0;color:var(--green)}.service-booking{text-align:center;max-width:750px}.service-booking .eyebrow{color:var(--muted);margin-bottom:23px}.service-booking>p:not(.eyebrow){max-width:500px;margin:25px auto;color:var(--muted);font-size:.97rem}.contact-page{display:grid;grid-template-columns:1.4fr 1fr;gap:95px;padding-block:90px 105px}.contact-main>.eyebrow{color:var(--muted);margin-bottom:25px}.contact-main h1{font-size:clamp(3rem,4.6vw,4.7rem)}.contact-main .lead{font-size:1rem;max-width:450px}.contact-email{display:inline-flex;align-items:center;gap:25px;font-size:clamp(1.2rem,2vw,1.8rem);letter-spacing:-.035em;text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:9px;margin-top:42px;max-width:100%;overflow-wrap:anywhere}.contact-help{font-size:.83rem;color:var(--muted);max-width:395px;margin-top:20px;line-height:1.8}.contact-aside{padding-top:8px}.contact-aside>.eyebrow{color:var(--muted);margin-bottom:23px}.social-list{border-top:1px solid var(--line)}.social-list>a{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-block:19px;text-decoration:none}.social-list strong{font-weight:500;font-size:1.15rem;letter-spacing:-.025em}.social-list a div>span{display:block;font-size:.72rem;color:var(--muted);margin-top:4px}.contact-blog{display:flex;flex-direction:column;background:var(--panel);text-decoration:none;padding:27px;margin-top:28px;border-radius:3px}.contact-blog>.eyebrow{color:var(--muted);margin-bottom:17px}.contact-blog strong{font-size:1.45rem;letter-spacing:-.04em;font-weight:500;line-height:1.3}.contact-blog>span:last-child{font-size:.77rem;margin-top:22px}.contact-blog:hover>span:last-child{text-decoration:underline}.booking-card{margin-top:40px;padding-top:30px;border-top:1px solid var(--line)}.booking-card h2{font-size:1.7rem}.booking-card p{font-size:.9rem;color:var(--muted);margin-block:15px}.error-page{min-height:60vh}@media(min-width:1500px){.hero{gap:65px}.hero h1{font-size:6rem}.hero-visual img{aspect-ratio:1.18}}@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.main-nav{gap:20px}.hero{gap:32px;padding-block:55px}.hero h1{font-size:5.9vw}.hero-copy>.eyebrow{font-size:.53rem;letter-spacing:.015em}.hero-actions{gap:17px}.hero-actions .button{font-size:.73rem}.hero-actions .text-link{font-size:.71rem}.hero-intro{font-size:.94rem}.hero-note{font-size:.64rem}.expertise-strip ul{gap:24px}.section{padding-block:85px}.about-section{gap:65px;padding-inline:20px}.contact-banner{padding:45px 36px;gap:30px}.contact-banner h2{font-size:2.5rem}.detail-heading{gap:40px}.reading-layout{gap:50px}.contact-page{gap:60px}.contact-main h1{font-size:4.5vw}}@media(max-width:900px){.site-header{min-height:95px}.main-nav{gap:15px;font-size:.74rem}.wordmark{font-size:1.8rem}.main-nav a.nav-contact{padding:8px 12px;gap:13px}.hero{grid-template-columns:1fr;gap:35px;max-width:720px}.hero-copy{max-width:620px}.hero-copy>.eyebrow{font-size:.65rem;letter-spacing:.06em}.hero h1{font-size:clamp(4.1rem,9vw,6rem)}.hero-intro{max-width:440px;font-size:1.05rem}.hero-actions .button{font-size:.86rem}.hero-actions .text-link{font-size:.83rem}.hero-note{font-size:.72rem}.hero-visual img{aspect-ratio:1.8;object-position:center 52%}.hero-visual figcaption .eyebrow{font-size:.6rem}.hero-visual figcaption strong{font-size:.9rem}.expertise-strip{flex-direction:column;align-items:flex-start;gap:13px}.expertise-strip ul{width:100%;justify-content:space-between}.section-heading{gap:40px}.section-heading>p{max-width:300px;font-size:.88rem}.service-row{grid-template-columns:25px 1fr 1fr 20px;gap:20px}.service-row h3{font-size:1.4rem}.service-row p{font-size:.83rem}.about-section{gap:45px;padding-inline:0}.contact-banner{align-items:flex-start;flex-direction:column;gap:25px}.site-footer{grid-template-columns:1fr 1fr;gap:30px}.site-footer .copyright{grid-column:1/-1;text-align:left;margin-top:5px;border-top:1px solid var(--line);padding-top:20px}.page-intro{padding-block:60px 42px}.page-intro h1{font-size:clamp(3rem,6vw,4.5rem)}.detail-heading{grid-template-columns:1fr;gap:30px}.project-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px}.detail-heading h1{font-size:3.8rem}.reading-layout{grid-template-columns:1fr;gap:30px;padding-block:40px}.project-links{max-width:450px}.service-detail{grid-template-columns:1fr;gap:26px}.service-title h2{max-width:none;font-size:2.5rem}.service-description{margin-left:47px}.contact-page{grid-template-columns:1fr;gap:55px;padding-block:65px}.contact-main h1{font-size:clamp(3.5rem,7vw,5rem)}.contact-main .lead{max-width:590px}.contact-aside{max-width:600px}.contact-email{font-size:1.8rem}.contact-help{max-width:500px}}@media(max-width:700px){body{font-size:16px}.wrap{width:calc(100% - 40px)}.site-header{flex-wrap:wrap;gap:19px;padding-top:23px;padding-bottom:16px;min-height:auto}.wordmark{font-size:1.8rem}.site-header>.wordmark{width:100%}.main-nav{width:100%;gap:0;justify-content:space-between;font-size:.69rem}.main-nav a.nav-contact{padding:6px 10px;gap:9px}.main-nav>a{padding-block:7px}.hero{padding-block:37px 33px;gap:29px}.hero-copy>.eyebrow{font-size:.52rem;letter-spacing:.045em;margin-bottom:24px}.hero h1{font-size:clamp(3.1rem,10.8vw,4.6rem);line-height:1.04;letter-spacing:-.06em;margin-left:-2px}.hero h1 em{font-size:.94em}.hero-intro{font-size:.96rem;margin-top:23px;max-width:430px}.hero-actions{gap:17px;margin-top:25px}.hero-actions .button{font-size:.76rem;gap:14px}.hero-actions .text-link{font-size:.74rem;gap:9px}.hero-note{font-size:.65rem;margin-top:18px}.hero-visual img{aspect-ratio:1.44}.hero-visual figcaption{padding-top:13px}.hero-visual figcaption .eyebrow{font-size:.5rem}.hero-visual figcaption strong{font-size:.79rem}.expertise-strip{padding-block:19px;gap:12px}.expertise-strip>span{font-size:.52rem}.expertise-strip ul{font-size:.75rem;gap:13px;flex-wrap:wrap;justify-content:flex-start}.section{padding-block:64px}.section-heading{display:block;margin-bottom:30px}.section-heading .eyebrow{font-size:.6rem;margin-bottom:16px}.section-heading>p{max-width:480px;font-size:.94rem;margin-top:23px;padding:0}h2{font-size:2.65rem}.project-grid{grid-template-columns:1fr;gap:35px}.project-image img{aspect-ratio:1.5}.project-meta{margin-block:14px 8px;font-size:.55rem}.project-card h3{font-size:1.65rem}.project-card>p{font-size:.89rem}.section-links{justify-content:flex-start;gap:25px;margin-top:30px}.section-links .text-link{font-size:.75rem;gap:8px}.service-row{grid-template-columns:24px 1fr 20px;gap:11px 14px;padding-block:25px}.service-row h3{font-size:1.5rem}.service-row p{grid-column:2;grid-row:2;max-width:none;font-size:.88rem}.service-row .row-arrow{grid-column:3;grid-row:1}.service-number{font-size:.6rem}.about-section{grid-template-columns:1fr;gap:30px}.portrait{max-width:400px;width:85%;margin-inline:auto}.portrait img{aspect-ratio:1.1;object-position:50% 38%}.about-copy{max-width:520px}.about-copy h2{font-size:2.8rem}.about-copy .eyebrow{font-size:.6rem}.about-copy>p:not(.eyebrow){font-size:.94rem}.contact-banner{padding:34px 25px;gap:24px}.contact-banner h2{font-size:2.6rem}.contact-banner .eyebrow{font-size:.57rem}.contact-banner p:not(.eyebrow){font-size:.89rem}.contact-banner .button{font-size:.76rem;gap:20px}.site-footer{padding-block:45px 24px;grid-template-columns:1fr;gap:25px}.site-footer p{margin-top:12px}.footer-links{font-size:.79rem}.site-footer .copyright{font-size:.62rem;margin:0}.page-intro{padding-block:40px 35px}.page-intro .eyebrow{font-size:.59rem;margin-bottom:20px}.page-intro h1{font-size:clamp(2.65rem,9.1vw,4rem)}.lead{font-size:.98rem;margin-top:23px}.catalog{padding-bottom:60px}.catalog-toolbar{gap:10px;padding-block:15px 25px;flex-wrap:wrap}.filters button{padding:8px 13px;font-size:.75rem}.catalog-count{font-size:.63rem}.empty-state{padding:40px 23px}.empty-state h2{font-size:1.9rem}.empty-state p:not(.eyebrow){font-size:.9rem}.detail-intro{padding-block:30px}.back-link{font-size:.7rem;margin-bottom:28px}.detail-heading h1{font-size:clamp(2.7rem,9vw,4rem)}.detail-heading .eyebrow{font-size:.57rem}.detail-heading .lead{font-size:.94rem}.project-facts{display:block}.project-facts>div{font-size:.77rem}.detail-cover{width:100%}.detail-cover img{border-radius:0}.reading-layout{padding-block:35px}.prose{font-size:1rem;line-height:1.85}.prose h2{font-size:1.9rem}.project-gallery{grid-template-columns:1fr;gap:25px;padding-bottom:55px}.project-gallery figcaption{font-size:.72rem}.service-details{padding-bottom:15px}.service-detail{padding-block:33px 40px;gap:23px}.service-title{gap:17px}.service-title h2{font-size:2rem}.service-description{margin-left:0;font-size:.94rem}.service-description .service-audience{font-size:1.03rem}.service-booking h2{font-size:2.6rem}.service-booking>p:not(.eyebrow){font-size:.94rem}.contact-page{padding-block:42px 60px;gap:45px}.contact-main h1{font-size:clamp(2.9rem,9.3vw,4rem)}.contact-main>.eyebrow{font-size:.6rem;margin-bottom:20px}.contact-main .lead{font-size:.96rem}.contact-email{font-size:clamp(1.25rem,5.1vw,1.8rem);gap:15px;margin-top:29px}.contact-help{font-size:.84rem}.social-list strong{font-size:1.12rem}.social-list a div>span{font-size:.73rem}.contact-blog{padding:25px}.error-page{min-height:55vh}}@media(max-width:360px){.wrap{width:calc(100% - 32px)}.main-nav{font-size:.63rem}.main-nav a.nav-contact{padding:5px 7px;gap:6px}.hero-copy>.eyebrow{font-size:.46rem}.hero h1{font-size:10.5vw}.hero-actions{align-items:flex-start;flex-direction:column}.hero-visual figcaption .eyebrow{font-size:.44rem}.section-links{align-items:flex-start;flex-direction:column;gap:18px}.filters button{padding:8px 10px}.contact-banner{padding-inline:21px}}.identity{display:inline-flex;flex-direction:column;gap:7px;text-decoration:none;flex-shrink:0}.identity-name{font-size:1.45rem;line-height:1.1;letter-spacing:-.055em;font-weight:600}.identity-dot{color:#678943}.identity-subtitle{font-family:var(--mono);font-size:.6rem;color:var(--muted);letter-spacing:.015em;line-height:1.4}.identity-subtitle>span{padding-inline:5px;color:#899082}.personal-hero h1{font-size:clamp(2.65rem,5.15vw,5.1rem);letter-spacing:-.055em;line-height:1.08}.personal-hero h1 em{font-size:1.15em}.personal-hero .hero-visual img{aspect-ratio:1.45;object-fit:contain;background:#e1e7de}.personal-hero .hero-intro{max-width:440px}.home-projects{padding-bottom:75px}.home-about{border-top:1px solid var(--line)}.unified-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:43px 24px}.unified-grid .project-card h3{font-size:1.5rem}.unified-grid .project-card>p{font-size:.82rem}.project-meta>span.project-year{border:0;padding:0}.project-meta span:last-child{border:0;padding:0;font-size:inherit;white-space:normal}.tag-list{padding:0;list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:15px}.tag{display:inline-block;padding:3px 8px;border:1px solid var(--line);border-radius:3px;font-size:.63rem;line-height:1.5;color:#566151;letter-spacing:.015em}.tag-origin{background:#e8eddd;border-color:#e0e7d5;color:var(--green-dark)}.tag-tech{background:var(--panel);border-color:var(--panel);font-family:var(--mono);font-size:.68rem;padding:6px 9px}.filter-groups{display:flex;flex-direction:column;gap:10px}.filter-row{display:flex;gap:15px;align-items:center}.filter-label{min-width:40px;font-family:var(--mono);font-size:.59rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.catalog-toolbar{align-items:flex-end;padding-block:20px 28px}.filters{gap:3px}.filters button{font-size:.76rem;padding:8px 15px}.empty-actions{display:flex;justify-content:center;align-items:center;gap:25px;flex-wrap:wrap;margin-top:25px}.empty-actions .text-link{margin:0}.empty-actions .button{cursor:pointer}.empty-state h3{font-size:2rem;margin-bottom:18px}.project-date{font-family:var(--mono);font-size:.66rem;color:var(--muted);margin-bottom:20px;display:flex;gap:18px;flex-wrap:wrap;line-height:1.6}.project-date>span{border-left:1px solid var(--line);padding-left:18px}.detail-heading>.project-facts{margin-top:33px}.project-stack{margin-top:25px}.project-stack>.eyebrow{font-size:.58rem;color:var(--muted);margin:0}.project-stack .tag-list{margin-top:9px}.detail-heading h1+.tag-list{margin-top:18px}.video-section{padding-bottom:80px}.video-section>.eyebrow{color:var(--muted);margin-bottom:12px}.video-section>h2{font-size:2.6rem;margin-bottom:30px}.video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.video-card:only-child{grid-column:1/-1;max-width:960px;width:100%;margin-inline:auto}.video-card video,.video-embed{display:block;width:100%;aspect-ratio:16/9;height:auto;background:#111;border:0;border-radius:3px}.video-card video{object-fit:contain}.video-card figcaption{font-size:.78rem;color:var(--muted);margin-top:12px;line-height:1.7}.video-poster{position:relative;display:block;background:#111;aspect-ratio:16/9;overflow:hidden;border-radius:3px}.video-poster img{width:100%;height:100%;object-fit:contain;opacity:.85}.video-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:inline-flex;align-items:center;gap:14px;padding:13px 21px;color:var(--ink);background:var(--paper);border:1px solid #d8ddd2;border-radius:3px;font-size:.84rem;white-space:nowrap}.video-poster:hover .video-play{background:var(--lime)}.about-intro{display:grid;grid-template-columns:1.4fr .75fr;gap:90px;align-items:center;padding-block:75px 65px}.about-intro .eyebrow{color:var(--muted);margin-bottom:25px}.about-intro h1{font-size:clamp(3rem,5vw,5rem)}.about-intro .lead{max-width:600px;font-size:1rem}.about-portrait img{width:100%;aspect-ratio:.9;object-fit:cover;border-radius:3px;filter:saturate(.8)}.about-portrait figcaption{font-family:var(--mono);font-size:.62rem;color:var(--muted);margin-top:12px}.expertise-tags{margin-top:25px;max-width:500px}.expertise-tags .tag{font-size:.7rem;padding:5px 9px}.about-story{display:grid;grid-template-columns:minmax(0,740px)1fr;gap:100px;padding-block:25px 20px}.about-side{align-self:start;border-top:1px solid var(--line);padding-top:23px}.about-side>.eyebrow{margin-bottom:15px;color:var(--muted)}.about-side>a{display:flex;justify-content:space-between;gap:15px;padding-block:12px;border-bottom:1px solid var(--line);font-size:.8rem;text-decoration:none}.about-side>a:hover{text-decoration:underline}.career-timeline{list-style:none;padding:0;border-top:1px solid var(--line)}.career-timeline>li{display:grid;grid-template-columns:245px 1fr;gap:45px;border-bottom:1px solid var(--line);padding-block:27px}.career-period{font-family:var(--mono);color:var(--muted);font-size:.67rem;line-height:1.8}.career-timeline h3{font-size:1.45rem;line-height:1.3;margin-bottom:12px}.career-timeline div>p{color:var(--muted);font-size:.91rem;max-width:680px}.career-stages{list-style:none;margin-top:22px;padding-left:20px;border-left:1px solid var(--line)}.career-stages>li{display:grid;grid-template-columns:100px minmax(0,1fr);gap:18px;padding-block:12px}.career-stages>li:first-child{padding-top:0}.career-stages>li:last-child{padding-bottom:0}.career-stage-period{font-family:var(--mono);font-size:.62rem;line-height:1.7;color:var(--muted);padding-top:2px}.career-stages h4{font-size:1rem;line-height:1.4;font-weight:600;margin:0 0 5px}.career-stages .career-stage-description{font-size:.88rem;line-height:1.75}@media(max-width:700px){.career-stages{margin-top:20px;padding-left:16px}.career-stages>li{grid-template-columns:1fr;gap:5px;padding-block:13px}.career-stage-period{padding-top:0}.career-stages .career-stage-description{font-size:.9rem}}.education-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:70px;margin-top:55px}.education-grid>.eyebrow{color:var(--muted)}.education-grid article{margin-top:25px}.education-grid h3{font-size:1.2rem;line-height:1.4;margin-block:8px}.education-grid article>p{font-size:.85rem;color:var(--muted)}.environment-section{background:var(--panel)}.environment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:37px 65px}.environment-grid article{border-top:1px solid #cdd2c5;padding-top:24px}.environment-grid h3{font-size:1.55rem;line-height:1.3;margin-bottom:14px}.environment-grid p{font-size:.93rem;color:var(--muted)}.passions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 65px}.passions-grid article{padding-top:25px;border-top:1px solid var(--line)}.passions-grid h3{font-size:1.6rem;line-height:1.3;margin-bottom:16px}.passions-grid p{font-size:.94rem;line-height:1.8;color:var(--muted)}.passions-grid .text-link{margin-top:20px;font-size:.8rem}.robot-videos{margin-top:65px;border-top:1px solid var(--line);padding-top:35px}.robot-videos>.eyebrow{color:var(--muted);margin-bottom:17px}.robot-videos>h3{font-size:1.8rem;margin-bottom:28px;line-height:1.25}.workshop-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:24px;margin-top:55px}.workshop-gallery img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;background:var(--panel);border-radius:3px}.workshop-gallery figcaption{font-size:.74rem;color:var(--muted);line-height:1.7;margin-top:12px}@media(max-width:700px){.workshop-gallery{grid-template-columns:1fr;gap:28px;margin-top:38px}}@media(max-width:1100px){.unified-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.identity-name{font-size:1.3rem}.identity-subtitle{font-size:.53rem}.personal-hero h1{font-size:4.8vw}.about-intro{gap:45px}.about-story{gap:55px}.career-timeline>li{grid-template-columns:200px 1fr;gap:35px}}@media(max-width:900px){.personal-hero h1{font-size:clamp(3rem,8.3vw,5.8rem)}.personal-hero .hero-visual img{aspect-ratio:1.8}.about-intro{grid-template-columns:1.25fr .75fr;gap:35px}.about-intro h1{font-size:3rem}.about-intro .eyebrow{font-size:.55rem}.about-story{grid-template-columns:1fr;gap:30px}.about-side{max-width:420px}.career-timeline>li{grid-template-columns:160px 1fr;gap:30px}.education-grid{gap:35px}.passions-grid,.environment-grid{gap:30px}}@media(max-width:700px){.site-header>.identity{width:100%}.identity-name{font-size:1.45rem}.identity-subtitle{font-size:.58rem}.site-header{gap:18px;padding-top:21px}.main-nav{font-size:.71rem}.personal-hero h1{font-size:clamp(2.65rem,10.2vw,4.4rem);line-height:1.1}.personal-hero .hero-visual img{aspect-ratio:1.6}.personal-hero .hero-copy>.eyebrow{font-size:.58rem}.home-projects{padding-bottom:55px}.unified-grid{grid-template-columns:1fr;gap:36px}.unified-grid .project-card h3{font-size:1.65rem}.unified-grid .project-card>p{font-size:.9rem}.unified-grid .project-image img{aspect-ratio:1.6}.tag{font-size:.64rem}.filter-row{gap:10px}.filter-label{font-size:.55rem;min-width:37px}.filters button{font-size:.73rem;padding:8px 12px}.catalog-toolbar{align-items:flex-start;gap:18px}.catalog-count{padding-top:4px}.filter-groups{gap:7px}.tag-tech{font-size:.64rem}.detail-heading>.project-facts{margin:0}.project-date{font-size:.6rem;gap:12px;margin-bottom:16px}.project-date>span{padding-left:12px}.video-grid{grid-template-columns:1fr;gap:25px}.video-section{padding-bottom:55px}.video-section>h2{font-size:2.1rem}.video-play{font-size:.75rem;padding:10px 16px}.about-intro{grid-template-columns:1fr;gap:30px;padding-block:40px}.about-intro h1{font-size:clamp(2.8rem,10vw,4.2rem)}.about-intro .eyebrow{font-size:.54rem}.about-intro .lead{font-size:.95rem}.about-portrait{width:82%;max-width:380px;margin-inline:auto}.about-portrait img{aspect-ratio:1.1;object-position:50% 38%}.about-story{padding-top:5px}.career-timeline>li{grid-template-columns:1fr;gap:10px;padding-block:24px}.career-timeline h3{font-size:1.35rem}.career-timeline div>p{font-size:.9rem}.education-grid{grid-template-columns:1fr;gap:35px;margin-top:40px}.environment-grid,.passions-grid{grid-template-columns:1fr;gap:30px}.passions-grid h3,.environment-grid h3{font-size:1.6rem}.robot-videos{margin-top:40px;padding-top:30px}.robot-videos>h3{font-size:1.55rem}.empty-actions{align-items:flex-start;flex-direction:column}.empty-state h3{font-size:1.8rem}}@media(max-width:360px){.main-nav{font-size:.66rem}.filters button{padding:8px 9px}.personal-hero h1{font-size:10.3vw}.identity-name{font-size:1.35rem}.catalog-count{font-size:.59rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}.language-switcher{display:flex;align-items:center;flex-shrink:0;gap:2px;padding:3px;border:1px solid var(--line);border-radius:3px;font-family:var(--mono);font-size:.65rem}.language-switcher a{padding:7px 9px;line-height:1.2;text-decoration:none;border-radius:2px}.language-switcher a:hover{background:var(--panel)}.language-switcher a[aria-current]{background:var(--green);color:var(--white)}@media(max-width:900px){.site-header{flex-wrap:wrap;gap:18px;min-height:auto;padding-top:24px;padding-bottom:18px}.site-header>.identity{width:auto;max-width:calc(100% - 90px)}.main-nav{order:3;flex-basis:100%;width:100%;justify-content:space-between;margin-left:0}.language-switcher{margin-left:auto}}