:root{--forest:#174d3a;--leaf:#69a84f;--gold:#d8a83e;--cream:#f7f4ea;--navy:#17324d;--charcoal:#26332d;--white:#fff;--border:#dde5dd;--mist:#eef4ef;--blue:#6bb7d6;--shadow:0 18px 50px rgba(23,50,45,.11);--radius:24px;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--charcoal);background:var(--cream);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.65;overflow-x:hidden}img,svg{display:block;max-width:100%}a{color:inherit}button,input,select,textarea{font:inherit}.container{width:min(calc(100% - 40px),var(--max));margin-inline:auto}.skip-link{position:fixed;left:16px;top:-80px;z-index:9999;padding:12px 18px;background:var(--navy);color:#fff;border-radius:10px}.skip-link:focus{top:16px}.site-header{position:sticky;top:0;z-index:1000;background:rgba(247,244,234,.93);backdrop-filter:blur(16px);border-bottom:1px solid transparent;transition:.25s}.site-header.scrolled{border-color:var(--border);box-shadow:0 8px 30px rgba(23,50,45,.07)}.nav-wrap{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;min-width:max-content}.brand-mark{width:48px;height:48px}.brand-copy strong{display:block;font:800 1rem/1.05 Manrope,Inter,sans-serif;letter-spacing:.08em;color:var(--forest)}.brand-copy small{font-size:.67rem;color:#5b6b64}.main-nav{display:flex;align-items:center;gap:4px}.main-nav a{padding:10px 12px;text-decoration:none;font-weight:700;font-size:.91rem;border-radius:999px}.main-nav a:hover,.main-nav a[aria-current=page]{color:var(--forest);background:#e7efe6}.main-nav .nav-cta{background:var(--navy);color:#fff;margin-left:8px}.main-nav .nav-cta:hover{background:var(--forest);color:#fff}.menu-toggle{display:none;border:0;background:transparent;padding:10px;border-radius:10px}.menu-toggle span{display:block;width:25px;height:2px;background:var(--charcoal);margin:5px;transition:.25s}
h1,h2,h3,h4{font-family:Manrope,Inter,sans-serif;line-height:1.12;margin:0 0 .6em;color:var(--forest);letter-spacing:-.025em}h1{font-size:clamp(2.7rem,6vw,5.6rem);max-width:920px}h2{font-size:clamp(2rem,4vw,3.5rem)}h3{font-size:1.35rem}p{margin:0 0 1.2em}.eyebrow{display:flex;align-items:center;gap:9px;font-weight:800;text-transform:uppercase;letter-spacing:.13em;font-size:.75rem;color:var(--forest);margin-bottom:18px}.eyebrow:before{content:"";width:32px;height:2px;background:var(--gold)}.lede{font-size:clamp(1.05rem,2vw,1.25rem);max-width:750px;color:#53615b}.badge{display:inline-flex;align-items:center;gap:8px;padding:8px 13px;border:1px solid rgba(23,77,58,.2);background:rgba(255,255,255,.7);border-radius:999px;font-size:.78rem;font-weight:800}.badge:before{content:"";width:8px;height:8px;background:var(--gold);border-radius:50%;box-shadow:0 0 0 5px rgba(216,168,62,.18)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 20px;border:1px solid transparent;border-radius:999px;text-decoration:none;font-weight:800;transition:transform .2s,box-shadow .2s,background .2s}.btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(23,50,45,.16)}.btn-primary{background:var(--forest);color:#fff}.btn-secondary{border-color:var(--forest);color:var(--forest);background:transparent}.btn-light{background:#fff;color:var(--navy)}.btn-outline-light{border-color:rgba(255,255,255,.5);color:#fff}.button-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.hero{position:relative;min-height:720px;padding:72px 0 0;overflow:hidden;background:radial-gradient(circle at 88% 5%,rgba(216,168,62,.18),transparent 28%),linear-gradient(160deg,#f7f4ea 10%,#edf4e9 100%)}.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:30px;align-items:center}.hero h1 span{color:var(--gold)}.hero-art{position:relative;align-self:end}.hero-art img{width:100%;filter:drop-shadow(0 25px 25px rgba(23,77,58,.12))}.orbit{position:absolute;width:12px;height:12px;border:3px solid var(--gold);border-radius:50%;animation:float 4s ease-in-out infinite}.orbit.one{top:22%;right:4%}.orbit.two{top:40%;left:3%;animation-delay:-2s}@keyframes float{50%{transform:translateY(-12px)}}.contour-strip{height:78px;margin-top:-1px;background:var(--forest);clip-path:polygon(0 64%,12% 35%,30% 67%,47% 30%,65% 60%,82% 22%,100% 48%,100% 100%,0 100%)}
.section{padding:104px 0}.section-sm{padding:74px 0}.section-white{background:#fff}.section-green{background:var(--forest);color:#e8f1e8}.section-green h2,.section-green h3,.section-green .eyebrow{color:#fff}.section-navy{position:relative;background:var(--navy);color:#dce7ef;overflow:hidden}.section-navy h2,.section-navy h3,.section-navy .eyebrow{color:#fff}.section-navy:before{content:"";position:absolute;inset:0;opacity:.12;background-image:radial-gradient(circle,#8cc8df 1.5px,transparent 1.5px);background-size:38px 38px;mask-image:linear-gradient(to right,transparent,#000)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:36px;margin-bottom:50px}.section-heading>*{max-width:700px}.intro-grid,.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;align-items:center}.statement{font:700 clamp(1.4rem,2.7vw,2.15rem)/1.42 Manrope,sans-serif;color:var(--forest)}.mini-label{font-weight:800;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gold)}
.pillar-grid{display:grid;grid-template-columns:1.1fr .9fr .9fr 1.1fr;gap:18px}.card{position:relative;background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:28px;box-shadow:0 8px 30px rgba(23,50,45,.05);transition:.25s}.card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.pillar-card:nth-child(2),.pillar-card:nth-child(4){margin-top:34px}.icon-box{display:grid;place-items:center;width:48px;height:48px;background:var(--mist);color:var(--forest);border-radius:15px;margin-bottom:25px}.icon-box svg{width:26px;height:26px}.status{display:inline-flex;padding:5px 10px;border-radius:999px;background:#f4ead0;color:#725411;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.tech-grid{position:relative;display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center}.tech-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tech-item{padding:18px;border:1px solid rgba(255,255,255,.14);border-radius:18px;background:rgba(255,255,255,.06);font-weight:700}.tech-item:before{content:"↗";color:var(--blue);margin-right:10px}.product-card{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:center;background:linear-gradient(135deg,#fff,#eff6f4);border:1px solid var(--border);padding:42px;border-radius:34px}.product-card img{max-height:340px;margin:auto}
.panauti{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px}.panauti figure{margin:0;background:#e7f0e5;border-radius:40% 40% 22px 22px;overflow:hidden;padding:20px}.timeline{display:grid;grid-template-columns:repeat(6,1fr);position:relative;gap:16px}.timeline:before{content:"";position:absolute;left:6%;right:6%;top:15px;height:2px;background:linear-gradient(90deg,var(--leaf),var(--gold),var(--blue))}.timeline-item{position:relative;padding-top:42px;font-weight:800;font-size:.9rem}.timeline-item:before{content:"";position:absolute;top:8px;left:0;width:15px;height:15px;background:var(--cream);border:4px solid var(--forest);border-radius:50%}.vm-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.vm-card{padding:38px;border-radius:28px;background:#fff;color:var(--charcoal)}.vm-card:nth-child(2){background:#e9f0e5}.cta-panel{position:relative;padding:60px;border-radius:36px;background:linear-gradient(125deg,var(--forest),var(--navy));color:#fff;overflow:hidden}.cta-panel h2{color:#fff;max-width:720px}.cta-panel:after{content:"";position:absolute;width:320px;height:320px;border:55px solid rgba(255,255,255,.06);border-radius:50%;right:-90px;top:-110px}
.page-hero{padding:92px 0 76px;background:linear-gradient(145deg,#edf4e9,var(--cream));border-bottom:1px solid var(--border)}.page-hero.tech{background:linear-gradient(135deg,var(--navy),#214f66);color:#dce7ef}.page-hero.tech h1,.page-hero.tech .eyebrow{color:#fff}.breadcrumbs{font-size:.82rem;font-weight:700;margin-bottom:28px}.breadcrumbs a{color:var(--forest)}.tech .breadcrumbs a{color:#b9d8e5}.value-grid,.focus-grid,.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.value-card{min-height:180px}.focus-block{display:grid;grid-template-columns:.65fr 1.35fr;gap:50px;padding:44px 0;border-top:1px solid var(--border)}.focus-meta{display:grid;grid-template-columns:1fr 1fr;gap:16px}.info-box{padding:20px;background:#fff;border:1px solid var(--border);border-radius:18px}.info-box h4{font-size:.77rem;text-transform:uppercase;letter-spacing:.08em}.relationship{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:14px}.relationship .node{padding:20px 26px;background:#fff;color:var(--navy);border-radius:16px;font-weight:900;text-align:center}.relationship .arrow{font-size:1.7rem;color:var(--blue)}
.contact-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:50px}.contact-list{list-style:none;padding:0;margin:25px 0}.contact-list li{padding:14px 0;border-bottom:1px solid var(--border)}.form-card{padding:36px;background:#fff;border:1px solid var(--border);border-radius:28px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field.full{grid-column:1/-1}.field label{display:block;font-size:.85rem;font-weight:800;margin-bottom:7px}.field input,.field select,.field textarea{width:100%;border:1px solid #bdcabe;border-radius:11px;padding:12px;background:#fbfdfb;color:var(--charcoal)}.field textarea{min-height:145px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid rgba(105,168,79,.25);border-color:var(--forest)}.check{display:flex;gap:10px;align-items:flex-start}.check input{margin-top:6px}.form-message{display:none;margin-top:18px;padding:14px;border-radius:12px;background:#e5f3e6;color:#174d3a}.form-message.show{display:block}.policy{max-width:820px}.policy h2{font-size:1.65rem;margin-top:2em}.policy .notice{padding:20px;border-left:4px solid var(--gold);background:#fff}
.site-footer{background:#102d26;color:#cfddd7;padding:70px 0 25px}.footer-grid{display:grid;grid-template-columns:1.7fr .8fr .8fr 1fr;gap:42px}.site-footer .brand-copy strong,.site-footer h3{color:#fff}.site-footer h3{font-size:.82rem;text-transform:uppercase;letter-spacing:.1em}.footer-links{list-style:none;padding:0}.footer-links a{text-decoration:none}.footer-links a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.12);padding-top:22px;margin-top:40px;font-size:.78rem}.socials{display:flex;gap:10px}.socials a{display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(255,255,255,.25);border-radius:50%;text-decoration:none}.back-top{position:fixed;right:22px;bottom:22px;width:46px;height:46px;border:0;border-radius:50%;background:var(--gold);color:#182b24;font-weight:900;box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:.2s;z-index:50}.back-top.show{opacity:1;pointer-events:auto}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:none}.not-found{min-height:100vh;display:grid;place-items:center;text-align:center;padding:40px;background:radial-gradient(circle at 50% 70%,#dfeeda,transparent 35%),var(--cream)}.not-found .code{font:900 clamp(6rem,22vw,14rem)/.8 Manrope;color:rgba(23,77,58,.11)}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
.tech-logo-panel{background:#fff;border-radius:16px;padding:8px;margin-bottom:30px}.tech-lede{color:#dce7ef}.two-column-values{grid-template-columns:1fr 1fr}.hero .eyebrow-after-badge{margin-top:28px}.development-notice{padding:20px;border-left:4px solid var(--gold);background:var(--cream)}.not-found .brand{justify-content:center}.not-found img{margin:-30px auto 25px;max-width:420px}.not-found h1{font-size:clamp(2rem,5vw,4rem)}
@media(max-width:480px){.two-column-values{grid-template-columns:1fr}}
