@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--paper:#f8f7f2;--white:#fff;--ink:#282d22;--muted:#73776b;--olive:#586b38;--dark:#35472d;--line:#dfE2d7;--lime:#dce9b9;--serif:'Libre Caslon Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.65}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}img{display:block;max-width:100%;object-fit:cover}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}button{color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}.container{width:min(1240px,calc(100% - 112px));margin:auto}.skip-link{position:absolute;left:20px;top:-100px;padding:12px;background:var(--dark);color:white;z-index:100}.skip-link:focus{top:10px}:focus-visible{outline:3px solid #8f9c58;outline-offset:5px}.site-header{height:100px;position:relative;z-index:20;border-bottom:1px solid var(--line);background:var(--paper)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{display:flex;gap:10px;align-items:center;white-space:nowrap}.brand svg{width:31px;height:31px;stroke:var(--olive);stroke-width:1.25}.brand span{font-family:var(--serif);font-size:34px;letter-spacing:-1.2px}.brand em{font-style:normal;color:var(--olive)}.desktop-nav{display:flex;align-items:center;gap:34px;margin-left:auto}.desktop-nav a,.nav-trigger{font-size:13px;font-weight:500}.desktop-nav a:hover,.nav-trigger:hover{color:var(--olive)}.nav-trigger{display:flex;gap:7px;align-items:center;border:0;background:none;padding:10px 0}.nav-trigger svg{width:13px;height:13px}.nav-dropdown{position:relative}.topic-menu{position:absolute;top:42px;left:-22px;width:230px;background:white;border:1px solid var(--line);border-radius:8px;padding:8px;box-shadow:0 15px 40px #28312213}.topic-menu a{display:block;padding:10px 14px;border-radius:4px}.topic-menu a:hover{background:var(--paper)}[hidden]{display:none!important}.header-actions{display:flex;align-items:center;gap:23px}.icon-button{display:grid;place-items:center;background:transparent;border:0;padding:9px}.header-contact{font-size:12px;border:1px solid var(--line);border-radius:5px;padding:11px 17px;font-weight:500}.header-contact:hover{background:var(--dark);color:white;border-color:var(--dark)}.menu-button{display:none}.hero{display:grid;grid-template-columns:1fr 1.03fr;gap:52px;align-items:center;padding-top:64px;padding-bottom:68px}.eyebrow{display:flex;align-items:center;gap:10px;font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--olive)}.eyebrow:before{content:'';display:block;width:25px;height:1px;background:currentColor}.hero h1{font-family:var(--serif);font-size:clamp(54px,5.6vw,82px);line-height:1.04;letter-spacing:-2.5px;margin:23px 0}.hero h1 em{color:var(--olive);font-weight:400}.hero-copy>p{font-size:15px;color:var(--muted);max-width:390px;line-height:1.85}.hero-actions{display:flex;gap:23px;align-items:center;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;background:var(--olive);border:1px solid var(--olive);color:white;border-radius:5px;padding:14px 21px;font-size:12px;font-weight:600;transition:background .2s,transform .2s}.button:hover{background:var(--dark);transform:translateY(-2px)}.button svg{width:16px;height:16px}.text-link{font-size:12px;font-weight:500;display:inline-flex;align-items:center;gap:9px}.text-link svg{width:14px;height:14px}.text-link:hover{color:var(--olive)}.hero-note{display:flex;align-items:center;gap:9px;margin-top:28px;font-size:10px;color:var(--muted)}.hero-note svg{width:15px;height:15px;stroke:var(--olive)}.hero-visual{position:relative;margin-bottom:15px}.hero-visual>img{width:100%;height:488px;border-radius:8px 8px 88px 8px}.photo-tag{position:absolute;top:19px;left:19px;border:1px solid #ffffff50;background:#ffffffdf;backdrop-filter:blur(5px);padding:7px 12px;border-radius:3px;font-size:9px;font-weight:700;letter-spacing:1px}.photo-tag span{display:inline-block;width:5px;height:5px;background:var(--olive);border-radius:50%;margin-right:6px}.photo-caption{position:absolute;bottom:-23px;left:-26px;background:var(--paper);padding:22px 26px;display:flex;gap:17px;align-items:center;border:1px solid var(--line);border-radius:6px;box-shadow:0 7px 20px #2b331008}.caption-icon{width:42px;height:42px;background:#edf0e4;border-radius:50%;display:grid;place-items:center;color:var(--olive)}.photo-caption strong{font-family:var(--serif);font-weight:400;font-size:24px}.photo-caption p{font-size:10px;color:var(--muted)}.hero-doodle{position:absolute;right:-17px;bottom:18px;color:var(--olive);width:43px;height:43px}.topic-section{padding:34px 0 37px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.section-mini{display:flex;justify-content:space-between;align-items:center;margin-bottom:23px}.section-mini h2{font-size:10px;font-weight:600;letter-spacing:1.7px;text-transform:uppercase}.section-mini span{font-family:var(--serif);font-size:17px;color:var(--muted);font-style:italic}.topic-list{display:grid;grid-template-columns:repeat(6,1fr)}.topic-choice{border:0;border-right:1px solid var(--line);background:none;display:flex;gap:13px;align-items:center;justify-content:center;padding:8px 12px;font-size:12px;font-weight:500;transition:color .2s}.topic-choice:first-child{justify-content:flex-start;padding-left:0}.topic-choice:last-child{border-right:0}.topic-choice svg{color:var(--olive);width:27px;height:27px}.topic-choice:hover,.topic-choice.active{color:var(--olive)}.topic-choice.active span{text-decoration:underline;text-underline-offset:5px}.projects-section{padding:63px 0 72px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:27px}.section-heading h2{font-family:var(--serif);font-size:43px;line-height:1.15;letter-spacing:-.7px;margin-bottom:9px}.section-heading p{font-size:13px;color:var(--muted)}.section-heading .text-link{padding-bottom:6px;white-space:nowrap}.project-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:23px}.project-card{min-width:0}.project-image{position:relative;display:block;width:100%;border:0;padding:0;background:#e7e8de;border-radius:7px;overflow:hidden;text-align:left}.project-image img{width:100%;height:216px;transition:transform .35s}.project-image:hover img{transform:scale(1.045)}.project-badge{position:absolute;top:13px;left:13px;background:var(--paper);font-size:8px;font-weight:600;padding:4px 9px;letter-spacing:.8px;text-transform:uppercase;border-radius:3px}.project-card .category{font-size:9px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:var(--olive);margin-top:17px}.project-card h3{font-family:var(--serif);font-size:26px;line-height:1.15;margin:7px 0 10px}.card-title{border:0;background:none;padding:0;font:inherit;text-align:left}.card-title:hover{color:var(--olive)}.project-card>p{font-size:11px;line-height:1.7;color:var(--muted)}.project-meta{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;margin-top:15px;padding-top:11px;color:var(--muted);font-size:9px}.project-meta span{display:flex;gap:6px;align-items:center}.project-meta svg{width:12px;height:12px}.project-meta .arrow{color:var(--olive);border:0;background:none;padding:2px}.empty-state{padding:40px 0;color:var(--muted)}.active-filter{font-size:11px;color:var(--olive);margin-bottom:18px}.reset-button{border:0;background:none;text-decoration:underline;font-size:11px;margin-left:10px}.about-band{background:var(--dark);color:var(--paper);position:relative;overflow:hidden}.about-inner{padding:55px 0;display:grid;grid-template-columns:1.1fr 1fr;gap:85px;align-items:center}.about-inner .eyebrow{color:#bfcca5}.about-inner h2{font-family:var(--serif);font-size:49px;line-height:1.1;margin-top:18px;letter-spacing:-.8px}.about-inner h2 em{color:#d4e2b3}.about-right p{font-size:13px;line-height:1.95;color:#d2d9ca;max-width:460px}.about-right .text-link{color:#e4edce;margin-top:20px}.maker-values{display:flex;gap:28px;padding-top:22px;margin-top:23px;border-top:1px solid #71816b;font-size:9px;color:#d2d9ca}.maker-values span{display:flex;gap:7px;align-items:center}.maker-values svg{width:14px;height:14px}.bottom-cta{padding:49px 0;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:30px}.bottom-cta h2{font-family:var(--serif);font-size:33px}.bottom-cta p{font-size:12px;color:var(--muted);margin-top:5px}.site-footer{padding-top:39px;padding-bottom:24px}.footer-top{display:flex;justify-content:space-between;gap:50px;margin-bottom:30px}.footer-brand .brand span{font-size:27px}.footer-brand .brand svg{width:23px;height:23px}.footer-brand p{font-size:10px;color:var(--muted);margin-top:8px}.footer-links{display:flex;gap:30px;align-items:center;font-size:11px}.footer-links a:hover{color:var(--olive)}.footer-bottom{display:flex;align-items:center;justify-content:space-between;padding-top:21px;border-top:1px solid var(--line);font-size:9px;color:var(--muted)}.footer-bottom .made{display:flex;align-items:center;gap:6px}.footer-bottom svg{width:12px;height:12px}.mobile-nav{position:absolute;top:80px;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);padding:15px 25px}.mobile-nav a{display:block;padding:12px;font-size:14px}.page-intro{padding:58px 0 38px}.breadcrumb{display:flex;gap:10px;color:var(--muted);font-size:11px;margin-bottom:30px}.page-intro h1{font-family:var(--serif);font-size:64px;line-height:1.1;letter-spacing:-1.4px;margin:16px 0}.page-intro p{color:var(--muted);font-size:14px;max-width:600px}.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;padding-bottom:74px}.contact-info h2{font-family:var(--serif);font-size:32px;margin-bottom:10px}.contact-info>p{font-size:13px;color:var(--muted)}.contact-box{padding:26px 0;border-bottom:1px solid var(--line)}.contact-box h3{font-size:10px;text-transform:uppercase;letter-spacing:1.2px;font-weight:600;margin-bottom:10px;color:var(--olive)}.contact-box a{font-size:18px;border-bottom:1px solid #a9b095;overflow-wrap:anywhere}.contact-box p{font-size:12px;color:var(--muted);margin-top:8px}.contact-tip{padding:22px;background:#edf0e4;border-radius:6px;margin-top:26px;font-size:12px;color:#67745a}.contact-form{padding:32px;background:white;border:1px solid var(--line);border-radius:8px}.contact-form h2{font-family:var(--serif);font-size:30px;margin-bottom:19px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{margin-bottom:19px}.field label{display:block;font-size:11px;font-weight:600;margin-bottom:7px}.field input,.field select,.field textarea{background:var(--paper);border:1px solid var(--line);border-radius:4px;padding:11px 12px;width:100%;color:var(--ink);font-size:12px}.field textarea{resize:vertical;min-height:130px}.consent{display:flex;align-items:flex-start;gap:10px;font-size:10px;color:var(--muted);margin-bottom:20px}.consent input{margin-top:4px;accent-color:var(--olive)}.consent a{text-decoration:underline}.form-note{font-size:10px;color:var(--muted);margin-top:10px}.form-status{font-size:12px;padding:14px;background:#edf0e4;border-radius:4px;margin-top:16px}.form-status.error{background:#fcf1e9;color:#8b422c}.form-status a{text-decoration:underline}.honeypot{position:absolute;left:-9999px}.legal-layout{display:grid;grid-template-columns:220px minmax(0,720px);gap:80px;padding-bottom:70px}.legal-nav{position:sticky;top:30px;align-self:start;border-top:1px solid var(--line);padding-top:18px}.legal-nav a{display:block;font-size:11px;color:var(--muted);padding:8px 0}.legal-nav a:hover{color:var(--olive)}.legal-copy{font-size:13px;color:#616757}.legal-copy section{margin-bottom:30px;scroll-margin-top:30px}.legal-copy h2{font-family:var(--serif);font-size:30px;color:var(--ink);margin-bottom:10px}.legal-copy p+p{margin-top:12px}.legal-copy ul{padding-left:20px}.legal-copy a{text-decoration:underline;text-underline-offset:3px;color:var(--olive)}.legal-updated{font-size:10px;letter-spacing:.4px;margin-top:17px}.legal-note{padding:17px 21px;background:#edf0e4;border-radius:5px;margin-bottom:30px;color:#5f6b52}.modal{border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink);padding:0;width:min(780px,calc(100% - 40px));max-height:90vh;overflow:auto}.modal::backdrop{background:#1b271ac4;backdrop-filter:blur(4px)}.modal-close{position:absolute;right:15px;top:15px;background:var(--paper);border-radius:50%;z-index:2}.modal-img{width:100%;height:265px}.modal-body{padding:30px 36px}.modal-body h2{font-family:var(--serif);font-size:40px;line-height:1.1;margin:10px 0 16px}.modal-body h3{font-family:var(--serif);font-size:25px;margin:25px 0 10px}.modal-body p,.modal-body li{font-size:13px;color:#646a5c}.modal-body li{margin-bottom:10px}.modal-body .safety{padding:16px;background:#ecefe2;border-radius:5px;margin-top:23px;font-size:11px}.search-dialog{width:min(600px,calc(100% - 40px));padding:32px}.search-dialog h2{font-family:var(--serif);font-size:32px;margin-bottom:18px}.search-dialog form{display:flex;gap:10px}.search-dialog input{min-width:0;flex:1;padding:12px;border:1px solid var(--line);border-radius:4px;background:white}.search-dialog p{font-size:11px;color:var(--muted);margin-top:16px}.button:disabled{cursor:wait;opacity:.65;transform:none}body.modal-open{overflow:hidden}.no-js{background:#edf0e4;padding:12px;font-size:12px;text-align:center}
@media(min-width:1500px){.hero h1{font-size:84px}.hero{gap:65px}}
@media(max-width:1100px){.container{width:calc(100% - 70px)}.desktop-nav{gap:22px}.hero{gap:35px}.hero h1{font-size:64px}.hero-visual>img{height:445px}.topic-choice{font-size:10px;gap:9px}.project-grid{gap:17px}.project-image img{height:180px}.project-card h3{font-size:24px}.contact-layout{gap:40px}.footer-links{gap:20px}}
@media(max-width:800px){.container{width:calc(100% - 44px)}.site-header{height:80px}.desktop-nav,.header-contact{display:none}.menu-button{display:grid}.header-actions{gap:7px}.brand span{font-size:29px}.hero{gap:28px;padding-top:42px;padding-bottom:52px}.hero h1{font-size:52px;letter-spacing:-1.8px}.hero-copy>p{font-size:13px}.hero-visual>img{height:380px}.hero-actions{flex-wrap:wrap;gap:16px}.photo-caption{padding:15px;left:-16px}.photo-caption strong{font-size:20px}.caption-icon{width:32px;height:32px}.hero-doodle{display:none}.topic-list{grid-template-columns:repeat(3,1fr);row-gap:21px}.topic-choice:nth-child(3){border-right:0}.topic-choice:nth-child(4){justify-content:flex-start;padding-left:0}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 22px}.project-image img{height:220px}.section-heading h2{font-size:38px}.about-inner{gap:35px}.about-inner h2{font-size:40px}.maker-values{gap:16px;flex-wrap:wrap}.footer-top{gap:25px}.footer-links{flex-wrap:wrap;justify-content:flex-end;gap:12px 20px}.page-intro h1{font-size:53px}.contact-layout{grid-template-columns:1fr;gap:35px}.contact-info{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-info>.intro{grid-column:1/-1}.contact-tip{margin-top:0}.legal-layout{grid-template-columns:1fr;gap:25px}.legal-nav{position:static;display:flex;gap:15px;flex-wrap:wrap}.legal-copy{max-width:720px}.bottom-cta h2{font-size:29px}}
@media(max-width:560px){.container{width:calc(100% - 40px)}.hero{grid-template-columns:1fr;padding-top:36px;gap:36px}.hero h1{font-size:61px;line-height:1;letter-spacing:-1.8px;margin:20px 0}.hero-copy>p{font-size:14px;max-width:340px}.hero-visual>img{height:350px;border-bottom-right-radius:65px}.photo-caption{left:14px;bottom:-18px;padding:16px 19px}.photo-caption p{font-size:9px}.hero-note{margin-top:22px}.hero-actions{margin-top:23px}.section-mini span{font-size:14px}.topic-choice{flex-direction:column;justify-content:center!important;padding:4px!important;font-size:11px;gap:9px}.topic-choice svg{width:25px;height:25px}.topic-section{padding:28px 0}.section-mini{margin-bottom:25px}.section-heading{align-items:flex-start;flex-wrap:wrap;gap:16px}.section-heading h2{font-size:37px}.projects-section{padding:44px 0}.project-grid{grid-template-columns:1fr;gap:29px}.project-image img{height:260px}.project-card h3{font-size:30px}.project-card>p{font-size:12px}.project-meta{font-size:10px}.about-inner{grid-template-columns:1fr;padding:39px 0;gap:25px}.about-inner h2{font-size:45px}.about-right p{font-size:13px}.bottom-cta{flex-direction:column;align-items:flex-start;padding:35px 0;gap:19px}.footer-top{flex-direction:column;gap:23px}.footer-links{justify-content:flex-start;font-size:11px;gap:17px}.footer-bottom{align-items:flex-start;flex-direction:column;gap:10px;font-size:9px}.page-intro{padding-top:35px}.page-intro h1{font-size:49px}.contact-info{display:block}.contact-tip{margin-top:22px}.contact-form{padding:23px}.form-row{grid-template-columns:1fr;gap:0}.modal-body{padding:25px}.modal-body h2{font-size:34px}.modal-img{height:220px}.search-dialog{padding:25px}.search-dialog form{flex-direction:column}.header-actions svg{width:20px;height:20px}.legal-nav{gap:4px 18px}.legal-copy h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
