@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#193d40;--paper:#f8f7f0;--mint:#c4e9cf;--line:#d7dfd7;--muted:#5a6c68;--lime:#e4e890}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.7 'DM Sans',sans-serif}a{color:inherit}img{display:block;max-width:100%}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #a76127;outline-offset:5px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:Manrope,sans-serif}h1,h2{font-weight:500;letter-spacing:-.055em;line-height:1.09}h2{font-size:clamp(36px,4vw,58px)}h2 em{font-family:Georgia,serif;font-weight:400}p{color:var(--muted)}.wrap{width:min(1240px,calc(100% - 96px));margin:auto}.dark-top{background:var(--ink);color:var(--paper)}.header{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:26px 0;border-bottom:1px solid #ffffff26}.brand{display:flex;align-items:start;gap:12px;text-decoration:none;font-size:19px;line-height:1.05;letter-spacing:-.6px}.brand-icon{border:1px solid currentColor;width:37px;height:37px;display:grid;place-items:center;font-size:28px;line-height:1;margin-top:3px;border-radius:50%}.brand b{font-weight:700}.brand small{display:block;font-size:7px;letter-spacing:1.8px;margin-top:10px}.header nav{display:flex;gap:27px;align-items:center;font-size:12px}.header nav a{text-decoration:none}.header nav a:hover{color:var(--mint)}.nav-cta{padding:12px 17px;border:1px solid #ffffff50;border-radius:4px}.nav-cta span{margin-left:20px}.lang{font-size:10px;border-bottom:1px solid currentColor;padding-bottom:2px}.hero{display:grid;grid-template-columns:1fr 1.08fr;gap:65px;align-items:center;padding-top:65px;padding-bottom:65px}.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:600;margin-bottom:23px;color:var(--ink)}.eyebrow.light{color:var(--mint)}.status-dot{display:inline-block;width:7px;height:7px;margin-right:10px;background:var(--mint);border-radius:50%}h1{font-size:clamp(57px,5.9vw,83px);line-height:1.02}h1 em{font-family:Georgia,serif;font-weight:400;color:var(--mint);letter-spacing:-.05em}.hero-intro{font-size:16px;color:#d2dfd7;line-height:1.85;margin:28px 0;max-width:440px}.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:25px;padding:16px 22px;border:0;border-radius:3px;text-decoration:none;font-size:12px;font-weight:700;cursor:pointer;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button span{font-size:21px;line-height:1}.mint{background:var(--mint);color:var(--ink)}.dark{background:var(--ink);color:var(--paper)}.quiet-link{font-size:12px;text-underline-offset:6px}.hero-location{font-size:10px;line-height:1.8;color:#acbfb5;margin-top:30px}.hero-visual{padding:15px;background:var(--paper);color:var(--ink);transform:rotate(1.5deg);position:relative}.image-topline{display:flex;justify-content:space-between;gap:10px;font-size:8px;letter-spacing:1px;padding:2px 0 14px}.hero-visual img{width:100%;height:400px;object-fit:contain;background:#e8e7df}.image-caption{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 3px 5px;font-size:12px;line-height:1.5}.handwritten{font-family:Georgia,serif;font-style:italic;font-size:17px}.context-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:27px 0;border-top:1px solid #ffffff26;font-size:10px;letter-spacing:1.5px}.context-bar i{font-style:normal;font-size:25px;color:var(--mint);line-height:1}.section{padding-top:96px;padding-bottom:96px}.intro-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:90px}.lead{font-size:23px;color:var(--ink);line-height:1.5;letter-spacing:-.7px;margin-bottom:20px}.intro-grid p:not(.lead){font-size:15px;line-height:1.85}.benefits{display:flex;gap:15px;flex-wrap:wrap;margin-top:28px;padding-top:22px;border-top:1px solid var(--line);font-size:11px;font-weight:600}.section-heading{display:grid;grid-template-columns:1.25fr 1fr;align-items:end;gap:80px;margin-bottom:45px}.section-heading>p{font-size:14px;line-height:1.85;max-width:400px}.services{background:#eaf0e7}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{background:var(--paper);padding:29px;display:flex;flex-direction:column;align-items:start}.service-no{display:flex;justify-content:space-between;align-items:center;width:100%;font-size:11px;padding-bottom:28px}.service-no span{font-size:25px}.service-card h3{font-size:29px;font-weight:500;letter-spacing:-1.2px;line-height:1.15;margin-bottom:20px}.service-context{font-size:10px!important;font-weight:600;color:var(--ink);min-height:35px;margin-bottom:17px}.service-card>p{font-size:13px;line-height:1.8}.service-card>a{margin-top:auto;padding-top:25px;font-size:11px;font-weight:600;text-underline-offset:6px}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px 30px}.work-image{display:block;position:relative;background:#e4e4d9;overflow:hidden}.work-image img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;transition:transform .3s}.work-image:hover img{transform:scale(1.02)}.work-image>span{position:absolute;bottom:15px;right:15px;background:var(--paper);border-radius:50%;width:40px;height:40px;display:grid;place-items:center;font-size:21px}.work figcaption{padding-top:22px}.work .eyebrow{margin-bottom:8px;font-size:9px}.work h3{font-size:25px;font-weight:500;letter-spacing:-.8px;margin-bottom:9px}.work figcaption>p:last-child{font-size:13px;max-width:490px}.method{background:var(--ink);color:var(--paper)}.method .section-heading>p{color:#becfc6}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.steps article{border-top:1px solid #ffffff45;padding-top:24px}.step-no{display:grid;place-items:center;width:38px;height:38px;border:1px solid #88ab9c;color:var(--mint);border-radius:50%;font-size:11px;margin-bottom:30px}.steps h3{font-size:20px;letter-spacing:-.4px;font-weight:500;line-height:1.35;margin-bottom:15px}.steps p{font-size:13px;line-height:1.8;color:#becfc6}.deliverables{display:flex;gap:35px;align-items:start;border-top:1px solid #ffffff30;margin-top:45px;padding-top:25px}.deliverables span{font-size:9px;letter-spacing:1.3px;white-space:nowrap;color:var(--mint)}.deliverables p{font-size:12px;color:#becfc6}.about{display:grid;grid-template-columns:.8fr 1fr;align-items:center;gap:100px;border-bottom:1px solid var(--line)}.portrait{position:relative}.portrait img{width:100%;max-height:510px;object-fit:cover}.portrait>span{display:block;background:var(--mint);font-size:9px;font-weight:600;letter-spacing:1.7px;padding:17px 20px}.about h2{font-size:48px;margin-bottom:28px}.about p:not(.eyebrow){font-size:15px;margin-bottom:18px}.text-link{display:inline-block;margin-top:10px;font-size:13px;font-weight:600;text-underline-offset:7px}.faq{display:grid;grid-template-columns:.7fr 1fr;gap:80px}.faq details{border-top:1px solid var(--line);padding:22px 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:start;gap:25px;font-size:15px;font-weight:500}.faq summary::-webkit-details-marker{display:none}.faq summary span{font-size:22px;line-height:1}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{font-size:13px;padding-top:18px}.contact{background:var(--mint)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px}.contact h2{font-size:49px;margin-bottom:27px}.contact p:not(.eyebrow){font-size:14px;max-width:380px}.contact-mail{display:block;font-size:18px;margin-top:30px;text-underline-offset:6px}.contact-phone{display:block;margin-top:12px;font-size:16px;text-decoration:none}.contact .contact-note{font-size:11px!important;margin-top:25px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}form label{display:block;font-size:11px;font-weight:600}input,textarea,select{width:100%;background:transparent;border:0;border-bottom:1px solid #8aaf99;border-radius:0;padding:10px 0;margin-bottom:19px;color:var(--ink);font-size:14px;min-width:0}textarea{resize:vertical;min-height:130px}.consent{display:flex;gap:10px;align-items:start;margin:5px 0 22px}.consent input{width:16px;flex-shrink:0;margin:3px 0;accent-color:var(--ink)}.consent span{font-weight:400;font-size:10px;line-height:1.65}#form-status{margin-top:18px}.button:disabled{opacity:.65;cursor:wait}.footer{padding-top:55px;padding-bottom:25px}.footer-main{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px}.footer-main p{font-size:9px;letter-spacing:1.5px;font-weight:600;margin-bottom:15px}.footer-main>div>a{display:block;text-decoration:none;font-size:13px;margin:8px 0}.footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:20px;border-top:1px solid var(--line);padding-top:22px;margin-top:45px;font-size:10px;color:var(--muted)}.footer-bottom a{text-decoration:none}.footer-bottom button{border:0;background:none;padding:0;color:inherit;font-size:10px;cursor:pointer}.skip{position:absolute;left:20px;top:-100px;padding:10px;background:var(--mint);color:var(--ink);z-index:100}.skip:focus{top:15px}#cookie-banner{position:fixed;bottom:20px;left:20px;right:20px;z-index:20;max-width:690px;margin-left:auto;background:var(--paper);border:1px solid var(--line);box-shadow:0 8px 35px #0b29252b;padding:23px;display:flex;gap:25px;align-items:center}#cookie-banner[hidden]{display:none}#cookie-banner strong{font-size:13px}#cookie-banner p{font-size:11px;margin-top:6px;line-height:1.65}.cookie-actions{display:flex;gap:10px;flex-shrink:0}.cookie-actions button{padding:10px 14px;border:1px solid var(--ink);background:transparent;color:var(--ink);font-size:11px;cursor:pointer}.cookie-actions button:last-child{background:var(--ink);color:white}.legal{padding:65px 0;max-width:800px}.legal h1{font-size:52px;margin:25px 0}.legal h2{font-size:26px;margin:32px 0 12px;letter-spacing:-1px}.legal p{margin:13px 0}.legal a{overflow-wrap:anywhere}
@media(max-width:1100px){.wrap{width:calc(100% - 56px)}.hero{gap:35px}.hero-visual img{height:350px}.header nav{gap:16px;font-size:11px}.nav-cta span{margin-left:10px}.hero-actions{gap:18px}.section-heading{gap:40px}.about{gap:55px}.about h2,.contact h2{font-size:43px}.contact-grid{gap:40px}.service-card{padding:23px}.service-card h3{font-size:25px}.steps{gap:22px}.hero-intro{font-size:15px}.image-caption{font-size:10px}.handwritten{font-size:14px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.header{padding:23px 0}.brand{font-size:17px;gap:9px}.brand-icon{width:31px;height:31px;font-size:23px}.brand small{font-size:6px}.header nav>a:not(.nav-cta):not(.lang){display:none}.header nav{gap:13px}.nav-cta{font-size:10px;padding:10px;max-width:118px;line-height:1.4}.nav-cta span{margin-left:4px}.hero{grid-template-columns:1fr;padding-top:42px;padding-bottom:38px;gap:38px}h1{font-size:clamp(60px,14vw,85px)}.hero .eyebrow{font-size:8px;letter-spacing:1.3px}.hero-intro{font-size:15px;max-width:100%}.hero-location{margin-top:24px}.hero-visual{transform:none;padding:10px}.hero-visual img{height:auto;aspect-ratio:4/3}.image-topline{font-size:7px;padding-bottom:10px}.image-caption{padding-top:12px}.context-bar{gap:12px;flex-wrap:wrap;padding:23px 0;font-size:8px;letter-spacing:1px}.context-bar i{font-size:18px}.context-bar span:last-child,.context-bar i:last-of-type{display:none}.section{padding-top:58px;padding-bottom:58px}h2{font-size:39px}.intro-grid,.section-heading{grid-template-columns:1fr;gap:24px}.lead{font-size:22px}.eyebrow{font-size:9px;letter-spacing:1.3px;margin-bottom:20px}.benefits{gap:10px 20px}.section-heading{margin-bottom:30px}.service-grid,.work-grid{grid-template-columns:1fr}.service-card{padding:28px}.service-card h3{font-size:30px}.service-context{min-height:0}.service-no{padding-bottom:22px}.service-card>a{padding-top:22px}.work-grid{gap:35px}.work h3{font-size:25px}.steps{grid-template-columns:1fr 1fr;gap:35px 23px}.steps h3{font-size:18px}.step-no{margin-bottom:20px}.deliverables{display:block;margin-top:30px}.deliverables p{margin-top:12px}.about{grid-template-columns:1fr;gap:35px}.portrait img{max-height:420px;object-position:center 35%}.about h2{font-size:39px}.faq{grid-template-columns:1fr;gap:30px}.contact-grid{grid-template-columns:1fr;gap:35px}.contact h2{font-size:43px}.contact-mail{font-size:17px}.footer-main{grid-template-columns:1fr 1fr;gap:30px}.footer-main>.brand{grid-column:1/-1}.footer-bottom{display:grid;gap:12px;margin-top:30px}#cookie-banner{display:block;bottom:12px;left:12px;right:12px;padding:18px}.cookie-actions{margin-top:14px}.cookie-actions button{flex:1}.legal h1{font-size:40px}}
@media(max-width:360px){.form-grid,.steps{grid-template-columns:1fr}.header nav{gap:9px}.nav-cta{max-width:93px}.context-bar{font-size:7px;gap:7px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.fieldwork{background:#eaf0e7}.fieldwork-grid{display:grid;grid-template-columns:1fr 1fr;gap:42px 30px;align-items:start}.fieldwork-card a{display:block;background:#fff}.fieldwork-card img{width:100%;height:auto}.fieldwork-card figcaption{padding:20px 0 0}.fieldwork-card h3{font-size:23px;font-weight:500;letter-spacing:-.7px;margin-bottom:8px}.fieldwork-card p{font-size:14px;line-height:1.8;max-width:480px}.fieldwork-note{font-size:12px;margin-top:30px}@media(max-width:760px){.fieldwork-grid{grid-template-columns:1fr;gap:32px}}

/* Header: clear hierarchy and full mobile navigation */
.header{padding-top:28px;padding-bottom:28px;gap:24px}.header .brand{font-size:23px;gap:14px;flex-shrink:0}.header .brand-icon{width:45px;height:45px;font-size:32px;border-radius:12px;transform:rotate(-7deg);background:var(--mint);border-color:var(--mint);color:var(--ink)}.header .brand small{font-size:8px;letter-spacing:2px;margin-top:12px}.header nav{gap:24px;font-size:13px}.header nav>a{padding-top:10px;padding-bottom:10px;white-space:nowrap}.header nav>a:not(.nav-cta):hover{color:var(--mint);text-decoration:underline;text-underline-offset:7px}.header .nav-cta{background:var(--mint);color:var(--ink);border:1px solid var(--mint);padding:14px 18px;border-radius:6px;font-weight:700}.header .nav-cta:hover{background:var(--paper);color:var(--ink)}.header .lang{border:1px solid #ffffff50;border-radius:50%;width:36px;height:36px;display:grid;place-items:center;padding:0;font-size:11px}.menu-toggle{display:none}
@media(max-width:1100px) and (min-width:901px){.header nav{gap:14px;font-size:11px}.header .brand{font-size:20px}.header .nav-cta{padding:12px}.nav-cta span{margin-left:4px}}
@media(max-width:900px){.header{flex-wrap:wrap;padding:22px 0;gap:20px}.header .brand{font-size:21px}.header .brand-icon{width:40px;height:40px;font-size:28px}.menu-toggle{display:flex;align-items:center;gap:13px;background:transparent;color:var(--paper);border:1px solid #ffffff60;border-radius:6px;padding:11px 14px;font-size:12px;cursor:pointer}.menu-toggle span{font-size:18px;line-height:1}.header nav{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px 20px;padding-top:15px;border-top:1px solid #ffffff26}.header.nav-ready nav{display:none}.header.nav-ready.menu-open nav{display:grid}.header nav>a:not(.nav-cta):not(.lang){display:block}.header nav>a{font-size:14px;padding:10px 0}.header .lang{width:38px;height:38px;padding:0}.header .nav-cta{max-width:none;grid-column:1/-1;display:flex;justify-content:space-between;padding:15px 18px;font-size:13px;margin-top:6px}.header .nav-cta span{margin:0}}
