:root{--paper:#f4f3ef;--ink:#202b25;--green:#21392f;--muted:#657168;--line:#d8dcd3;--gold:#bcac86}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit}a:focus-visible{outline:3px solid #4c86a9;outline-offset:5px}header,main,footer{max-width:1440px;margin:auto}header{height:102px;margin:auto;padding:0 64px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;text-decoration:none;font-size:25px;font-weight:700;letter-spacing:-1px;gap:12px}.brand>svg{width:35px;height:28px;fill:none;stroke:currentColor;stroke-width:1.5}.brand>span{color:#53735f;margin-left:-11px}nav{display:flex;align-items:center;gap:35px}nav a{text-decoration:none;font-size:12px}.nav-contact{border:1px solid var(--line);border-radius:3px;padding:13px 17px}.nav-contact span{margin-left:20px}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:45px;padding:68px 64px 75px;align-items:center}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;color:#527160;display:flex;align-items:center;gap:9px;margin:0 0 28px}.eyebrow>span{width:6px;height:6px;border-radius:50%;background:#527160}h1{font-size:clamp(65px,7vw,98px);font-weight:500;line-height:.99;letter-spacing:-5px;margin:0 0 28px}h1 em{font-family:Georgia,serif;font-weight:400;color:#53735f}.lead{font-size:15px;line-height:1.8;color:var(--muted);margin:0 0 28px}.actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:18px 20px;min-height:54px;background:var(--green);color:#fff;text-decoration:none;font-size:11px;font-weight:700;border-radius:3px;transition:background .2s}.button:hover{background:#365842}.button span{font-size:18px;font-weight:400}.text-link{font-size:13px;text-decoration:none;border-bottom:1px solid #9caa9e;padding:5px 0}.byline{font-size:11px;color:var(--muted);margin:30px 0 0}.byline span{margin:0 8px}.visual{aspect-ratio:.96;min-width:0;background:var(--green);position:relative;padding:27px 27px 23px;border-radius:3px;display:flex;flex-direction:column;justify-content:space-between;color:#cdd6c7}.visual-top,.visual-bottom{display:flex;justify-content:space-between;gap:15px;align-items:center;font-size:8px;letter-spacing:1.5px}.visual-top{position:relative;z-index:1}.visual-top span:last-child{color:#9faf9c}.lens{width:100%;display:block;position:absolute;left:0;top:50%;transform:translateY(-50%);height:87%}.outer-ring,.ring,.center-ring{fill:none;stroke:var(--gold);stroke-width:1;opacity:.55}.ring{stroke-width:1;stroke-dasharray:1 5;opacity:.8}.center-ring{opacity:.2;stroke:#fff}.blades{stroke:#8eaa8e;stroke-width:1;fill:none;opacity:.65}.cross{stroke:var(--gold);stroke-width:1;opacity:.6}.tick{stroke:var(--gold);stroke-width:2;fill:none}.visual-bottom{position:relative;z-index:1;font-size:7px;letter-spacing:1px}.visual-hand{font:italic 15px Georgia,serif;letter-spacing:0;color:#d2c5a2}.services{padding:65px 64px 60px;border-top:1px solid var(--line)}h2{font-size:43px;line-height:1.12;letter-spacing:-1.5px;font-weight:500;margin:0}.section-label .eyebrow{margin-bottom:20px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:42px;margin-top:45px}.service-grid article{border-top:1px solid var(--line);padding-top:23px}.number{font-size:10px;color:#6a7d6c;letter-spacing:1px}.service-grid h3{font-size:23px;font-weight:500;letter-spacing:-.5px;margin:24px 0 13px}.service-grid p{font-size:13px;color:var(--muted);line-height:1.9;margin:0;max-width:320px}.location-note{border-top:1px solid var(--line);display:flex;align-items:center;gap:23px;margin-top:42px;padding-top:26px}.location-note>span{font-size:35px;color:#6b8270}.location-note p{font-size:12px;line-height:1.9;color:var(--muted);max-width:700px;margin:0}.location-note strong{font-weight:500;color:var(--ink)}.contact{margin:15px 64px 0;background:var(--green);color:var(--paper);padding:55px 48px;display:grid;grid-template-columns:1fr 1.2fr;gap:65px;border-radius:3px}.contact .eyebrow{color:#bccbb8;font-size:9px;margin-bottom:22px}.contact-intro h2{font-family:Georgia,serif;font-size:52px;letter-spacing:-1px;font-weight:400;line-height:1.05}.contact-intro>p:last-child{font-size:12px;color:#c4cfc2;line-height:1.9;max-width:270px;margin:23px 0 0}.contact-details{display:flex;flex-direction:column}.contact-row{position:relative;text-decoration:none;border-bottom:1px solid #ffffff27;padding:19px 25px 22px 0;display:flex;flex-direction:column;gap:11px}.contact-row:first-child{padding-top:0}.contact-row>span{font-size:8px;letter-spacing:1.6px;color:#b8c8b3}.contact-row strong{font-size:27px;font-weight:400;letter-spacing:-.5px}.contact-row b{font-size:24px;position:absolute;right:0;bottom:24px;font-weight:400}.contact-row:hover strong{text-decoration:underline;text-underline-offset:6px}.contact-row.address{border:0;padding-bottom:0}.address strong{font-size:21px}.address small{font-size:11px;line-height:1.6;color:#c4cfc2}.normstudio{padding:45px 64px 55px;display:flex;align-items:center;justify-content:space-between;gap:28px}.normstudio>span{font-size:8px;letter-spacing:1.4px;color:var(--muted);max-width:120px;line-height:1.8}.normstudio p{font-size:17px;line-height:1.5;margin:0;flex:1;padding-left:40px}.normstudio a{font-size:12px;text-decoration:none;border-bottom:1px solid #aeb8aa;padding:10px 0;white-space:nowrap}.normstudio a span{margin-left:26px;font-size:18px}footer{border-top:1px solid var(--line);padding:25px 64px 30px;display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:9px;line-height:1.8}footer a{text-decoration:none}.skip{position:fixed;top:-100px;left:20px;padding:14px;background:white;z-index:9}.skip:focus{top:20px}
@media(max-width:1050px){header{padding:0 36px}.hero{padding:55px 36px 60px;gap:30px}h1{font-size:76px;letter-spacing:-4px}.lead{font-size:13px}.visual{aspect-ratio:.83;padding:22px}.visual-bottom{flex-wrap:wrap;gap:10px}.services{padding:50px 36px}.contact{margin-left:36px;margin-right:36px;padding:42px 34px;gap:35px}.contact-row strong{font-size:23px}.service-grid{gap:26px}.normstudio,footer{padding-left:36px;padding-right:36px}.normstudio p{padding-left:0}.contact-intro h2{font-size:47px}}
@media(max-width:760px){header{height:83px;padding:0 24px}.brand{font-size:22px}.brand>svg{width:30px}nav{gap:15px}nav>a:first-child{display:none}.nav-contact{font-size:11px;padding:11px 14px}.nav-contact span{margin-left:13px}.hero{grid-template-columns:1fr;gap:36px;padding:43px 24px 40px}h1{font-size:clamp(68px,12vw,90px);letter-spacing:-4px}.lead{font-size:14px}.hero .eyebrow{margin-bottom:25px}.visual{aspect-ratio:1.15;width:100%;max-width:560px;margin:auto;padding:24px}.lens{height:88%}.visual-bottom{flex-wrap:nowrap;font-size:7px}.services{padding:40px 24px}.services h2{font-size:34px;letter-spacing:-1px}.service-grid{grid-template-columns:1fr;gap:30px;margin-top:30px}.service-grid article{padding-top:20px}.service-grid h3{margin-top:14px}.service-grid p{max-width:100%;font-size:13px}.location-note{gap:18px;align-items:flex-start;margin-top:30px;padding-top:23px}.contact{grid-template-columns:1fr;margin:0 24px;padding:35px 27px;gap:35px}.contact-intro h2{font-size:46px}.contact-intro>p:last-child{max-width:100%}.contact-row strong{font-size:25px}.contact .email strong{font-size:23px}.contact-row.address strong{font-size:21px}.normstudio{padding:32px 24px 37px;flex-wrap:wrap;gap:20px}.normstudio>span{width:100%;max-width:none}.normstudio p{font-size:15px;flex:auto;width:100%}.normstudio a{font-size:12px}.normstudio a span{margin-left:30px}footer{padding:24px;flex-direction:column;gap:8px;font-size:9px}.byline{margin-top:25px}}
@media(max-width:360px){header{padding:0 18px;gap:16px}.brand{font-size:20px;gap:9px}.brand>span{margin-left:-8px}.brand>svg{width:26px}.nav-contact{padding:10px 12px}.hero,.services{padding-left:20px;padding-right:20px}.hero h1{font-size:65px}.button{font-size:10px;gap:12px;padding:17px}.contact{margin-left:20px;margin-right:20px;padding:30px 22px}.contact .email strong{font-size:20px}.contact-row strong{font-size:24px}.visual-bottom>span:first-child{font-size:6px}.visual-hand{font-size:12px}.normstudio,footer{padding-left:20px;padding-right:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
