@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#132a2b;--paper:#f5f5ee;--green:#395f46;--line:#d8ddd2;--muted:#5d6c64}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #b68c40;outline-offset:5px}.skip{position:fixed;left:20px;top:-100px;z-index:100;background:white;padding:16px}.skip:focus{top:12px}header{height:100px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(245,245,238,.97);position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:16px}.brand img{width:77px;height:52px;object-fit:contain}.brand span{font-size:9px;letter-spacing:1.5px;line-height:1.6;border-left:1px solid #b8c1b2;padding-left:17px;font-weight:700}nav{display:flex;align-items:center;gap:32px;font-size:13px;font-weight:600}nav>a{padding:12px 0}nav>a:hover{color:var(--green)}nav .nav-cta{background:var(--ink);color:#fff;border-radius:3px;padding:15px 21px}.nav-cta span{margin-left:24px}.menu{display:none}h1,h2,h3{font-family:'Manrope',Arial,sans-serif;font-weight:500;margin:0;letter-spacing:-2px}h1{font-size:clamp(44px,4.5vw,76px);line-height:1.12}em{font-style:normal;color:var(--green)}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;display:flex;align-items:center;gap:9px;margin:0 0 28px}.dot{height:6px;width:6px;background:var(--green);border-radius:50%}.hero{display:grid;grid-template-columns:1.05fr 1fr;min-height:660px}.hero-copy{padding:88px 7.5% 34px 9.5%;display:flex;flex-direction:column;align-items:flex-start}.lead{font-size:18px;line-height:1.7;color:var(--muted);max-width:440px;margin:28px 0 35px}.actions{display:flex;gap:28px;align-items:center;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;font-size:13px;padding:18px 24px;border:0;border-radius:3px;font-weight:600;cursor:pointer;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.dark{background:var(--ink);color:white}.light{background:#e8eedf;color:var(--ink)}.text-link{font-size:13px;font-weight:600;border-bottom:1px solid #b8c1b2;padding:10px 0;display:inline-flex;gap:22px}.hero-bottom{margin-top:auto;padding-top:58px;display:flex;gap:18px;align-items:center;font-size:9px;font-weight:700;letter-spacing:1.1px}.hero-bottom i{height:1px;width:32px;background:#a1b09c}.hero-visual{position:relative;min-height:600px;overflow:hidden;background:#78837a}.hero-visual>img{width:100%;height:100%;object-fit:cover;object-position:50% 50%;position:absolute;transition:transform 1.2s;filter:brightness(.88)}.hero-visual:hover>img{transform:scale(1.035)}.hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(14,37,30,.8),transparent 65%);pointer-events:none}.visual-caption{position:absolute;z-index:2;bottom:76px;left:45px;right:45px;display:flex;align-items:center;justify-content:space-between;color:white;font-family:Manrope,sans-serif;font-size:29px;line-height:1.3;letter-spacing:-1px}.round-arrow{height:62px;width:62px;border:1px solid #ced6c780;border-radius:50%;display:grid;place-items:center;font-size:30px;flex-shrink:0}.image-label{position:absolute;z-index:2;bottom:31px;left:45px;color:#dfe7da;font-size:8px;letter-spacing:1.8px}.intro,.expertise,.values,.contact{padding:95px 5%}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%}h2{font-size:clamp(33px,3.4vw,54px);line-height:1.16}.intro-grid p{color:var(--muted);line-height:1.8;font-size:15px;margin:0 0 21px}.intro-grid .large{font-size:23px;line-height:1.5;color:var(--ink);letter-spacing:-.5px}.principles{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding-top:55px;margin-top:50px;border-top:1px solid var(--line)}.principles span{font-size:9px;letter-spacing:1.8px;font-weight:700}.principles p{font-size:15px;line-height:1.8;color:var(--muted);max-width:490px}.expertise{background:#e9eee2}.section-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:48px}.section-head>p{font-size:14px;color:var(--muted);line-height:1.8}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#ccd7c8;border:1px solid #ccd7c8}.service{background:#f6f7f0;padding:30px 32px;display:flex;flex-direction:column;min-height:350px;transition:background .25s}.service:hover{background:white}.service-top{display:flex;justify-content:space-between;color:var(--green);font-size:12px;margin-bottom:32px}.service-top>span:last-child{font-size:23px}.service h3{font-size:25px;letter-spacing:-.7px;line-height:1.3}.service p{font-size:14px;line-height:1.8;color:var(--muted);margin:22px 0 28px}.service a{margin-top:auto;font-size:12px;font-weight:600;display:flex;justify-content:space-between}.service a:hover{color:var(--green)}.approach{background:var(--ink);color:white;display:grid;grid-template-columns:1fr 1fr;gap:10%;padding:90px 5%;overflow:hidden}.approach em{color:#bfd0a5}.approach-left{position:relative;min-height:550px}.approach-left>p:not(.eyebrow){max-width:375px;color:#c2cfc5;line-height:1.8;font-size:15px;margin:26px 0}.steps{padding-top:45px}.steps article{display:flex;gap:24px;padding:29px 0;border-top:1px solid #45605a}.steps article>span{font-size:12px;color:#adc6a3;padding-top:6px}.steps h3{font-size:24px;letter-spacing:-.6px}.steps p{color:#c2cfc5;font-size:14px;line-height:1.8;max-width:370px}.approach-note{padding-top:25px;font-size:12px!important}.globe{position:absolute;height:240px;width:240px;border:1px solid #b2c79c40;border-radius:50%;bottom:-50px;left:35px;transform:rotate(-18deg);opacity:.85}.orbit{position:absolute;inset:0;border:1px solid #b2c79c45;border-radius:50%}.o1{transform:scaleX(.4)}.o2{transform:scaleY(.35)}.o3{transform:scaleY(.75)}.globe-line{height:1px;background:#b2c79c40;position:absolute;top:50%;width:100%}.line2{transform:rotate(90deg)}.pin{width:9px;height:9px;background:#d8e6bd;border:3px solid #739363;border-radius:50%;position:absolute;box-shadow:0 0 0 7px #b7d29c15}.p1{left:55px;top:90px}.p2{right:45px;top:130px}.connection{position:absolute;width:136px;height:70px;border-top:1px solid #cedfb0;transform:rotate(16deg);left:55px;top:95px;border-radius:50%}.values{padding-top:65px;padding-bottom:70px;border-bottom:1px solid var(--line)}.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.values article>span{font-size:10px;color:var(--muted)}.values h3{font-size:23px;letter-spacing:-.5px;margin-top:14px}.values p{font-size:13px;line-height:1.8;color:var(--muted)}.contact{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding-top:100px;padding-bottom:100px}.contact-lead{font-size:17px;line-height:1.8;color:var(--muted);margin:28px 0}.email-link{font-size:25px;letter-spacing:-.7px;border-bottom:1px solid var(--line);display:inline-flex;gap:38px;padding:10px 0}.locations{display:flex;gap:70px;margin-top:44px}.locations span{font-size:9px;letter-spacing:1.5px;font-weight:700}.locations p{font-size:15px}.consult-note{font-size:12px;color:var(--muted);margin-top:35px}form{background:white;border:1px solid var(--line);padding:36px}form h3{font-size:25px;letter-spacing:-.6px;margin-bottom:25px}label{display:block;font-size:11px;font-weight:600;margin-bottom:19px}input,select,textarea{display:block;width:100%;border:0;border-bottom:1px solid #c9d1c4;background:white;border-radius:0;padding:12px 0;font-size:14px;outline:none;color:var(--ink)}input:focus,select:focus,textarea:focus{border-bottom:2px solid var(--green)}input::placeholder,textarea::placeholder{color:#929b93}textarea{resize:vertical}form .button{width:100%;margin-top:8px}.form-note,#form-status{font-size:10px;color:var(--muted);line-height:1.6;margin-bottom:0}#form-status{font-size:12px;color:var(--green)}footer{background:#e9eee2;border-top:1px solid #d5dece;padding:45px 5%;display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:25px;align-items:center}footer>p{font-size:13px;line-height:1.8}footer>div{display:flex;gap:22px;font-size:12px;justify-content:flex-end}footer>span{grid-column:1/3;font-size:10px;color:var(--muted);margin-top:20px}.back-top{font-size:11px;justify-self:end;margin-top:20px}
@media(min-width:1500px){header,section,footer{padding-left:max(5%,calc((100vw - 1400px)/2))!important;padding-right:max(5%,calc((100vw - 1400px)/2))!important}.hero{padding-left:0!important;padding-right:0!important}.hero-copy{padding-left:max(9.5%,calc((100vw - 1400px)))}}@media(max-width:1000px){nav{gap:20px}.hero-copy{padding-top:65px}h1{font-size:49px}.hero{min-height:600px}.hero-visual{min-height:570px}.visual-caption{font-size:23px;left:30px;right:30px}.service{padding:26px 24px}.service h3{font-size:23px}.contact{gap:6%}form{padding:27px}.actions{gap:13px}.hero-bottom{font-size:8px;gap:10px}.intro,.expertise,.contact{padding-top:75px;padding-bottom:75px}}
@media(max-width:720px){html{scroll-padding-top:78px}header{height:78px}.brand img{width:62px;height:43px}.brand span{font-size:8px;letter-spacing:1px;padding-left:12px}.menu{display:flex;background:transparent;border:1px solid #c3cdbc;padding:10px 12px;gap:12px;align-items:center;font-size:12px;border-radius:3px}nav{display:none;position:absolute;top:78px;left:0;right:0;background:var(--paper);padding:20px 5%;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:8px}nav.open{display:flex}.hero{display:flex;flex-direction:column}.hero-copy{padding:57px 6% 32px}h1{font-size:clamp(39px,9vw,60px);letter-spacing:-2px}.eyebrow{font-size:9px;margin-bottom:22px}.lead{font-size:16px;margin-top:23px;max-width:450px}.hero-bottom{padding-top:35px;gap:15px}.hero-visual{min-height:390px;margin:0 5% 0}.visual-caption{font-size:26px;bottom:65px}.image-label{left:30px;font-size:7px;letter-spacing:1.3px}.intro,.expertise,.values,.contact{padding:65px 6%}.intro-grid,.contact{grid-template-columns:1fr;gap:32px}.intro-grid .large{font-size:20px}.intro-grid h2{margin-bottom:8px}h2{font-size:38px;letter-spacing:-1.7px}.principles{gap:24px;margin-top:35px;padding-top:30px}.principles p{font-size:13px}.section-head{align-items:flex-start;gap:20px;flex-direction:column;margin-bottom:28px}.section-head>p{margin:0}.service-grid{grid-template-columns:1fr 1fr}.service{min-height:335px;padding:22px 19px}.service h3{font-size:21px}.service p{font-size:13px}.service a{font-size:11px}.service-top{margin-bottom:22px}.approach{grid-template-columns:1fr;gap:15px;padding:65px 6%}.approach-left{min-height:420px}.globe{height:190px;width:190px;bottom:-55px;left:auto;right:-45px}.steps{padding-top:10px;position:relative;background:var(--ink)}.steps h3{font-size:21px}.steps article{padding:23px 0}.values-grid{grid-template-columns:1fr 1fr;gap:20px 25px}.values h3{font-size:22px}.values p{font-size:12px}form{padding:27px 24px}.contact{gap:35px}.locations{gap:45px}.email-link{font-size:24px}footer{padding:35px 6%;grid-template-columns:1fr 1fr}footer>p{justify-self:end}footer>div{grid-column:1/3;justify-content:flex-start;border-top:1px solid #cbd5c3;padding-top:24px}footer>span{grid-column:1;align-self:end}.back-top{margin-top:20px;align-self:end}}@media(max-width:420px){.service-grid{grid-template-columns:1fr}.service{min-height:285px;padding:27px}.hero-visual{min-height:350px}.visual-caption{font-size:23px}.round-arrow{height:48px;width:48px}.principles{grid-template-columns:1fr;gap:15px}.actions .button{padding:17px 20px}.actions{gap:15px}.brand span{display:none}.values p br{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Sculptural hero: soft depth and restrained motion. */
.scene-3d{background:#efefe5;perspective:1200px}
.scene-3d>img{object-fit:contain;object-position:center 35%;filter:none;padding:10px 0 90px;animation:sculpture-float 8s ease-in-out infinite;will-change:transform}
.scene-3d:after{background:linear-gradient(0deg,#e5e9dc 0%,#e5e9dc00 37%);inset:0}
.scene-3d .visual-caption{color:#244538;font-size:25px;bottom:65px}
.scene-3d .round-arrow{border-color:#6d876650;background:#ffffff55}
.scene-3d .image-label{color:#476342}
.scene-3d:hover>img{animation-play-state:paused}
@keyframes sculpture-float{0%,100%{transform:translateY(0) rotateY(-3deg) rotateX(1deg)}50%{transform:translateY(-13px) rotateY(3deg) rotateX(-1deg)}}
.globe{animation:globe-breathe 10s ease-in-out infinite}
@keyframes globe-breathe{0%,100%{transform:rotate(-18deg) scale(1)}50%{transform:rotate(-8deg) scale(1.04)}}
.pin{animation:pin-glow 3s ease-in-out infinite}.p2{animation-delay:1.5s}
@keyframes pin-glow{50%{box-shadow:0 0 0 12px #b7d29c00,0 0 15px #d8e6bd70}}
@media(max-width:720px){.scene-3d>img{padding:0 0 65px}.scene-3d .visual-caption{font-size:21px;bottom:54px}.scene-3d .image-label{bottom:23px}}
@media(prefers-reduced-motion:reduce){.scene-3d>img,.globe,.pin{animation:none!important}}
