:root { --ink:#102526; --muted:#5e6e6e; --lime:#c9f06a; --cream:#f5f3ed; --line:#d9ded8; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:#fafaf7; color:var(--ink); font-family:Arial, Helvetica, sans-serif; }
a { color:inherit; text-decoration:none; }
.site-header { height:88px; max-width:1240px; margin:auto; padding:0 28px; display:flex; align-items:center; justify-content:space-between; }
.logo { display:flex; align-items:center; gap:12px; font-weight:700; }
.logo-mark { display:grid; place-items:center; width:46px; height:34px; border-radius:4px; background:var(--ink); color:var(--lime); font-size:15px; letter-spacing:-.5px; }
.logo-name { font-size:18px; letter-spacing:-.4px; } .logo-name i { color:#779244; font-style:normal; font-weight:500; }
nav { display:flex; align-items:center; gap:34px; font-size:14px; font-weight:600; }
.nav-cta { background:var(--ink); color:white; padding:13px 18px; border-radius:4px; display:flex; gap:22px; }
.hero { min-height:650px; max-width:1240px; margin:auto; padding:78px 28px 85px; display:grid; grid-template-columns:1.08fr .92fr; gap:50px; align-items:center; }
.eyebrow { text-transform:uppercase; font-size:12px!important; letter-spacing:1.8px; font-weight:700; display:flex; align-items:center; gap:10px; }
.eyebrow span { width:23px; height:2px; background:#8daf47; }
h1 { font-size:clamp(55px,6.6vw,94px); line-height:.96; letter-spacing:-5px; max-width:770px; margin:25px 0 30px; font-weight:650; }
.intro { max-width:570px; font-size:20px; line-height:1.55; color:var(--muted); }
.hero-actions { display:flex; align-items:center; gap:34px; margin-top:42px; }
.button { padding:16px 20px; border-radius:4px; font-weight:700; font-size:14px; display:inline-flex; gap:48px; }
.button.primary { background:var(--lime); }
.text-link { font-size:14px; font-weight:700; border-bottom:1px solid #aeb8b3; padding:8px 0; display:flex; gap:16px; }
.hero-graphic { min-height:490px; position:relative; display:grid; place-items:center; overflow:hidden; }
.orb { position:absolute; border-radius:50%; filter:blur(1px); }
.orb-one { width:440px; height:440px; background:#e6f1c5; right:10px; top:22px; }
.orb-two { width:330px; height:330px; border:1px solid #b2c889; right:65px; top:77px; }
.experience-card { position:relative; width:270px; height:295px; background:var(--ink); color:white; padding:34px; box-shadow:0 28px 80px #29433435; }
.big-number { font-size:132px; line-height:.85; letter-spacing:-10px; color:var(--lime); font-weight:650; }
.years { writing-mode:vertical-rl; text-transform:uppercase; letter-spacing:4px; font-size:12px; margin-left:12px; }
.experience-card p { margin:26px 0 0; font-size:17px; line-height:1.35; }
.signal-card { position:absolute; right:0; bottom:54px; background:white; padding:15px 18px; box-shadow:0 15px 45px #1b31312a; font-size:12px; font-weight:700; }
.signal-dot { display:inline-block; width:8px; height:8px; border-radius:50%; background:#8eb83f; margin-right:9px; box-shadow:0 0 0 5px #c9f06a55; }
.trust-strip { background:var(--ink); color:white; padding:24px max(28px,calc((100vw - 1184px)/2)); display:flex; justify-content:space-between; font-size:13px; }
.trust-strip p { margin:0; color:#cbd4d0; } .trust-strip div { display:flex; gap:38px; } .trust-strip span:before { content:"✓"; color:var(--lime); margin-right:9px; }
.solutions { max-width:1240px; margin:auto; padding:120px 28px 130px; }
.section-heading { display:grid; grid-template-columns:1fr 1.2fr .8fr; gap:40px; align-items:end; margin-bottom:66px; }
.section-heading h2, .experience h2, .contact h2 { font-size:clamp(40px,4.2vw,62px); line-height:1.03; letter-spacing:-3px; margin:0; font-weight:650; }
.section-heading>p:last-child { color:var(--muted); line-height:1.6; margin:0; }
.solution-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); }
.solution-grid article { position:relative; min-height:340px; padding:36px 38px; border-right:1px solid var(--line); }
.solution-grid article:first-child { border-left:1px solid var(--line); }
.index { position:absolute; right:25px; top:26px; color:#93a09d; font:12px monospace; }
.icon { width:60px; height:60px; border-radius:50%; background:#edf4db; margin:30px 0 62px; position:relative; }
.doc-icon i { position:absolute; left:18px; width:25px; height:2px; background:var(--ink); } .doc-icon i:nth-child(1){top:20px}.doc-icon i:nth-child(2){top:28px}.doc-icon i:nth-child(3){top:36px;width:17px}
.issue-icon { display:grid; place-items:center; } .issue-icon b { border:1.5px solid var(--ink); width:26px; height:31px; text-align:center; line-height:30px; font-weight:500; }
.access-icon i { position:absolute; width:23px; height:23px; border:2px solid var(--ink); border-radius:50%; left:14px; top:13px; }.access-icon b { position:absolute;width:20px;height:2px;background:var(--ink);transform:rotate(45deg);left:32px;top:37px;}
.solution-grid h3 { font-size:23px; margin:0 0 14px; letter-spacing:-.7px; }.solution-grid p { color:var(--muted); line-height:1.65; font-size:15px; }
.experience { background:var(--ink); color:white; display:grid; grid-template-columns:1fr 1fr; min-height:650px; }
.experience-visual { background:#d7ef9c; color:var(--ink); position:relative; overflow:hidden; display:flex; align-items:flex-end; padding:58px max(28px,calc((100vw - 1184px)/2)); padding-right:30px; }
.building-lines { position:absolute; inset:60px -10px 0 17%; transform:skewY(-7deg); border:1px solid #6e8839; opacity:.65; }
.building-lines span { position:absolute; inset:0; border-left:1px solid #6e8839; transform-origin:left bottom; }.building-lines span:nth-child(1){left:18%}.building-lines span:nth-child(2){left:36%}.building-lines span:nth-child(3){left:54%}.building-lines span:nth-child(4){left:72%}.building-lines span:nth-child(5){left:90%}
.experience-visual p { position:relative; display:flex; align-items:flex-end; gap:18px; margin:0; }.experience-visual strong { font-size:128px; letter-spacing:-10px; line-height:.75; }.experience-visual p span { text-transform:uppercase; font-size:12px; line-height:1.5; letter-spacing:1.4px; }
.experience-copy { padding:100px clamp(40px,8vw,130px); }.eyebrow.light { color:var(--lime); }.experience-copy h2 { margin:28px 0 34px; }.experience-copy>p:not(.eyebrow) { color:#bdc8c4; line-height:1.75; max-width:570px; }
.quote { margin-top:42px; padding:24px 0 0 28px; border-top:1px solid #385151; border-left:2px solid var(--lime); font-size:17px; font-style:italic; }
.contact { max-width:1184px; margin:0 auto; padding:120px 0; display:grid; grid-template-columns:.8fr 1.2fr; gap:100px; }.contact h2 { margin:25px 0; }.contact>div>p:last-child { color:var(--muted); line-height:1.6; }
form { display:grid; grid-template-columns:1fr 1fr; gap:24px; } label { font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:1px; } input,textarea { display:block; width:100%; margin-top:10px; border:0; border-bottom:1px solid #aeb9b5; padding:12px 0; background:transparent; color:var(--ink); font:16px Arial; outline:none; resize:vertical; } input:focus,textarea:focus { border-color:#719126; }.wide { grid-column:1/-1; }.honeypot { position:absolute; left:-9999px; }button { grid-column:1/-1; justify-self:start; border:0; background:var(--lime); padding:16px 20px; min-width:210px; display:flex; justify-content:space-between; font-weight:700; cursor:pointer; }
footer { border-top:1px solid var(--line); max-width:1184px; margin:auto; padding:34px 0; display:flex; align-items:center; justify-content:space-between; color:var(--muted); font-size:12px; }.footer-logo { color:var(--ink); }.footer-logo .logo-mark { width:38px; height:28px; font-size:12px; }.footer-logo .logo-name { font-size:15px; }
@media (max-width:800px) {
  nav>a:not(.nav-cta){display:none}.site-header{height:74px;padding:0 20px}.nav-cta{padding:11px 14px;gap:12px}
  .hero{grid-template-columns:1fr;padding:55px 20px 70px;gap:25px}.hero-graphic{min-height:390px}.orb-one{width:350px;height:350px}.orb-two{width:270px;height:270px}.experience-card{width:240px;height:260px}.big-number{font-size:112px}
  h1{letter-spacing:-3.5px}.trust-strip{display:block;padding:24px 20px}.trust-strip div{margin-top:18px;gap:16px;flex-wrap:wrap}
  .solutions{padding:85px 20px}.section-heading{grid-template-columns:1fr;margin-bottom:45px}.solution-grid{grid-template-columns:1fr}.solution-grid article,.solution-grid article:first-child{border-left:1px solid var(--line);border-bottom:1px solid var(--line);min-height:280px}.icon{margin-bottom:40px}
  .experience{grid-template-columns:1fr}.experience-visual{min-height:430px;padding:40px 20px}.experience-copy{padding:75px 20px}.contact{grid-template-columns:1fr;padding:85px 20px;gap:50px}footer{margin:0 20px;align-items:flex-start;gap:22px;flex-direction:column}form{grid-template-columns:1fr}label,.wide,button{grid-column:1}
}
