:root{--green:#079447;--green2:#087b3c;--mint:#eaf8f1;--ink:#07362a;--muted:#60736c;--white:#fff;--line:#dfeae4;--dark:#063d30}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:'DM Sans',sans-serif;line-height:1.55}.nav{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 6vw;border-bottom:1px solid #edf2ef;position:sticky;top:0;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);z-index:20}.brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font:800 22px Manrope,sans-serif}.logo{width:31px;height:35px;position:relative;display:inline-block;color:var(--green)}.logo-p{position:absolute;left:3px;top:5px;width:22px;height:27px;border-left:6px solid currentColor;border-top:6px solid currentColor;border-radius:13px 13px 0 0}.logo-head{position:absolute;width:7px;height:7px;border-radius:50%;background:currentColor;left:11px;top:10px;z-index:2}.logo-dots{position:absolute;width:4px;height:4px;border-radius:50%;background:currentColor;left:11px;top:21px;box-shadow:0 7px currentColor,0 14px currentColor}.logo.small{transform:scale(.75);transform-origin:left center;width:24px}.nav nav{display:flex;align-items:center;gap:28px}.nav nav a{color:#49625a;text-decoration:none;font-size:14px;font-weight:600}.nav nav a.active{color:var(--green)}.btn{display:inline-flex;gap:18px;align-items:center;background:var(--green);color:#fff!important;padding:13px 20px;border-radius:999px;text-decoration:none;font-weight:700;font-size:14px;box-shadow:0 10px 25px rgba(7,148,71,.18);transition:.2s}.btn:hover{transform:translateY(-2px);background:var(--green2)}.btn-sm{padding:9px 16px}.btn-light{background:#fff;color:var(--dark)!important}.menu{display:none;background:none;border:0;font-size:24px}.section{padding:92px 7vw}.hero{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;min-height:650px}.eyebrow{font-size:12px;letter-spacing:2px;color:var(--green);font-weight:800;margin:0 0 16px}.eyebrow.light{color:#8ee1b7}h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.1;margin:0 0 22px}h1{font-size:clamp(42px,5vw,72px);letter-spacing:-2.5px}h1 span,h2 span{color:var(--green)}h2{font-size:clamp(32px,4vw,48px);letter-spacing:-1.5px}h3{font-size:19px}.lead{font-size:18px;color:var(--muted);max-width:620px}.actions{display:flex;gap:25px;align-items:center;margin:32px 0}.text-link,.arrow-link{color:var(--ink);font-weight:700;text-decoration:none}.text-link span,.arrow-link span{color:var(--green);margin-left:8px}.trust{font-size:12px;color:#71827c;display:flex;gap:9px;align-items:center;flex-wrap:wrap}.trust span{color:var(--green);font-weight:800}.trust i{width:4px;height:4px;border-radius:50%;background:#b9c9c2}.hero-media{position:relative;background:var(--mint);border-radius:34px;overflow:hidden;min-height:500px}.hero-media img{width:100%;height:100%;object-fit:cover;display:block}.score-card{position:absolute;right:22px;top:28px;background:#fff;border-radius:16px;padding:12px 16px;display:flex;gap:10px;align-items:center;box-shadow:0 15px 35px #07362a1b}.score-card .check{background:var(--green);color:#fff;width:28px;height:28px;border-radius:50%;display:grid;place-items:center}.score-card small{display:block;color:#73837d}.score-card strong{display:block}.feature-strip{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:0 7vw}.feature-strip>div{padding:35px 25px;border-right:1px solid var(--line)}.feature-strip>div:first-child{border-left:1px solid var(--line)}.feature-strip b,.num{color:var(--green);font-size:12px;letter-spacing:1px}.feature-strip p{color:var(--muted);font-size:14px;margin:0}.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:center}.split .copy p:not(.eyebrow){color:var(--muted);max-width:530px;font-size:17px}.compare{position:relative;background:var(--mint);border-radius:28px;overflow:hidden}.compare img{width:100%;display:block}.compare-label{position:absolute;bottom:20px;padding:9px 13px;border-radius:99px;background:#fff;font-size:12px;font-weight:800;box-shadow:0 8px 20px #07362a1a}.compare-label.bad{left:20px}.compare-label.good{right:20px;color:var(--green)}.dark-panel,.journey{background:var(--dark);color:#fff;border-radius:32px;margin:0 7vw 92px;padding:60px 70px;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.dark-panel p,.journey p{color:#bdd0c8;max-width:540px}.device{border-radius:24px;overflow:hidden;background:#0a4a39}.device img{width:100%;display:block}.cta{text-align:center;padding-top:60px;padding-bottom:100px}.cta p:not(.eyebrow){color:var(--muted);max-width:600px;margin:0 auto 25px}.page-hero{display:grid;grid-template-columns:1fr .65fr;gap:80px;align-items:center;background:linear-gradient(180deg,#f5fcf8,#fff)}.page-hero h1{max-width:800px}.page-hero img{width:100%;max-height:520px;object-fit:cover;border-radius:30px}.solutions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);padding:0;background-color:var(--line)}.solutions-grid article{background:#fff;padding:45px;min-height:290px}.solutions-grid h2{font-size:26px;margin-top:45px}.solutions-grid p{color:var(--muted)}.tag{font-size:10px;letter-spacing:1.5px;color:var(--green);font-weight:800}.technology{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.technology-img img{width:100%;border-radius:30px}.stack>div{display:flex;gap:22px;padding:18px 0;border-top:1px solid var(--line)}.stack b{color:var(--green);font-size:12px}.stack strong,.stack small{display:block}.stack small{color:var(--muted);margin-top:3px}.journey{margin-bottom:50px}.journey img{width:100%;border-radius:22px;max-height:340px;object-fit:cover}.journey h2{font-size:40px}footer{background:#052f25;color:#b9cec6;padding:35px 7vw;display:flex;justify-content:space-between;align-items:center;font-size:12px;letter-spacing:.4px;gap:20px;flex-wrap:wrap}.footer-links{display:flex;gap:22px}.footer-links a{color:#b9cec6;text-decoration:none;font-weight:600}.footer-links a:hover{color:#fff}.footer-brand{display:flex;align-items:center;gap:2px;color:#fff;font-size:16px}.footer-brand .logo{color:#fff}.footer-brand .small{margin-right:-3px}@media(max-width:900px){.nav nav{display:none}.menu{display:block;color:var(--ink)}.hero,.split,.dark-panel,.page-hero,.technology{grid-template-columns:1fr;gap:40px}.hero{padding-top:55px}.feature-strip{grid-template-columns:1fr 1fr}.feature-strip>div:nth-child(3){border-left:1px solid var(--line)}.solutions-grid{grid-template-columns:1fr 1fr}.dark-panel,.journey{margin-left:4vw;margin-right:4vw;padding:40px}.section{padding:70px 5vw}footer{flex-direction:column;gap:15px;text-align:center}}@media(max-width:560px){h1{font-size:42px}.hero-media{min-height:380px}.feature-strip,.solutions-grid{grid-template-columns:1fr}.feature-strip>div{border-left:1px solid var(--line)!important}.actions{align-items:flex-start;flex-direction:column}.section{padding:58px 5vw}.dark-panel,.journey{padding:28px;margin-left:3vw;margin-right:3vw;border-radius:24px}}
.device-points{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0 28px}.device-points span{border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.07);color:#e7f5ef;padding:8px 12px;border-radius:999px;font-size:12px;font-weight:700}.technology-img img{background:#f4fcf8;box-shadow:0 22px 55px rgba(7,54,42,.10)}.journey img{background:#0a4a39}.page-hero img{background:#eef9f3}

/* ===== Stats band ===== */
.stats{background:var(--mint);border-radius:32px;margin:0 7vw 92px;padding:64px 60px;display:grid;grid-template-columns:1.1fr repeat(3,1fr);gap:40px;align-items:center}
.stats-intro h2{font-size:30px;margin-bottom:10px;max-width:340px}
.stats-intro p{color:var(--muted);font-size:15px;max-width:320px;margin:0}
.stat b{display:block;font:800 46px Manrope,sans-serif;color:var(--green2);letter-spacing:-1.5px;line-height:1}
.stat span{display:block;color:var(--muted);font-size:13px;margin-top:8px;max-width:170px}
.stats-note{grid-column:1/-1;font-size:11px;color:#8aa39a;margin-top:6px}

/* ===== Video / demo section ===== */
.demo{padding:0 7vw 92px}
.demo-head{max-width:640px;margin:0 auto 44px;text-align:center}
.demo-head h2{margin-bottom:14px}
.demo-head p{color:var(--muted);font-size:17px}
.demo-player{position:relative;max-width:980px;margin:0 auto;border-radius:28px;overflow:hidden;background:var(--dark);aspect-ratio:16/8.2;cursor:pointer;isolation:isolate}
.demo-player img{width:100%;height:100%;object-fit:cover;opacity:.55;display:block}
.demo-player::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#062a20 5%,transparent 55%)}
.demo-play{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;color:#fff;z-index:2;border:0;background:none;width:100%;cursor:pointer}
.demo-play .ring{width:76px;height:76px;border-radius:50%;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.4);display:grid;place-items:center;backdrop-filter:blur(6px);transition:.25s}
.demo-play .ring svg{margin-left:4px}
.demo-player:hover .ring{background:var(--green);border-color:var(--green);transform:scale(1.06)}
.demo-play b{font:700 15px Manrope,sans-serif;letter-spacing:.2px}
.demo-play small{color:#bcd4cb;font-size:12.5px}
.demo-chip{position:absolute;left:24px;top:24px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.3);color:#eafaf1;font-size:11px;font-weight:700;letter-spacing:1px;padding:7px 12px;border-radius:99px;z-index:2;backdrop-filter:blur(4px)}

/* Modal demo simulation */
.demo-modal{position:fixed;inset:0;background:rgba(4,20,15,.78);display:none;align-items:center;justify-content:center;z-index:100;padding:5vw}
.demo-modal.open{display:flex}
.demo-modal-box{background:#fff;border-radius:26px;max-width:720px;width:100%;overflow:hidden;box-shadow:0 40px 90px rgba(0,0,0,.4)}
.demo-modal-top{display:flex;justify-content:space-between;align-items:center;padding:20px 26px;border-bottom:1px solid var(--line)}
.demo-modal-top b{font:800 15px Manrope,sans-serif}
.demo-modal-top button{background:var(--mint);border:0;width:32px;height:32px;border-radius:50%;font-size:16px;cursor:pointer;color:var(--ink)}
.demo-stage{background:var(--dark);padding:50px 40px 44px;display:flex;flex-direction:column;align-items:center;gap:26px}
.spine-wrap{width:120px;height:190px;position:relative}
.spine-line{width:100%;height:100%}
.spine-dot{fill:#ff8a73;transition:fill .6s ease, cy .6s ease}
.demo-stage.corrected .spine-dot{fill:#3fe08f}
.spine-path{stroke:#ff8a73;transition:stroke .6s ease, d .6s ease}
.demo-stage.corrected .spine-path{stroke:#3fe08f}
.demo-status{display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);padding:10px 18px;border-radius:99px;color:#fff;font-size:13px;font-weight:700}
.demo-status i{width:9px;height:9px;border-radius:50%;background:#ff8a73;transition:.4s}
.demo-stage.corrected .demo-status i{background:#3fe08f}
.demo-caption{color:#bcd4cb;font-size:13px;text-align:center;max-width:340px}
.demo-modal-actions{padding:20px 26px;display:flex;justify-content:center}
.demo-replay{border:1px solid var(--line);background:#fff;padding:10px 20px;border-radius:99px;font-weight:700;font-size:13px;cursor:pointer;color:var(--ink)}

/* ===== Use case grid ===== */
.usecase-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.usecase-card{border:1px solid var(--line);border-radius:26px;padding:36px 30px;background:#fff;transition:.2s;display:flex;flex-direction:column;gap:16px}
.usecase-card:hover{box-shadow:0 20px 45px rgba(7,54,42,.08);transform:translateY(-3px)}
.usecase-icon{width:52px;height:52px;border-radius:16px;background:var(--mint);display:grid;place-items:center;color:var(--green2)}
.usecase-card h3{font-size:20px;margin:0}
.usecase-card p{color:var(--muted);font-size:14.5px;margin:0}
.usecase-quote{margin-top:auto;padding-top:16px;border-top:1px solid var(--line);font-size:13.5px;color:var(--ink);font-style:italic}
.usecase-quote b{display:block;font-style:normal;font-size:12px;color:var(--green2);margin-top:6px;font-weight:800}
.usecase-scene{border-radius:26px;overflow:hidden;background:var(--mint);aspect-ratio:16/10;background-size:400% 100%;background-repeat:no-repeat}

/* ===== Testimonials ===== */
.testimonials{background:var(--mint);border-radius:32px;margin:0 7vw 92px;padding:64px 60px}
.testimonials-head{max-width:520px;margin-bottom:40px}
.testimonials-head h2{margin-bottom:10px}
.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.testimonial-card{background:#fff;border-radius:20px;padding:28px 26px;display:flex;flex-direction:column;gap:16px;box-shadow:0 12px 30px rgba(7,54,42,.05)}
.stars{color:#f5a623;font-size:14px;letter-spacing:2px}
.testimonial-card p{margin:0;color:var(--ink);font-size:14.5px;line-height:1.6}
.testimonial-who{display:flex;align-items:center;gap:12px;margin-top:auto}
.testimonial-avatar{width:38px;height:38px;border-radius:50%;background:var(--dark);color:#fff;display:grid;place-items:center;font:800 13px Manrope,sans-serif}
.testimonial-who b{display:block;font-size:13px}
.testimonial-who span{display:block;font-size:12px;color:var(--muted)}

/* ===== Trust band ===== */
.trust-band{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:24px;overflow:hidden;margin-bottom:0}
.trust-band>div{background:#fff;padding:30px 26px;display:flex;flex-direction:column;gap:12px}
.trust-band svg{color:var(--green2)}
.trust-band h4{margin:0;font:800 14.5px Manrope,sans-serif}
.trust-band p{margin:0;color:var(--muted);font-size:13px}

/* ===== FAQ ===== */
.faq{max-width:780px;margin:0 auto}
.faq-item{border-bottom:1px solid var(--line)}
.faq-q{width:100%;text-align:left;background:none;border:0;padding:24px 4px;display:flex;justify-content:space-between;align-items:center;gap:20px;cursor:pointer;font:700 16.5px Manrope,sans-serif;color:var(--ink)}
.faq-q .plus{width:26px;height:26px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;flex:none;position:relative;transition:.25s}
.faq-q .plus::before,.faq-q .plus::after{content:"";position:absolute;background:var(--ink)}
.faq-q .plus::before{width:10px;height:1.6px}
.faq-q .plus::after{width:1.6px;height:10px;transition:.25s}
.faq-item.open .plus{background:var(--green);border-color:var(--green)}
.faq-item.open .plus::before,.faq-item.open .plus::after{background:#fff}
.faq-item.open .plus::after{transform:rotate(90deg);opacity:0}
.faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease}
.faq-a p{color:var(--muted);font-size:14.5px;padding:0 4px 24px;margin:0;max-width:640px}
.faq-item.open .faq-a{max-height:240px}

/* ===== Science / evidence page ===== */
.science-hero{background:linear-gradient(180deg,#f5fcf8,#fff);text-align:center}
.science-hero h1{max-width:820px;margin:0 auto 20px}
.science-hero p{max-width:600px;margin:0 auto}
.evidence-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.evidence-card{border:1px solid var(--line);border-radius:24px;padding:34px}
.evidence-card .num{display:block;margin-bottom:16px}
.evidence-card h3{font-size:18px}
.evidence-card p{color:var(--muted);font-size:14px;margin:0}

/* ===== Contact form ===== */
.contact-wrap{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}
.contact-form{display:grid;gap:16px}
.contact-form label{font-size:13px;font-weight:700;color:var(--ink);display:block;margin-bottom:7px}
.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:13px 15px;font:15px 'DM Sans',sans-serif;color:var(--ink);background:#fafefb}
.contact-form textarea{resize:vertical;min-height:110px}
.contact-form button{justify-self:start;border:0;cursor:pointer}
.contact-side p{color:var(--muted)}
.contact-list{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:18px}
.contact-list li{display:flex;gap:14px;align-items:flex-start}
.contact-list svg{color:var(--green2);flex:none;margin-top:2px}
.contact-list b{display:block;font-size:14px}
.contact-list span{display:block;color:var(--muted);font-size:13px}

@media(max-width:900px){
.stats{grid-template-columns:1fr 1fr;padding:44px 30px;margin:0 4vw 70px}
.stats-intro{grid-column:1/-1}
.usecase-grid,.testimonial-grid,.evidence-grid{grid-template-columns:1fr 1fr}
.trust-band{grid-template-columns:1fr 1fr}
.testimonials{margin:0 4vw 70px;padding:44px 30px}
.contact-wrap{grid-template-columns:1fr;gap:40px}
.demo-stage{padding:36px 24px}
}
@media(max-width:560px){
.stats{grid-template-columns:1fr}
.usecase-grid,.testimonial-grid,.evidence-grid,.trust-band{grid-template-columns:1fr}
.demo-player{aspect-ratio:16/13}
}
