@font-face{font-family:Inter;font-style:normal;font-weight:400 700;font-display:swap;src:url('../assets/fonts/inter-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

@font-face{font-family:Inter;font-style:normal;font-weight:400 700;font-display:swap;src:url('../assets/fonts/inter-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

:root{--ink:#172526;--muted:#536667;--line:#dce6e2;--paper:#f5f8f5;--white:#fff;--teal:#126b60;--teal-dark:#0c4e49;--mint:#d8eee5;--lime:#d5ed75;--shadow:0 18px 55px rgba(25,65,57,.09);font-family:'Inter',Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizeLegibility}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-size:calc(16px * 1.0025);line-height:1.65;background:var(--paper)}
a{color:var(--teal-dark);text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:3px}
button,input,select,textarea{font:inherit}
:focus-visible{outline:3px solid #abcb42;outline-offset:3px;border-radius:3px}
.container,.nav-wrap{width:min(1160px,calc(100% - 48px));margin-inline:auto}
.skip{position:absolute;left:-100vw;top:10px;background:#fff;padding:10px;z-index:200}
.skip:focus{left:10px}
.site-header{height:78px;border-bottom:1px solid rgba(21,59,54,.1);background:rgba(245,248,245,.93);position:sticky;top:0;z-index:20;backdrop-filter:blur(14px)}
.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between;gap:30px}
.brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);font:700 calc(20px * 1.0025) 'Inter',sans-serif;letter-spacing:-.04em;white-space:nowrap}
.brand:hover{text-decoration:none}
.brand-mark{width:33px;height:33px;border-radius:10px;background:var(--teal-dark);display:grid;place-items:center;color:white;font:700 calc(18px * 1.0025) 'Inter',sans-serif;letter-spacing:-.1em}
.brand-mark span{color:var(--lime)}
nav#site-nav{display:flex;align-items:center;gap:clamp(10px,1.5vw,21px)}
nav#site-nav>a{font-size:calc(13px * 1.0025);font-weight:600;color:#33494a;white-space:nowrap}
nav#site-nav>a[aria-current=page]{color:var(--teal);text-decoration:underline;text-underline-offset:7px}
.language{display:inline-flex;gap:4px;border-left:1px solid var(--line);padding-left:12px}
.language a{font-size:calc(11px * 1.0025);font-weight:700;color:var(--muted);padding:4px}
.language a[aria-current=true]{color:var(--teal-dark)}
.menu-toggle{display:none;background:none;border:1px solid var(--line);border-radius:8px;width:42px;height:42px;color:var(--ink)}
.hero{min-height:560px;display:grid;grid-template-columns:1fr .9fr;gap:70px;align-items:center;padding-block:78px}
.eyebrow{font:700 calc(11px * 1.0025) 'Inter',sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--teal);margin:0 0 17px}
.hero h1,.page-heading h1{font:600 clamp(calc(43px * 1.0025),calc(5.2vw * 1.0025),calc(70px * 1.0025))/1.04 'Inter',sans-serif;letter-spacing:-.055em;margin:0 0 24px;max-width:700px}
.hero-lede,.page-heading .lead{font-size:calc(20px * 1.0025);line-height:1.55;max-width:660px;color:#425959}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:31px}
.button{display:inline-flex;justify-content:center;align-items:center;background:var(--teal-dark);border:1px solid var(--teal-dark);color:#fff!important;border-radius:4px;padding:13px 20px;font-weight:700;cursor:pointer;transition:transform .15s,background .15s}
.button:hover{background:#083f3c;transform:translateY(-2px);text-decoration:none}
.button.secondary{background:transparent;color:var(--teal-dark)!important}
.button.secondary:hover{background:#e8f1ed}
.button.light{background:var(--lime);border-color:var(--lime);color:var(--ink)!important}
.hero-note{margin-top:38px;font:600 calc(10px * 1.0025) 'Inter',sans-serif;letter-spacing:.17em;color:#65817b}
.hero-visual{height:355px;position:relative;border-radius:48% 42% 46% 40%;background:radial-gradient(circle at 50% 50%,#e7f4ed 0 20%,transparent 21%),linear-gradient(135deg,#e5f1eb,#f1f6e7);overflow:hidden}
.hero-visual:before,.hero-visual:after{content:"";position:absolute;border:1px solid rgba(15,88,77,.16);border-radius:50%;inset:36px 70px;transform:rotate(-25deg)}
.hero-visual:after{inset:67px 35px;transform:rotate(33deg)}
.orbit{position:absolute;border:1px dashed rgba(15,88,77,.27);border-radius:50%;inset:50px 26px;transform:rotate(58deg)}
.orbit-two{inset:82px 52px;transform:rotate(-37deg)}
.node{position:absolute;z-index:1;display:grid;place-items:center;background:#fff;border:1px solid #d4e5dc;border-radius:50%;box-shadow:var(--shadow);font:700 calc(13px * 1.0025) 'Inter',sans-serif;color:var(--teal-dark)}
.node-core{width:116px;height:116px;left:calc(50% - 58px);top:calc(50% - 58px);background:var(--teal-dark);color:#fff;font-size:calc(22px * 1.0025)}
.node-core small{font-size:calc(7px * 1.0025);letter-spacing:.15em;color:var(--lime);margin-top:-31px}
.node-a{width:58px;height:58px;left:15%;top:30%}
.node-b{width:54px;height:54px;right:14%;top:22%}
.node-c{width:62px;height:62px;right:20%;bottom:15%}
.visual-caption{position:absolute;bottom:24px;left:0;right:0;text-align:center;font:600 calc(10px * 1.0025) 'Inter',sans-serif;letter-spacing:.13em;color:#66837a;text-transform:uppercase}
.section{padding:78px 0}
.section:nth-of-type(odd){background:#edf4ef}
.section-head{max-width:760px;margin-bottom:31px}
.section h2,.content-page h2,.final-cta h2{font:600 clamp(calc(30px * 1.0025),calc(3.4vw * 1.0025),calc(44px * 1.0025))/1.13 'Inter',sans-serif;letter-spacing:-.04em;margin:0 0 15px}
.section-head>p{color:var(--muted);font-size:calc(18px * 1.0025);max-width:700px;margin:0}
.cards{display:grid;gap:14px}
.problems{grid-template-columns:repeat(4,1fr)}
.card{padding:24px;background:rgba(255,255,255,.86);border:1px solid var(--line);border-radius:8px;box-shadow:0 4px 22px rgba(28,69,60,.025)}
.card h2,.card h3{font:600 calc(20px * 1.0025)/1.25 'Inter',sans-serif;letter-spacing:-.025em;margin:0 0 11px;color:var(--ink)}
.card p{margin:0;color:var(--muted)}
.problems .card{min-height:150px}
.problems .card h3{color:#76a299;font-size:calc(12px * 1.0025);letter-spacing:.1em}
.audience-grid{grid-template-columns:repeat(3,1fr)}
.audience{padding:31px;min-height:230px}
.audience h3{font-size:calc(28px * 1.0025)}
.eyebrow a{color:inherit}
.text-link{display:inline-flex;gap:10px;margin-top:19px;font-weight:700;font-size:calc(14px * 1.0025)}
.solution-grid{grid-template-columns:repeat(3,1fr)}
.solution{min-height:230px}
.solution h3{font-size:calc(20px * 1.0025)}
.solution .eyebrow,.audience .eyebrow{margin-bottom:22px}
.section-link{margin-top:24px}
.faq{max-width:850px;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line);padding:19px 2px}
.faq summary{font:600 calc(18px * 1.0025) 'Inter',sans-serif;cursor:pointer;list-style:none;padding-right:40px;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:'+';position:absolute;right:4px;top:-3px;font-size:calc(25px * 1.0025);color:var(--teal)}
.faq details[open] summary:after{content:'−'}
.faq details p{max-width:720px;color:var(--muted);margin:13px 0 3px}
.final-cta{padding:67px 0;background:var(--teal-dark);color:white}
.final-cta .container{display:flex;justify-content:space-between;align-items:center;gap:25px}
.final-cta h2{max-width:740px;margin:0}
.content-page{padding-block:28px 90px}
.breadcrumb{display:flex;gap:10px;align-items:center;font-size:calc(13px * 1.0025);color:#7b8b88;margin:5px 0 40px}
.breadcrumb a{color:var(--teal)}
.page-heading{padding:28px 0 42px;max-width:870px}
.page-heading h1{font-size:clamp(calc(40px * 1.0025),calc(5vw * 1.0025),calc(62px * 1.0025))}
.page-heading>p:not(.eyebrow){font-size:calc(18px * 1.0025);color:var(--muted);max-width:750px}
.two-col{grid-template-columns:repeat(2,1fr);margin:15px 0 44px}
.two-col .card{padding:28px}
.highlight{margin:46px 0;padding:34px;background:#e8f2ec;border-left:4px solid #94b7a9}
.highlight h2{font-size:calc(30px * 1.0025)}
.highlight>p{color:#4d6260}
.check-list{padding-left:20px;display:grid;grid-template-columns:repeat(2,1fr);gap:12px 28px;color:#344c4a}
.check-list li::marker{color:var(--teal)}
.inline-links{margin-top:27px!important;font-weight:600}
.inline-links a{padding:4px}
.solutions-page{margin-bottom:20px}
.solutions-page .solution{display:flex;flex-direction:column;align-items:flex-start}
.solutions-page .solution .text-link{margin-top:auto;padding-top:24px}
.steps-section{margin-top:60px}
.steps{padding:0;list-style:none;border-top:1px solid var(--line)}
.steps li{display:flex;align-items:center;gap:24px;padding:18px 0;border-bottom:1px solid var(--line);font-size:calc(18px * 1.0025)}
.steps li span{font:700 calc(12px * 1.0025) 'Inter',sans-serif;color:var(--teal)}
.contact-form{max-width:760px;padding:30px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.form-grid label{display:flex;flex-direction:column;gap:7px;font-size:calc(14px * 1.0025);font-weight:700}
.form-grid label:nth-child(5),.form-grid label:nth-child(6){grid-column:1/-1}
.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid #bdceca;border-radius:4px;background:#fff;padding:12px;color:var(--ink)}
.contact-form textarea{resize:vertical}
.consent{display:flex;align-items:flex-start;gap:10px;margin:20px 0;font-size:calc(14px * 1.0025)}
.consent input{width:18px;height:18px;flex:0 0 auto;margin:3px 0}
.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.form-status{color:var(--teal-dark);font-weight:700}
.policy-copy{max-width:750px;padding-bottom:140px;color:var(--muted)}
.technologies-page .page-heading{padding-bottom:34px}
.technology-section{display:grid;grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr);gap:48px;padding:38px 0;border-top:1px solid var(--line)}
.technology-copy{max-width:440px}
.technology-copy .eyebrow{margin-bottom:12px}
.technology-copy h2{font-size:clamp(26px,3vw,34px);margin-bottom:13px}
.technology-copy>p:last-child{color:var(--muted);margin-top:0}
.technology-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.technology-item{padding:18px 20px;background:rgba(255,255,255,.72);border:1px solid var(--line);border-radius:7px;min-width:0}
.technology-item h3{font-size:17px;line-height:1.3;margin:0 0 8px;overflow-wrap:anywhere}
.technology-item p{margin:0;color:var(--muted);font-size:14px;line-height:1.55}
.technology-tools{align-items:center}
.tool-list{list-style:none;display:flex;gap:10px;flex-wrap:wrap;padding:0;margin:0}
.tool-list li{padding:10px 15px;border:1px solid var(--line);border-radius:4px;background:#fff;font-weight:650}
.technology-cta{padding:54px 0;background:var(--teal-dark);color:#fff}
.technology-cta .container{display:flex;justify-content:space-between;align-items:center;gap:30px}
.technology-cta h2{font-size:clamp(29px,3.5vw,42px);line-height:1.15;letter-spacing:-.04em;margin:0 0 14px;max-width:700px}
.technology-cta p{max-width:760px;color:#d2e2dd;margin:0}
.technology-cta .button{flex-shrink:0}
.footer{background:#122927;color:#c3d4cf;padding:54px 0}
.footer-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:28px}
.footer-brand{color:white}
.footer p{font-size:calc(14px * 1.0025);color:#a9c0b9}
.footer nav{display:grid;grid-template-columns:repeat(3,1fr);gap:12px 18px;align-content:start}
.footer nav a{color:#d5e1dd;font-size:calc(13px * 1.0025)}
.footer .copyright{grid-column:1/-1;border-top:1px solid #31504a;padding-top:20px;margin:10px 0 0;font-size:calc(12px * 1.0025)}

@media(max-width:1050px){nav#site-nav{gap:10px}
nav#site-nav>a{font-size:calc(12px * 1.0025)}
.hero{gap:35px}
.problems{grid-template-columns:repeat(3,1fr)}
}

@media(max-width:780px){.container,.nav-wrap{width:min(100% - 34px,600px)}
.site-header{height:68px}
.menu-toggle{display:block;position:relative}
.menu-toggle span,.menu-toggle span:before,.menu-toggle span:after{position:absolute;left:11px;width:18px;height:2px;background:var(--ink);content:''}
.menu-toggle span:before{left:0;top:-6px}
.menu-toggle span:after{left:0;top:6px}
nav#site-nav{display:none;position:absolute;top:67px;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);padding:14px 22px 20px;align-items:stretch;flex-direction:column;gap:0;box-shadow:var(--shadow)}
nav#site-nav.open{display:flex}
nav#site-nav>a{padding:9px 3px;font-size:calc(15px * 1.0025)}
.language{border:0;border-top:1px solid var(--line);padding:10px 0 0;margin-top:5px}
.hero{display:flex;flex-direction:column;align-items:stretch;gap:37px;padding-block:52px 55px;min-height:unset}
.hero h1{font-size:clamp(calc(42px * 1.0025),calc(11vw * 1.0025),calc(58px * 1.0025))}
.hero-lede{font-size:calc(18px * 1.0025)}
.hero-visual{height:300px;max-width:480px;width:100%;align-self:center}
.section{padding:56px 0}
.problems,.solution-grid{grid-template-columns:repeat(2,1fr)}
.audience-grid{grid-template-columns:1fr}
.audience{min-height:unset}
.final-cta .container{display:block}
.final-cta h2{margin-bottom:25px}
.content-page{padding-bottom:65px}
.technology-section{grid-template-columns:1fr;gap:20px;padding:30px 0}
.technology-copy{max-width:700px}
.technology-cta .container{display:block}
.technology-cta .button{margin-top:22px}
.two-col{grid-template-columns:1fr}
.page-heading{padding:14px 0 30px}
.check-list{grid-template-columns:1fr}
.footer-grid{grid-template-columns:1fr}
.footer nav{grid-template-columns:repeat(2,1fr)}
.footer .copyright{grid-column:auto}
}

@media(max-width:480px){.problems,.solution-grid{grid-template-columns:1fr}
.problems .card{min-height:auto}
.card{padding:21px}
.hero-visual{height:270px}
.actions .button{width:100%}
.form-grid{grid-template-columns:1fr}
.form-grid label:nth-child(n){grid-column:auto}
.contact-form{padding:20px}
.steps li{align-items:flex-start}
.section h2,.content-page h2{font-size:calc(31px * 1.0025)}
}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}

.cc-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:32px;background:rgba(12,23,31,.42);backdrop-filter:blur(3px);overflow:auto;animation:ccIn .25s ease}
.cc-modal{width:min(720px,100%);max-height:calc(100svh - 64px);overflow:auto;padding:34px 32px;background:#fff;border:1px solid #d7e5e1;border-radius:30px;box-shadow:0 28px 80px -24px rgba(12,23,31,.5);color:#4b5b68;font:16px/1.55 Inter,system-ui,sans-serif;animation:ccUp .3s cubic-bezier(.22,.61,.36,1)}
@keyframes ccIn{from{opacity:0}}
@keyframes ccUp{from{opacity:0;transform:translateY(10px)}}
.cc-badge{display:inline-flex;align-items:center;gap:9px;margin-bottom:26px;padding:10px 18px;border-radius:999px;background:#e8f4ef;color:var(--teal-dark);font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.cc-badge i{font-style:normal;font-size:18px;color:var(--teal)}
.cc-modal h2{margin:0 0 14px;color:#102631;font:600 clamp(32px,5vw,48px)/1.1 Inter,system-ui,sans-serif;letter-spacing:-.04em}
.cc-modal>p{margin:0;font-size:clamp(16px,2.4vw,20px);line-height:1.55}
.cc-links{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0;color:var(--teal-dark)}
.cc-links a{color:var(--teal-dark);font-size:14px;text-decoration:none}
.cc-links a:hover{text-decoration:underline}
.cc-links span{color:#64737c}
.cc-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:30px}
.cc-button{cursor:pointer;border:1px solid transparent;border-radius:999px;padding:13px 20px;font:700 14px/1.3 Inter,system-ui,sans-serif}
.cc-button.reject{border-color:#75818b;background:#fff;color:#53666c}
.cc-button.secondary{background:#f1f5f3;color:#102631}
.cc-button.accept,.cc-button.save{background:var(--teal-dark);color:#fff}
.cc-button:hover{filter:brightness(.96)}
.cc-card{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:16px;padding:21px 22px;border-radius:20px;background:#edf5f1}
.cc-card h3{margin:0 0 5px;color:#102631;font:650 21px/1.2 Inter,system-ui,sans-serif}
.cc-card p{margin:0;font-size:14px;line-height:1.5}
.cc-switch{position:relative;flex:0 0 auto;width:58px;height:34px}
.cc-switch input{position:absolute;opacity:0;width:1px;height:1px}
.cc-slider{position:absolute;inset:0;cursor:pointer;border-radius:999px;background:#c9d1d3;transition:background .2s}
.cc-slider::before{content:"";position:absolute;left:5px;top:5px;width:24px;height:24px;border-radius:50%;background:#fff;transition:transform .2s}
.cc-switch input:checked+.cc-slider{background:#68a99a}
.cc-switch input:checked+.cc-slider::before{transform:translateX(24px)}
.cc-switch input:focus-visible+.cc-slider{outline:2px solid var(--teal);outline-offset:3px}
.cc-footer-link{cursor:pointer}
@media(max-width:560px){.cc-overlay{padding:16px}.cc-modal{max-height:calc(100svh - 32px);padding:27px 22px;border-radius:24px}.cc-badge{margin-bottom:20px}.cc-actions{margin-top:24px}.cc-button{width:100%;padding:14px}.cc-card{padding:18px 16px}.cc-card h3{font-size:19px}}

.policy-updated{margin:0 0 28px;font-size:13px;color:var(--muted)}
.policy-section{margin:0 0 28px}
.policy-section h2{margin:0 0 12px;font-size:clamp(22px,2.6vw,28px);line-height:1.25}
.policy-section p,.policy-section li{color:var(--muted);line-height:1.7}
.policy-section ul{padding-left:22px}
.policy-section li+li{margin-top:10px}
.policy-section a{color:var(--teal-dark);text-decoration:underline;text-underline-offset:3px}

/* TechBehind visual system: light editorial layout, green technical accents. */
:root{--ink:#102631;--muted:#52666c;--line:#e0eae7;--paper:#f8fbf9;--white:#fff;--teal:#078a70;--teal-dark:#07594f;--mint:#e8f4ef;--lime:#d7f65c;--shadow:0 12px 32px rgba(14,64,55,.07)}
html,body{max-width:100%;overflow-x:clip}
body{background:#fff;color:var(--ink);font-size:calc(15px * 1.0025);line-height:1.5}
.container,.nav-wrap{width:min(1160px,calc(100% - 64px))}
.site-header{height:66px;background:rgba(255,255,255,.94);border-color:#edf1ef}
.nav-wrap{gap:24px}
.brand{font-size:calc(18px * 1.0025);gap:8px}
.brand-mark{width:25px;height:27px;background:none;border-radius:0;display:block}
.brand-mark svg{display:block;width:100%;height:100%}
nav#site-nav{gap:clamp(9px,1.35vw,19px)}
nav#site-nav>a{font-size:calc(11px * 1.0025);font-weight:600;color:#34474d}
nav#site-nav>a[aria-current=page]{position:relative;text-decoration:none;color:#07836c}
nav#site-nav>a[aria-current=page]:after{position:absolute;content:"";height:2px;background:#a5df55;left:0;right:0;bottom:-9px}
.language{gap:1px;padding-left:8px;border-color:#e8eeeb}
.language a{font-size:calc(10px * 1.0025)}
.hero{min-height:415px;grid-template-columns:.95fr 1.05fr;gap:38px;padding-block:48px 39px;position:relative;isolation:isolate}
.hero:before{content:"";position:absolute;z-index:-1;inset:0 calc((1160px - 100vw)/2);background:radial-gradient(ellipse at 82% 45%,rgba(221,241,228,.68),transparent 42%),radial-gradient(circle at 5% 90%,rgba(213,239,231,.45),transparent 18%)}
.hero-copy{position:relative;z-index:2}
.eyebrow{font-size:calc(10px * 1.0025);letter-spacing:.19em;color:#17695e;margin-bottom:15px}
.hero h1,.page-heading h1{font-size:clamp(calc(44px * 1.0025),calc(5vw * 1.0025),calc(66px * 1.0025));font-weight:700;line-height:.99;letter-spacing:-.055em;margin-bottom:15px;max-width:560px}
.hero h1 span{color:#078a70}
.hero-lede,.page-heading .lead{font-size:calc(16px * 1.0025);line-height:1.5;max-width:490px;color:#445c62}
.actions{gap:12px;margin-top:23px}
.button{gap:9px;border-radius:8px;padding:11px 17px;font-size:calc(13px * 1.0025);min-height:43px}
.button:hover{background:#03483f}
.button.secondary{background:rgba(255,255,255,.68);border-color:#76a99d;color:#07594f!important}
.button.secondary:hover{background:#fff}
.hero-note{display:flex;align-items:center;gap:10px;margin-top:22px;font-size:calc(9px * 1.0025);letter-spacing:.16em;color:#78918d}
.hero-note span{width:25px;height:1px;background:#8aa69e;display:block}
.hero-visual{height:350px;border-radius:48%;background:radial-gradient(ellipse at 47% 53%,rgba(210,237,224,.94),rgba(224,241,232,.46) 48%,rgba(255,255,255,.04) 72%);overflow:visible;isolation:isolate}
.hero-visual:before,.hero-visual:after{inset:35px 65px;border-color:rgba(6,103,88,.18);transform:rotate(-23deg)}
.hero-visual:after{inset:66px 38px;transform:rotate(32deg)}
.visual-wash{position:absolute;z-index:-1;inset:10px 2px;background:radial-gradient(ellipse at 58% 45%,rgba(206,234,219,.56),transparent 60%);border-radius:48%}
.visual-wash:before{content:"";position:absolute;inset:18px 8px;background-image:radial-gradient(#93cbb9 .8px,transparent .8px);background-size:13px 13px;mask-image:radial-gradient(ellipse,black,transparent 70%);opacity:.55}
.orbit{border-color:rgba(16,106,91,.28);border-style:solid;inset:42px 30px;transform:rotate(54deg)}
.orbit-two{inset:76px 52px;transform:rotate(-39deg);border-style:dashed}
.orbit-three{position:absolute;border:1px solid rgba(16,106,91,.15);border-radius:50%;inset:21px 95px;transform:rotate(17deg)}
.node{z-index:2;border:0;border-radius:16px;box-shadow:0 12px 24px rgba(26,88,72,.11);color:var(--teal-dark)}
.node-core{width:126px;height:126px;left:calc(50% - 63px);top:calc(50% - 63px);border-radius:27px;background:linear-gradient(145deg,#078b73,#063f3e);color:white;transform:rotate(-12deg);box-shadow:0 18px 35px rgba(5,76,66,.22)}
.node-core .core-mark{display:grid;place-items:center;width:100%;height:100%}
.node-core .icon-tile{height:auto;width:auto;padding:0;background:none;color:#c9f269}
.node-core svg{width:49px;height:49px;stroke:#ccf56b;stroke-width:1.8}
.node-a,.node-b,.node-c{border-radius:15px;width:62px;height:66px;display:flex;flex-direction:column;gap:2px;font-size:calc(16px * 1.0025)}
.node-a span,.node-b span,.node-c span{font-size:calc(21px * 1.0025);line-height:1.15;color:#07866f}
.node-a b,.node-b b,.node-c b{font-size:calc(10px * 1.0025)}
.node-a{left:17%;top:14%}.node-b{right:12%;top:12%}.node-c{right:18%;bottom:12%}
.float-card{position:absolute;z-index:3;background:#fff;border:1px solid rgba(223,236,230,.85);box-shadow:var(--shadow);border-radius:13px}
.float-left{left:0;top:51%;width:90px;height:91px;padding:11px;display:flex;flex-direction:column;justify-content:space-between}
.float-left .icon-tile{width:24px;height:24px;padding:4px;background:transparent;color:#0a9b78}
.float-left .icon-tile svg{width:16px;height:16px}
.mini-bars{height:26px;display:flex;align-items:end;gap:3px}.mini-bars i{width:5px;background:#0da37e;border-radius:2px 2px 0 0}.mini-bars i:nth-child(1){height:9px}.mini-bars i:nth-child(2){height:15px}.mini-bars i:nth-child(3){height:20px}.mini-bars i:nth-child(4){height:25px}
.float-right{right:0;top:49%;width:82px;padding:12px 13px;display:grid;gap:9px}
.float-right i{height:5px;width:100%;border-radius:5px;background:#e0eee8;position:relative}
.float-right i:before{content:"";position:absolute;left:0;top:-1px;width:7px;height:7px;border-radius:50%;background:#20aa7d}
.section{position:relative;padding:27px 0 29px;isolation:isolate;overflow:hidden}
.section .container{position:relative;z-index:1}
.section-head{max-width:none;display:grid;grid-template-columns:1fr .9fr;align-items:center;gap:35px;margin:0 0 17px}
.section h2,.content-page h2,.final-cta h2{font-size:clamp(calc(25px * 1.0025),calc(3vw * 1.0025),calc(32px * 1.0025));line-height:1.14;letter-spacing:-.045em;margin:0}
.section-head>p{font-size:calc(13px * 1.0025);line-height:1.5;max-width:530px}
.problem-section{background:linear-gradient(105deg,#f1f8f5,#edf6f1 58%,#f4f8f4)}
.problem-section:before,.audience-section:before,.solutions-section:before,.faq-section:before{content:"";position:absolute;z-index:-1;inset:0;background-image:radial-gradient(rgba(68,164,135,.22) .8px,transparent .8px);background-size:12px 12px;mask-image:linear-gradient(90deg,black,transparent 17%,transparent 88%,black);opacity:.35}
.cards{gap:12px}
.card{background:rgba(255,255,255,.91);border-color:rgba(223,233,229,.9);border-radius:9px;box-shadow:0 5px 18px rgba(25,75,64,.045);padding:17px}
.card h2,.card h3{font-size:calc(16px * 1.0025);line-height:1.32;letter-spacing:-.025em;margin:0 0 8px}
.card p{font-size:calc(13px * 1.0025);line-height:1.46;color:#52666c}
.problems{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.problem-card{min-height:112px;display:grid;grid-template-columns:39px 1fr;grid-template-rows:35px auto;column-gap:10px;align-items:center;padding:12px 15px}
.icon-tile{width:39px;height:39px;border-radius:12px;background:#eff8f4;color:#078b70;display:inline-grid;place-items:center;flex:none}
.icon-tile svg{width:21px;height:21px}
.problem-card .icon-tile{grid-row:1;grid-column:1}
.card-number{font-size:calc(9px * 1.0025);font-weight:700;letter-spacing:.11em;color:#809399}
.problem-card .card-number{grid-row:1;grid-column:2}
.problem-card h3{grid-row:2;grid-column:1/-1;font-size:calc(13px * 1.0025);font-weight:600;margin:8px 0 0}
.problems .card h3{color:var(--ink);font-size:calc(13px * 1.0025);letter-spacing:-.01em}
.audience-section{overflow:visible;padding-block:31px 33px}
.audience-section{background:#fff}
.audience-section:after{content:"";position:absolute;z-index:-1;right:-68px;top:45px;width:180px;height:250px;border-radius:46% 0 0 40%;background:linear-gradient(145deg,#0a806e,#062d32);box-shadow:inset 18px 0 0 rgba(187,237,84,.17);transform:skewY(-9deg)}
.audience-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.audience{padding:17px;min-height:190px;position:relative;display:grid;grid-template-columns:39px 1fr;grid-template-rows:40px auto 1fr auto;column-gap:10px}
.audience .icon-tile{grid-row:1;grid-column:1}
.audience .card-number{grid-row:1;grid-column:2}
.audience h3{grid-row:2;grid-column:1/-1;font-size:calc(18px * 1.0025);margin:8px 0 5px}
.audience h3 a{color:#07594f}
.audience>p:not(.eyebrow){grid-row:3;grid-column:1/-1;margin:0}
.text-link{grid-row:4;grid-column:1/-1;gap:9px;margin-top:13px;font-size:calc(12px * 1.0025)}
.solutions-section{background:#f2f8f5;padding-block:29px 32px}
.solution-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.solution{min-height:150px;padding:13px 15px;display:grid;grid-template-columns:39px 1fr;grid-template-rows:39px auto 1fr;column-gap:9px;align-content:start}
.solution .icon-tile{grid-row:1;grid-column:1}
.solution .card-number{grid-row:1;grid-column:2}
.solution h3{grid-row:2;grid-column:1/-1;font-size:calc(13px * 1.0025);margin:7px 0 4px}
.solution>p:not(.eyebrow){grid-row:3;grid-column:1/-1;margin:0;font-size:calc(11px * 1.0025)}
.section-link{margin:13px 0 0}
.section-link .text-link{margin:0}
.faq-section{background:linear-gradient(105deg,#fff,#f6faf8)}
.faq{max-width:none;border:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:5px 14px}
.faq-column{display:flex;flex-direction:column;gap:5px}
.faq details{background:rgba(255,255,255,.86);border:1px solid #e7eeeb;border-radius:8px;padding:9px 13px;box-shadow:0 3px 10px rgba(25,75,64,.025)}
.faq summary{font-size:calc(12px * 1.0025);line-height:1.4;padding-right:22px}
.faq summary:after{right:0;top:-3px;font-size:calc(20px * 1.0025);color:#079379}
.faq details p{font-size:calc(12px * 1.0025);line-height:1.5;margin:9px 0 2px}
.final-cta{position:relative;overflow:hidden;padding:21px 0;background:radial-gradient(ellipse at 80% 10%,#0e6b5d,#06413f 56%,#062c30);color:#fff}
.final-cta:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 7% 50%,transparent 0 90px,rgba(169,220,97,.38) 91px,transparent 92px),radial-gradient(circle at 97% 100%,transparent 0 140px,rgba(169,220,97,.4) 141px,transparent 142px);opacity:.8}
.final-cta .container{position:relative;gap:30px}
.final-cta h2{font-size:clamp(calc(22px * 1.0025),calc(2.6vw * 1.0025),calc(29px * 1.0025));max-width:700px}
.button.light{font-size:calc(12px * 1.0025);white-space:nowrap;border-radius:7px;padding:11px 16px;background:#d6f45b;color:#132d2a!important;border-color:#d6f45b}
.footer{position:relative;padding:25px 0 13px;background:linear-gradient(105deg,#0b2425,#102d2c);color:#d2e0dc}
.footer-grid{grid-template-columns:.9fr 1.05fr 1.6fr;gap:16px 30px}
.footer .brand{font-size:calc(16px * 1.0025)}
.footer p{font-size:calc(11px * 1.0025);margin:8px 0;color:#a9c0b9}
.footer-contact{font-style:normal}
.footer-contact strong{display:block;margin:5px 0 8px;color:#d5e1dd;font-size:calc(11px * 1.0025)}
.footer nav{grid-template-columns:repeat(3,1fr);gap:7px 20px}
.footer nav a{font-size:calc(11px * 1.0025)}
.footer .copyright{padding-top:11px;margin-top:5px;font-size:calc(10px * 1.0025)}
.page-heading h1{font-size:clamp(calc(38px * 1.0025),calc(5vw * 1.0025),calc(58px * 1.0025))}
.page-heading{padding:20px 0 32px}
.solutions-page .solution{display:flex;min-height:230px}
.solutions-page .solution .text-link{margin-top:auto;padding-top:24px}
.content-page{padding-bottom:70px}
.contact-form{border-radius:12px}

@media(max-width:1000px){nav#site-nav{gap:9px}nav#site-nav>a{font-size:calc(10px * 1.0025)}.container,.nav-wrap{width:min(1160px,calc(100% - 42px))}.hero{gap:20px}.problems{grid-template-columns:repeat(3,minmax(0,1fr))}.solution-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:780px){.container,.nav-wrap{width:min(100% - 34px,640px)}.site-header{height:64px}.menu-toggle{display:block;position:relative}nav#site-nav{top:63px;left:0;right:0;background:#fff;padding:13px 22px 18px}nav#site-nav>a{font-size:calc(14px * 1.0025)}.hero{display:flex;flex-direction:column;align-items:stretch;gap:15px;padding-block:42px 32px;min-height:unset}.hero:before{inset:0 -20px}.hero h1{font-size:clamp(calc(42px * 1.0025),calc(10vw * 1.0025),calc(58px * 1.0025));max-width:560px}.hero-lede{font-size:calc(16px * 1.0025)}.hero-visual{height:300px;max-width:500px;width:100%;align-self:center;margin-top:6px}.section{padding:26px 0}.section-head{grid-template-columns:1fr;gap:8px;margin-bottom:15px}.section-head>p{font-size:calc(13px * 1.0025)}.problems{grid-template-columns:repeat(2,minmax(0,1fr))}.audience-grid{grid-template-columns:1fr}.audience{min-height:unset;grid-template-rows:40px auto 1fr auto}.audience-section:after{right:-110px}.solution-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.final-cta .container{display:flex;align-items:flex-start;flex-direction:column;gap:16px}.final-cta h2{margin:0}.content-page{padding-bottom:54px}.page-heading{padding:10px 0 25px}.two-col{grid-template-columns:1fr}.check-list{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer nav{grid-template-columns:repeat(2,1fr)}.footer .copyright{grid-column:auto}}
@media(max-width:520px){.container,.nav-wrap{width:calc(100% - 32px)}.hero{padding-top:34px}.hero h1{font-size:calc(42px * 1.0025)}.hero .actions{align-items:stretch}.actions .button{width:100%}.hero-visual{height:255px}.node-core{width:100px;height:100px;left:calc(50% - 50px);top:calc(50% - 50px)}.node-a{left:12%;top:13%}.node-b{right:9%;top:10%}.node-c{right:13%;bottom:10%}.float-left{left:-4px;width:75px;height:76px}.float-right{right:-4px;width:70px;padding:10px}.problems,.solution-grid{grid-template-columns:1fr}.problem-card{min-height:104px}.solution{min-height:unset}.faq{display:flex;flex-direction:column;gap:5px}.faq-column{display:contents}.faq-item-1{order:1}.faq-item-2{order:2}.faq-item-3{order:3}.faq-item-4{order:4}.faq-item-5{order:5}.audience-section{overflow:hidden}.audience{padding:15px}.section h2,.content-page h2{font-size:calc(27px * 1.0025)}.form-grid{grid-template-columns:1fr}.form-grid label:nth-child(n){grid-column:auto}.contact-form{padding:20px}.steps li{align-items:flex-start}.footer nav{grid-template-columns:repeat(2,1fr)}}

nav#site-nav>a{font-size:calc(14px * 1.0025)}
.language a{font-size:calc(12px * 1.0025)}
@media(max-width:1000px){nav#site-nav>a{font-size:calc(12px * 1.0025)}}
@media(max-width:780px){nav#site-nav>a{font-size:calc(16px * 1.0025)}.language a{font-size:calc(12px * 1.0025)}}

/* Keep card typography consistent across the homepage sections. */
.problem-card h3,.audience h3,.solution h3{font-size:calc(16px * 1.0025);line-height:1.32;font-weight:600}
.audience>p:not(.eyebrow),.solution>p:not(.eyebrow){font-size:calc(13px * 1.0025);line-height:1.46}
.faq summary{font-size:calc(14px * 1.0025);line-height:1.45}
.faq details p{font-size:calc(13px * 1.0025);line-height:1.5}
.footer p a{color:#d5e1dd;font-weight:600}
.footer p a:hover{color:#fff}

/* Balance footer content and center each group. */
.footer-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr) minmax(0,1.5fr);align-items:start;justify-items:center;gap:22px clamp(16px,3vw,44px);text-align:center}
.footer-grid>div,.footer-contact,.footer nav{width:100%;text-align:center}
.footer-contact{margin:0}
.footer nav{grid-template-columns:repeat(3,minmax(0,1fr));justify-items:center;gap:10px 14px}
.footer .copyright{grid-column:1/-1;text-align:center}
@media(max-width:900px){.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 30px}.footer nav{grid-column:1/-1}}
@media(max-width:540px){.footer-grid{grid-template-columns:1fr;gap:22px}.footer nav{grid-column:auto;grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Bring cards into view as the visitor scrolls, with a small interactive lift. */
.card,.technology-item,.faq details{transition:transform .28s cubic-bezier(.2,.7,.25,1),translate .55s cubic-bezier(.2,.7,.25,1) var(--card-reveal-delay,0ms),opacity .55s ease var(--card-reveal-delay,0ms),box-shadow .28s ease,border-color .28s ease}
.card:focus-within,.technology-item:focus-within,.faq details:focus-within{transform:translateY(-4px);box-shadow:0 14px 32px rgba(14,64,55,.11);border-color:#b8d8cc}
.card .icon-tile,.technology-item .icon-tile{transition:transform .28s cubic-bezier(.2,.7,.25,1)}
.card:focus-within .icon-tile,.technology-item:focus-within .icon-tile{transform:translateY(-2px) rotate(-4deg)}
@media(hover:hover){.card:hover,.technology-item:hover,.faq details:hover{transform:translateY(-5px);box-shadow:0 16px 34px rgba(14,64,55,.12);border-color:#b8d8cc}.card:hover .icon-tile,.technology-item:hover .icon-tile{transform:translateY(-2px) rotate(-4deg)}.card:active,.technology-item:active,.faq details:active{transform:translateY(-1px) scale(.995)}}
html.card-reveal-ready .card-reveal{opacity:0;translate:0 16px}
html.card-reveal-ready .card-reveal.is-visible{opacity:1;translate:0 0}

/* Keep the homepage technology illustration gently in motion. */
.hero-visual .orbit-one{animation:orbit-drift 24s ease-in-out infinite alternate}
.hero-visual .orbit-two{animation:orbit-drift-reverse 29s ease-in-out infinite alternate}
.hero-visual .orbit-three{animation:orbit-drift-three 34s ease-in-out infinite alternate-reverse}
.hero-visual .node-core{animation:core-float 5.5s ease-in-out infinite}
.hero-visual .node-a{animation:node-float-left 5s ease-in-out infinite}
.hero-visual .node-b{animation:node-float-right 5.8s ease-in-out -1.5s infinite}
.hero-visual .node-c{animation:node-float-left 6.2s ease-in-out -3s infinite}
.hero-visual .float-left{animation:card-float 5.5s ease-in-out -1s infinite}
.hero-visual .float-right{animation:card-float 6s ease-in-out -2.5s infinite}
@keyframes orbit-drift{from{transform:rotate(46deg)}to{transform:rotate(70deg)}}
@keyframes orbit-drift-reverse{from{transform:rotate(-32deg)}to{transform:rotate(-56deg)}}
@keyframes orbit-drift-three{from{transform:rotate(9deg)}to{transform:rotate(33deg)}}
@keyframes core-float{0%,100%{transform:translateY(0) rotate(-12deg)}50%{transform:translateY(-12px) rotate(-7deg)}}
@keyframes node-float-left{0%,100%{transform:translate(0,0)}50%{transform:translate(-6px,-14px)}}
@keyframes node-float-right{0%,100%{transform:translate(0,0)}50%{transform:translate(7px,-13px)}}
@keyframes card-float{0%,100%{transform:translateY(0)}50%{transform:translateY(12px)}}
