
:root{--navy:#223c5f;--green:#9cad4e;--ink:#172a41;--muted:#596775;--paper:#f3f5f0}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:white}a{color:inherit}button,input,textarea{font:inherit}.wrap{max-width:1180px;margin:auto;padding:0 28px}header{position:sticky;top:0;z-index:10;background:#fffffff5;border-bottom:1px solid #e6e9e2}header .wrap{display:flex;align-items:center;justify-content:space-between;min-height:90px;gap:22px}.logo{width:245px;height:auto;display:block}nav{display:flex;align-items:center;gap:28px}nav a{text-decoration:none;font-size:14px;font-weight:600}nav a:hover{color:#667727}.btn{display:inline-flex;align-items:center;justify-content:center;padding:15px 23px;border:0;border-radius:4px;text-decoration:none;font-weight:700;background:var(--green);color:#152a38;cursor:pointer}.btn.secondary{background:transparent;color:inherit;border:1px solid #a3b0be}.menu{display:none;background:none;border:0;font-size:24px;color:var(--navy)}.hero{background:var(--navy);color:white;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:70px;padding-top:90px;padding-bottom:85px}.eyebrow{text-transform:uppercase;letter-spacing:2.5px;font-size:12px;font-weight:700;color:var(--green);margin:0 0 25px}h1{font-size:clamp(42px,5vw,66px);line-height:1.06;letter-spacing:-2px;margin:0 0 25px;max-width:630px}h1 span{color:#c2d080}.hero p.lead{color:#d5dfeb;line-height:1.8;max-width:530px;font-size:17px}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.hero-art{position:relative;min-height:360px;border:1px solid #657d94;background:linear-gradient(130deg,#294867,#1a2d47);border-radius:15px;padding:32px;box-shadow:25px 25px 0 #9cad4e18}.art-top{display:flex;align-items:center;justify-content:space-between;color:#c1cfdf;font-size:11px;letter-spacing:2px}.dot{display:inline-block;background:var(--green);width:7px;height:7px;border-radius:50%;margin-right:7px}.lens{width:175px;height:175px;margin:38px auto 25px;border:1px solid #7790a6;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,#9cad4e28 0 20%,#182b44 21% 36%,#739067 37% 38%,#294867 39% 53%,#8aa0af 54% 55%,transparent 56%)}.lens:after{content:'';height:52px;width:52px;border-radius:50%;border:2px solid #bed17c;background:linear-gradient(130deg,#486582,#16283e)}.art-bottom{display:flex;justify-content:space-between;border-top:1px solid #526984;padding-top:18px;font-size:12px;color:#c1cfdf}.strip{background:var(--paper);border-bottom:1px solid #e2e5dc}.strip .wrap{padding-top:23px;padding-bottom:23px;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;font-size:12px;font-weight:700;letter-spacing:1px}section{padding:85px 0}h2{font-size:clamp(30px,3.5vw,43px);line-height:1.15;letter-spacing:-1px;margin:0 0 22px}p{line-height:1.75}.section-intro{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:40px}.section-intro p{max-width:400px;color:var(--muted);margin:0 0 22px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{padding:30px;border:1px solid #e1e5e8;border-radius:6px;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-4px);box-shadow:0 14px 28px #223c5f0c}.num{font-size:12px;font-weight:700;color:#718037;letter-spacing:2px}.card h3{font-size:21px;margin:23px 0 12px}.card p{font-size:14px;color:var(--muted);margin:0}.about{background:var(--paper)}.two{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.about p{color:var(--muted)}.principles{border-top:1px solid #ccd3c2}.principle{padding:22px 0;border-bottom:1px solid #ccd3c2;display:grid;grid-template-columns:40px 1fr;gap:12px}.principle h3{margin:0 0 7px;font-size:18px}.principle p{margin:0;font-size:14px}.process{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:35px}.process div{border-top:3px solid var(--green);padding-top:23px}.process h3{font-size:20px}.process p{color:var(--muted);font-size:14px}.contact{background:var(--navy);color:white}.contact p{color:#d5dfeb}.contact a{word-break:break-word}.contact-list{display:grid;gap:24px;margin-top:32px}.contact-list small{display:block;color:#c2d080;letter-spacing:1.5px;font-size:11px;margin-bottom:9px;text-transform:uppercase}.contact-list a{text-decoration:none;font-size:21px}.form{background:white;color:var(--ink);padding:35px;border-radius:6px}.form h3{font-size:24px;margin-top:0}.form label{display:block;font-size:13px;font-weight:600;margin:17px 0 7px}.form input,.form textarea{width:100%;padding:12px;border:1px solid #cbd2d7;border-radius:3px;background:#fafbfc}.form textarea{min-height:120px;resize:vertical}.form .btn{margin-top:20px;width:100%}.form .note{font-size:12px;line-height:1.5;color:var(--muted);margin-bottom:0}footer{background:#182c46;color:#bbc7d5;padding:25px 0;font-size:12px}footer .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #adbd62;outline-offset:4px}@media(max-width:850px){.hero-grid,.two{grid-template-columns:1fr;gap:40px}.hero-art{max-width:480px;width:100%}.hero-grid{padding-top:55px;padding-bottom:55px}.cards{grid-template-columns:repeat(2,1fr)}.section-intro{display:block}section{padding:60px 0}nav{gap:17px}.logo{width:200px}nav .btn{display:none}}@media(max-width:600px){.wrap{padding-left:20px;padding-right:20px}header .wrap{min-height:76px}.logo{width:190px}.menu{display:block}nav{display:none;position:absolute;top:76px;left:0;right:0;background:white;padding:25px;flex-direction:column;align-items:flex-start;border-bottom:1px solid #ddd}nav.open{display:flex}.cards,.process{grid-template-columns:1fr}.hero-art{min-height:320px;padding:25px}.lens{margin-top:28px}h1{letter-spacing:-1.5px}.form{padding:24px}.strip .wrap{font-size:10px;gap:16px}.section-intro p{max-width:100%}}
nav{gap:15px}.logo{width:205px}nav a[aria-current]{color:#718037}.page-top{background:var(--navy);color:white;padding:60px 0}.page-top h1{font-size:46px}.page-top p{color:#d5dfeb;max-width:650px}.rail-section{padding:45px 0;background:var(--paper)}.clients{background:white;border-bottom:1px solid #ddd}.rail-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:22px}.rail-head h2{font-size:28px;margin:0}.pause{background:none;border:1px solid #b5bda6;border-radius:4px;padding:9px;cursor:pointer;color:var(--navy)}.rail{overflow:hidden}.track{display:flex;width:max-content;animation:scroll 22s linear infinite}.group{display:flex;gap:20px;padding-right:20px}.brand{width:250px;height:110px;background:white;border:1px solid #d5ddcd;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:27px;font-weight:bold;text-align:center}.clients .brand{background:var(--paper);font-size:22px}.brand small{display:block;font-size:11px;font-weight:normal;margin-top:10px}.rail:hover .track,.rail.paused .track{animation-play-state:paused}.home-summary p{max-width:760px;color:var(--muted)}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.project-card{border:1px solid #dce1d5;border-radius:6px;overflow:hidden}.project-band{background:var(--navy);color:#c2d080;padding:50px 30px;font-size:14px;letter-spacing:2px}.project-copy{padding:28px}.project-copy h3{font-size:24px}.project-copy p{color:var(--muted)}.cta{background:var(--paper);padding:35px;border-radius:6px;margin-top:35px}.cta h3{font-size:25px}@keyframes scroll{to{transform:translateX(-50%)}}@media(prefers-reduced-motion:reduce){.track{animation:none}.rail{overflow-x:auto}html{scroll-behavior:auto}}@media(max-width:800px){.menu{display:block}nav{display:none;position:absolute;top:90px;left:0;right:0;background:white;padding:25px;flex-direction:column;align-items:flex-start}nav.open{display:flex}}@media(max-width:600px){nav{top:76px}.project-grid{grid-template-columns:1fr}.brand{width:210px}.page-top h1{font-size:38px}.rail-head h2{font-size:23px}}

/* Logo rails */
.logo-rail-section .rail-head{align-items:flex-end}
.logo-rail-section .rail-head .eyebrow{margin-bottom:8px}
.logo-rail-section .rail-head h2{margin:0}
.logo-rail{padding:4px 0 8px;-webkit-mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent);mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent)}
.logo-track{animation-duration:42s}
.logo-group{gap:18px;padding-right:18px}
.logo-card{width:220px;height:120px;padding:18px;background:#fff;overflow:hidden}
.logo-card img{display:block;width:100%;height:100%;object-fit:contain;filter:grayscale(100%);opacity:.78;transition:filter .25s ease,opacity .25s ease,transform .25s ease}
.logo-card:hover img{filter:none;opacity:1;transform:scale(1.04)}
.clients .logo-card{background:#fff}
.client-track{animation-direction:reverse;animation-duration:28s}
.client-logo{width:260px;height:135px}
@media(max-width:600px){.logo-card{width:165px;height:95px;padding:14px}.client-logo{width:190px;height:105px}.logo-track{animation-duration:32s}}