:root{--navy:#0b1f33;--navy-2:#102b44;--ink:#142638;--teal:#19b5a5;--teal-ink:#0d7d72;--blue:#2777e6;--blue-ink:#1e6fd9;--btn-a:#1f6bd6;--btn-b:#0e8378;--sky:#eaf3ff;--mist:#f4f8fb;--line:#d7e2eb;--white:#fff;--muted:#5b6f82;--max:1180px;--radius:24px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:"DM Sans",sans-serif;font-size:16px;line-height:1.55}body.menu-open{overflow:hidden}main,.site-footer{overflow-x:clip}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}img{max-width:100%;height:auto}:focus-visible{outline:3px solid var(--blue-ink);outline-offset:3px;border-radius:6px}.skip-link{position:fixed;top:8px;left:8px;z-index:1000;background:#fff;color:var(--navy);font-weight:700;padding:10px 14px;border-radius:8px;transform:translateY(-150%)}.skip-link:focus{transform:none}.section-shell{width:min(calc(100% - 48px),var(--max));margin-inline:auto}
.site-header{height:84px;display:grid;grid-template-columns:190px 1fr auto;align-items:center;gap:30px;padding:0 max(24px,calc((100vw - var(--max))/2));position:sticky;top:0;background:rgba(255,255,255,.94);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid rgba(215,226,235,.7);z-index:100}.brand img{width:168px;display:block}.desktop-nav{display:flex;justify-content:center;gap:30px;font-size:.92rem;font-weight:600}.desktop-nav a{position:relative;white-space:nowrap}.desktop-nav a:after{content:"";position:absolute;left:0;bottom:-8px;width:100%;height:2px;background:var(--teal);transform:scaleX(0);transform-origin:left;transition:.25s}.desktop-nav a:hover:after,.desktop-nav a:focus-visible:after,.desktop-nav a[aria-current="page"]:after{transform:scaleX(1)}
.button{display:inline-flex;align-items:center;justify-content:center;text-align:center;min-height:54px;padding:0 24px;background:linear-gradient(110deg,var(--btn-a),var(--btn-b));color:#fff;border:0;border-radius:999px;font-weight:700;box-shadow:0 12px 30px rgba(31,107,214,.18);cursor:pointer;transition:transform .2s,box-shadow .2s}.button:hover,.button:focus-visible{transform:translateY(-2px);box-shadow:0 15px 34px rgba(31,107,214,.27)}.button[disabled]{opacity:.7;cursor:wait;transform:none}.button-small{min-height:44px;padding:0 19px;font-size:.88rem;white-space:nowrap}.button-ghost{background:transparent;border:1px solid rgba(255,255,255,.4);box-shadow:none}.button-ghost:hover,.button-ghost:focus-visible{background:rgba(255,255,255,.08);box-shadow:none}.menu-toggle,.mobile-nav{display:none}
.hero{min-height:720px;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:68px;padding-block:88px 76px}.eyebrow{font-family:"Manrope",sans-serif;font-weight:800;letter-spacing:.12em;text-transform:uppercase;font-size:.73rem;color:var(--blue-ink);display:flex;align-items:center;gap:10px;margin:0 0 20px}.eyebrow span{width:34px;height:2px;background:var(--teal);flex:0 0 auto}h1,h2,h3{font-family:"Manrope",sans-serif;margin:0;letter-spacing:-.045em;line-height:1.05}h1{font-size:clamp(3.4rem,6vw,6.2rem);color:var(--navy)}h1 em{font-style:normal;color:var(--teal-ink)}.hero-lead{font-size:1.22rem;line-height:1.62;color:var(--muted);max-width:640px;margin:30px 0}.hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}.text-link{font-weight:700;color:var(--navy);display:inline-flex;align-items:center;gap:9px}.text-link span{color:var(--teal-ink);font-size:1.2rem}.trust-row{display:flex;gap:14px 24px;margin-top:48px;font-size:.83rem;font-weight:700;color:var(--muted);flex-wrap:wrap}.trust-row span{display:flex;align-items:center;gap:8px}.trust-row span:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--teal);flex:0 0 auto}
.hero-system{height:530px;border-radius:36px;background:var(--navy);position:relative;overflow:hidden;box-shadow:0 35px 70px rgba(11,31,51,.2)}.system-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:linear-gradient(to bottom,#000,transparent);mask-image:linear-gradient(to bottom,#000,transparent)}.system-label{position:absolute;top:30px;left:30px;color:#9eb3c6;font:700 .67rem "Manrope";letter-spacing:.16em}.workflow-node{position:absolute;left:12%;right:12%;min-height:92px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.07);border-radius:18px;color:#fff;display:flex;align-items:center;gap:18px;padding:18px 20px;backdrop-filter:blur(8px)}.workflow-node small{font-size:.62rem;letter-spacing:.14em;color:#a3bacd;display:block;margin-bottom:4px}.workflow-node strong{font-family:"Manrope";font-size:1rem}.node-icon{position:relative;width:48px;height:48px;border-radius:14px;background:rgba(255,255,255,.1);display:grid;place-items:center;font:800 .8rem "Manrope";color:#8edfd6;flex:0 0 auto}.node-enquiry{top:82px}.node-ai{top:220px;left:19%;right:5%;background:linear-gradient(120deg,rgba(39,119,230,.28),rgba(25,181,165,.2));border-color:rgba(63,220,201,.48)}.node-ai .node-icon{background:var(--teal);color:var(--navy)}.pulse-ring{position:absolute;left:20px;top:50%;width:48px;height:48px;margin-top:-24px;border-radius:14px;border:2px solid rgba(63,220,201,.5);animation:nodepulse 2.4s ease-out infinite;pointer-events:none}@keyframes nodepulse{0%{transform:scale(1);opacity:.9}100%{transform:scale(1.45);opacity:0}}.node-action{top:358px}.workflow-line{position:absolute;left:20%;width:2px;height:46px;background:rgba(255,255,255,.14)}.workflow-line i{position:absolute;width:6px;height:14px;background:var(--teal);left:-2px;border-radius:9px;animation:signal 2.1s linear infinite}.line-one{top:174px}.line-two{top:312px}.line-two i{animation-delay:1s}.system-status{position:absolute;right:28px;bottom:24px;color:#a9bccb;font-size:.72rem}.system-status b{display:inline-block;width:7px;height:7px;border-radius:50%;background:#58df99;margin-right:7px;box-shadow:0 0 0 5px rgba(88,223,153,.1)}@keyframes signal{from{top:0}to{top:32px}}
.problem-band{background:var(--navy);color:#fff;padding:95px 0}.problem-grid{display:grid;grid-template-columns:.7fr 1.4fr 1fr;gap:56px;align-items:start}.eyebrow.light{color:#9cb4c8}.problem-grid h2,.use-cases h2,.contact h2,.demo h2{font-size:clamp(2.3rem,4vw,4.25rem)}.problem-list{border-top:1px solid rgba(255,255,255,.15)}.problem-list div{display:grid;grid-template-columns:46px 1fr;gap:10px;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.15)}.problem-list strong{font:700 .74rem "Manrope";color:var(--teal)}.problem-list p{margin:0;color:#c8d5df}
.services{padding-block:120px}.section-heading{display:grid;grid-template-columns:.62fr 1.2fr .78fr;gap:50px;align-items:end;margin-bottom:56px}.section-heading h2{font-size:clamp(2.6rem,5vw,5rem);color:var(--navy)}.section-heading>p:last-child{color:var(--muted);font-size:1.05rem;margin:0}.service-panel{display:grid;grid-template-columns:90px 1.15fr .85fr;gap:50px;padding:58px;border:1px solid var(--line);border-radius:var(--radius);margin-bottom:22px;background:linear-gradient(135deg,#fff,var(--mist));position:relative;overflow:hidden}.service-panel:after{content:"";position:absolute;width:260px;height:260px;border:1px solid rgba(39,119,230,.13);border-radius:50%;right:-130px;top:-130px;pointer-events:none}.service-panel.dark{background:var(--navy);color:#fff;border-color:var(--navy)}.service-number{font:800 1rem "Manrope";color:var(--teal-ink);padding-top:8px}.dark .service-number{color:var(--teal)}.service-kicker{color:var(--blue-ink);font-weight:800;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;margin:0 0 17px}.dark .service-kicker{color:#8ddfd6}.service-main h3{font-size:clamp(2rem,3.6vw,3.5rem);margin-bottom:24px}.service-main p:not(.service-kicker){color:var(--muted);font-size:1.03rem;max-width:560px;margin:0 0 28px}.dark .service-main p:not(.service-kicker){color:#b6c8d6}.light-link{color:#fff}.light-link span{color:var(--teal)}.service-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.dark .service-list{border-color:rgba(255,255,255,.15)}.service-list li{padding:12px 0;border-bottom:1px solid var(--line);font-weight:600;font-size:.92rem}.dark .service-list li{border-color:rgba(255,255,255,.15);color:#d8e3eb}.service-list li:before{content:"+";color:var(--teal-ink);margin-right:12px}.dark .service-list li:before{color:var(--teal)}.grow-note{display:grid;grid-template-columns:90px 1fr;gap:50px;padding:26px 58px;border:1px dashed var(--line);border-radius:var(--radius);color:var(--muted)}.grow-note strong{font:800 .72rem "Manrope";letter-spacing:.1em;text-transform:uppercase;color:var(--navy);padding-top:3px}.grow-note p{margin:0;max-width:760px}
.demo{background:linear-gradient(120deg,var(--navy),#123d5c);color:#fff;padding:110px 0;overflow:hidden}.demo-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:center}.demo-copy>p:not(.eyebrow){color:#b7c9d7;font-size:1.08rem;max-width:560px}.demo-copy h2{margin-bottom:26px}.demo-note{font-size:.9rem!important;color:#9fb3c4!important;border-top:1px solid rgba(255,255,255,.15);padding-top:20px;margin-top:28px}.orb-panel{position:relative;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);border-radius:32px;padding:56px 32px 44px;text-align:center}.orb-panel .system-label{top:24px;left:26px}.orb{position:relative;width:148px;height:148px;border-radius:50%;border:0;cursor:pointer;background:linear-gradient(135deg,var(--btn-a),var(--teal));display:flex;align-items:center;justify-content:center;margin:12px auto 0;box-shadow:0 20px 50px rgba(25,181,165,.28);transition:transform .2s,background .2s}.orb:hover{transform:scale(1.04)}.orb:focus-visible{outline:3px solid #fff;outline-offset:6px;border-radius:50%}.orb svg{width:46px;height:46px;stroke:#fff;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.orb-ring{position:absolute;inset:0;border-radius:50%;border:2px solid rgba(63,220,201,.45);animation:orbpulse 2.6s ease-out infinite;pointer-events:none}.orb .r2{animation-delay:1.3s}@keyframes orbpulse{0%{transform:scale(1);opacity:.9}100%{transform:scale(1.6);opacity:0}}.orb.live{background:linear-gradient(135deg,#b8332a,#e0533f);box-shadow:0 20px 50px rgba(224,83,63,.3)}.orb.live .orb-ring{border-color:rgba(255,140,120,.45)}.orb-status{margin:26px auto 0;min-height:1.6em;color:#d2dee8;font-weight:600;max-width:320px}.demo-line{display:inline-flex;flex-direction:column;margin-top:26px;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);width:100%}.demo-line small{color:#93adbf}.demo-line strong{font:700 1.35rem "Manrope";color:#fff}
.approach{background:var(--mist);padding:120px 0;overflow:hidden}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.approach-copy h2{font-size:clamp(2.8rem,4.7vw,4.8rem);color:var(--navy);margin-bottom:30px}.approach-copy>p:not(.eyebrow){font-size:1.12rem;color:var(--muted)}.principles{list-style:none;padding:0;margin:30px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:12px}.principles li{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 20px}.principles strong{display:block;font:700 1rem "Manrope";color:var(--navy);margin-bottom:6px}.principles span{color:var(--muted);font-size:.92rem;display:block}blockquote{margin:34px 0 0;padding:24px 0 0;border-top:1px solid var(--line);font:600 1.08rem/1.5 "Manrope";color:var(--navy)}.orbit-visual{aspect-ratio:1;position:relative;max-width:530px;width:100%;margin:auto}.orbit{position:absolute;border:1px solid #cbd9e4;border-radius:50%;inset:10%}.orbit-two{inset:27%}.core{position:absolute;inset:37%;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:var(--navy);color:#fff;box-shadow:0 20px 40px rgba(11,31,51,.18)}.core span{font:800 1.25rem "Manrope";letter-spacing:.06em}.core small{font-size:.52rem;color:#8ddfd6;letter-spacing:.12em}.satellite{position:absolute;padding:12px 16px;background:#fff;border:1px solid var(--line);border-radius:999px;box-shadow:0 10px 30px rgba(11,31,51,.08);font:800 .65rem "Manrope";letter-spacing:.08em;white-space:nowrap}.sat-crm{left:3%;top:45%}.sat-phone{left:18%;top:8%}.sat-calendar{right:3%;top:30%}.sat-payments{right:11%;bottom:12%}.sat-ops{left:21%;bottom:6%}
.process{padding-block:120px}.process .section-heading{grid-template-columns:.65fr 1.6fr}.process-track{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.process-step{padding:40px 30px 44px;background:#fff}.process-step span{color:var(--teal-ink);font:800 .75rem "Manrope"}.process-step h3{font-size:1.55rem;margin:30px 0 14px;color:var(--navy)}.process-step p{color:var(--muted);margin:0;font-size:.95rem}
.use-cases{background:var(--navy);color:#fff;padding:110px 0;overflow:hidden}.use-cases .section-heading{grid-template-columns:.7fr 1.5fr;margin-bottom:34px}.use-cases h2{max-width:850px}.sector-intro{color:#b7c9d7;font-size:1.08rem;max-width:760px;margin:0 0 26px}.chips{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 20px;padding:0;list-style:none}.chips li{border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:9px 18px;font-weight:600;font-size:.9rem;color:#e2eaf0}.ticker{border-block:1px solid rgba(255,255,255,.15);overflow:hidden;margin:20px calc((100vw - min(100vw - 48px,var(--max)))/-2) 54px}.ticker-track{display:flex;width:max-content;animation:ticker 34s linear infinite;padding:22px 0}.ticker span{font:600 1rem "Manrope";color:#d2dee8;display:flex;align-items:center;white-space:nowrap}.ticker span:after{content:"";width:6px;height:6px;background:var(--teal);border-radius:50%;margin:0 28px}@keyframes ticker{to{transform:translateX(-50%)}}.outcomes{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.outcomes div{padding:28px;border:1px solid rgba(255,255,255,.13);border-radius:16px;background:rgba(255,255,255,.04)}.outcomes strong{font:700 1.25rem "Manrope";color:#fff}.outcomes p{color:#9fb3c4;margin:10px 0 0}
.pricing{background:var(--mist);padding:120px 0}.pricing-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.pricing-copy h2{font-size:clamp(2.6rem,4.6vw,4.6rem);color:var(--navy);margin-bottom:26px}.pricing-copy>p:not(.eyebrow){color:var(--muted);font-size:1.08rem;max-width:520px}.price-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:44px;box-shadow:0 30px 60px rgba(11,31,51,.07)}.price-card .price-lead{font:700 1.45rem/1.3 "Manrope";letter-spacing:-.02em;color:var(--navy);margin:0 0 24px}.price-facts{list-style:none;padding:0;margin:0 0 28px;border-top:1px solid var(--line)}.price-facts li{display:grid;grid-template-columns:auto 1fr;gap:14px;padding:14px 0;border-bottom:1px solid var(--line);font-weight:600}.price-facts li:before{content:"+";color:var(--teal-ink);font-weight:800}.price-facts small{display:block;color:var(--muted);font-weight:400;font-size:.88rem;margin-top:2px}.price-card .button{width:100%}
.faq{padding-block:120px;display:grid;grid-template-columns:.72fr 1.28fr;gap:90px}.faq-intro h2{font-size:clamp(2.7rem,4.5vw,4.5rem);color:var(--navy)}.faq-intro>p:last-child{color:var(--muted);font-size:1.06rem;margin-top:26px}.accordion details{border-bottom:1px solid var(--line);padding:0}.accordion summary{list-style:none;cursor:pointer;padding:25px 42px 25px 0;font:700 1.06rem "Manrope";position:relative;color:var(--navy)}.accordion summary::-webkit-details-marker{display:none}.accordion summary i:before,.accordion summary i:after{content:"";position:absolute;right:4px;top:50%;width:16px;height:2px;background:var(--teal-ink)}.accordion summary i:after{transform:rotate(90deg);transition:.2s}.accordion details[open] summary i:after{transform:rotate(0)}.accordion details p{color:var(--muted);margin:-5px 45px 25px 0}
.contact{background:linear-gradient(120deg,var(--navy),#123d5c);color:#fff;padding:110px 0}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px}.contact-copy h2{margin-bottom:26px}.contact-copy p:not(.eyebrow){color:#b7c9d7;font-size:1.08rem}.phone-link{display:inline-flex;flex-direction:column;margin-top:32px}.phone-link small{color:#93adbf}.phone-link strong{font:700 1.35rem "Manrope"}.contact-form{background:#fff;color:var(--ink);padding:38px;border-radius:24px;box-shadow:0 30px 70px rgba(0,0,0,.17);position:relative}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-form label{font-size:.8rem;font-weight:700;display:block;margin-bottom:18px;color:#42596d}.contact-form label .req{color:#b42318}.contact-form input,.contact-form textarea{display:block;width:100%;margin-top:7px;border:1px solid #b9c9d6;border-radius:10px;padding:13px 14px;background:#fafdff;color:var(--ink);outline:none;transition:.2s}.contact-form textarea{resize:vertical;min-height:110px}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--teal-ink);box-shadow:0 0 0 3px rgba(25,181,165,.18)}.contact-form input.invalid,.contact-form textarea.invalid{border-color:#b42318;box-shadow:0 0 0 3px rgba(180,35,24,.12)}.field-error{display:none;font-size:.78rem;font-weight:600;color:#b42318;margin:6px 0 0}.field-error.show{display:block}.honeypot{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}.submit-button{width:100%;margin-top:4px}.form-status{min-height:1.4em;margin:12px 0 0;text-align:center;font-weight:600;font-size:.92rem}.form-status.ok{color:var(--teal-ink)}.form-status.err{color:#b42318}.form-note{font-size:.76rem;color:#5f7387;text-align:center;margin:10px 0 0}.form-note a{text-decoration:underline}
.site-footer{background:#071725;color:#fff;padding:68px 0 28px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:50px}.footer-grid img{width:160px;filter:brightness(0) invert(1);opacity:.95}.footer-grid p{color:#8da4b7;max-width:290px}.footer-grid>div:not(:first-child){display:flex;flex-direction:column;gap:10px}.footer-grid small{color:#7f97a9;font-weight:800;letter-spacing:.12em;margin-bottom:8px}.footer-grid a{font-size:.88rem;color:#c5d2dc}.footer-grid a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.1);padding-top:24px;margin-top:50px;font-size:.75rem;color:#8199ab}.footer-bottom a{color:#c5d2dc}
.page-hero{padding-block:96px 80px;max-width:900px}.page-hero h1{font-size:clamp(2.7rem,5.4vw,5.2rem)}.page-hero .hero-lead{margin-bottom:0}.about-why{background:var(--navy);color:#fff;padding:100px 0}.narrow{max-width:820px}.contact .narrow h2{margin-bottom:24px}.contact .narrow p:not(.eyebrow){color:#b7c9d7;font-size:1.08rem;margin:0}.about-why h2{font-size:clamp(2.2rem,4vw,3.8rem);margin-bottom:28px}.about-why p:not(.eyebrow){color:#c8d5df;font-size:1.1rem;margin:0 0 18px}.about-how{padding-block:110px}.card-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.card{border:1px solid var(--line);border-radius:var(--radius);padding:36px;background:linear-gradient(135deg,#fff,var(--mist))}.card span{color:var(--teal-ink);font:800 .75rem "Manrope"}.card h3{font-size:1.5rem;color:var(--navy);margin:18px 0 12px}.card p{color:var(--muted);margin:0}.about-today{background:var(--mist);padding:110px 0}.today-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:start}.today-grid h2{font-size:clamp(2.4rem,4.4vw,4.2rem);color:var(--navy)}.today-copy p{color:var(--muted);font-size:1.06rem;margin:0 0 18px}.today-copy p strong{color:var(--navy)}.cta-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:32px}
.legal{max-width:760px;padding-block:80px 100px}.legal h1{font-size:clamp(2.6rem,5vw,4rem);margin-bottom:32px}.legal h2{font-size:1.3rem;letter-spacing:-.02em;color:var(--navy);margin:36px 0 10px}.legal p{color:#4b5f72;font-size:1.04rem;line-height:1.7;margin:0 0 14px}.legal a{color:var(--blue-ink);text-decoration:underline}.legal .updated{margin-top:48px;font-size:.9rem;color:var(--muted)}
.js .reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}.js .reveal.visible{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js .reveal{opacity:1;transform:none;transition:none}.ticker-track,.workflow-line i,.pulse-ring,.orb-ring{animation:none}.ticker-track{flex-wrap:wrap;width:auto}.ticker span[aria-hidden="true"]{display:none}.button,.orb{transition:none}}
@media(max-width:1120px){.desktop-nav{gap:20px;font-size:.88rem}.site-header{gap:20px;grid-template-columns:170px 1fr auto}.brand img{width:150px}}
@media(max-width:1000px){.site-header{grid-template-columns:1fr auto auto}.desktop-nav{display:none}.menu-toggle{display:flex;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:#fff;align-items:center;justify-content:center;flex-direction:column;gap:6px;cursor:pointer}.menu-toggle span{width:18px;height:2px;background:var(--navy);transition:transform .2s}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg)}.mobile-nav{position:fixed;top:84px;inset-inline:0;max-height:calc(100vh - 84px);overflow-y:auto;background:#fff;padding:26px 24px 34px;display:flex;flex-direction:column;gap:4px;border-bottom:1px solid var(--line);box-shadow:0 20px 40px rgba(11,31,51,.08);transform:translateY(-140%);visibility:hidden;transition:transform .3s,visibility 0s .3s;z-index:-1}.mobile-nav a{padding:10px 0;font-weight:600;font-size:1.05rem;border-bottom:1px solid var(--mist)}.mobile-nav a.button{margin-top:14px;border:0;color:#fff}.mobile-nav.open{transform:none;visibility:visible;transition:transform .3s}}
@media(max-width:960px){.hero{grid-template-columns:1fr;min-height:auto;padding-top:70px}.hero-system{max-width:650px;width:100%;margin:auto}.problem-grid,.section-heading,.approach-grid,.faq,.contact-grid,.demo-grid,.pricing-grid,.today-grid{grid-template-columns:1fr}.section-heading,.process .section-heading,.use-cases .section-heading{grid-template-columns:1fr;gap:20px}.problem-grid{gap:30px}.demo-grid,.pricing-grid,.today-grid{gap:50px}.service-panel{grid-template-columns:60px 1fr}.service-list{grid-column:2}.grow-note{grid-template-columns:60px 1fr;padding:26px 40px}.process-track{grid-template-columns:1fr 1fr}.outcomes{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1.3fr 1fr 1fr}.footer-grid>div:last-child{grid-column:2}.orbit-visual{width:min(100%,520px)}}
@media(max-width:640px){.section-shell{width:min(calc(100% - 32px),var(--max))}.site-header{height:72px;padding:0 16px;grid-template-columns:1fr auto}.brand img{width:142px}.site-header>.button{display:none}.menu-toggle{grid-column:2}.mobile-nav{top:72px;max-height:calc(100vh - 72px);padding-inline:16px}.hero{padding-block:54px 60px;gap:45px}.hero h1{font-size:clamp(2.6rem,12vw,3.25rem)}.page-hero h1{font-size:clamp(2.3rem,10vw,3rem)}.hero-lead{font-size:1.08rem}.hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.hero-system{height:460px;border-radius:24px}.workflow-node{left:7%;right:7%;gap:14px;padding:16px}.node-ai{left:12%;right:3%}.pulse-ring{left:16px}.problem-band,.services,.approach,.process,.use-cases,.faq,.contact,.demo,.pricing,.about-why,.about-how,.about-today{padding-block:78px}.page-hero{padding-block:60px 50px}.problem-grid h2,.use-cases h2,.contact h2,.demo h2{font-size:clamp(2rem,9vw,2.6rem)}.section-heading h2,.approach-copy h2,.faq-intro h2,.pricing-copy h2,.today-grid h2{font-size:clamp(2.1rem,9.5vw,2.8rem)}.service-panel{grid-template-columns:1fr;padding:30px 22px;gap:22px}.service-list{grid-column:1}.service-number{position:absolute;right:24px;top:20px}.service-main h3{padding-right:32px;font-size:1.9rem}.grow-note{grid-template-columns:1fr;gap:10px;padding:22px}.process-track,.outcomes,.field-row,.footer-grid,.principles,.card-grid{grid-template-columns:1fr}.field-row{gap:0}.outcomes{gap:12px}.contact-form{padding:25px 20px}.price-card{padding:28px 22px}.orb-panel{padding:52px 18px 34px;border-radius:24px}.card{padding:28px 22px}.footer-grid>div:last-child{grid-column:auto}.footer-bottom{flex-direction:column}.ticker{margin-inline:-16px}.trust-row span{width:calc(50% - 7px)}.orbit-visual{transform:scale(.92);margin-block:-20px}.satellite{padding:9px 12px;font-size:.58rem}.faq{gap:40px}.accordion details p{margin-right:0}.legal{padding-block:56px 70px}}

/* 2026-10-01 Jacques: eyebrow sits above its H2 (never beside it); section H2s ~20% smaller. Hero H1 unchanged. */
.problem-grid{grid-template-columns:1.4fr 1fr;row-gap:0}
.section-heading{grid-template-columns:1.4fr .8fr;row-gap:0}
.process .section-heading,.use-cases .section-heading{grid-template-columns:1fr}
.problem-grid>.eyebrow,.section-heading>.eyebrow{grid-column:1/-1;margin-bottom:20px}
.problem-grid h2,.use-cases h2,.contact h2,.demo h2{font-size:clamp(2rem,3.4vw,3.4rem)}
.section-heading h2{font-size:clamp(2.2rem,4vw,4rem)}
.approach-copy h2{font-size:clamp(2.3rem,3.8vw,3.8rem)}
.pricing-copy h2{font-size:clamp(2.2rem,3.7vw,3.7rem)}
.faq-intro h2{font-size:clamp(2.2rem,3.6vw,3.6rem)}
.about-why h2{font-size:clamp(2rem,3.4vw,3.1rem)}
.today-grid h2{font-size:clamp(2.1rem,3.6vw,3.4rem)}
@media(max-width:960px){.problem-grid,.section-heading{grid-template-columns:1fr;row-gap:0}.problem-grid>.eyebrow,.section-heading>.eyebrow{margin-bottom:20px}.problem-grid h2,.section-heading h2{margin-bottom:24px}}
@media(max-width:640px){.problem-grid h2,.use-cases h2,.contact h2,.demo h2{font-size:clamp(1.8rem,8vw,2.2rem)}.section-heading h2,.approach-copy h2,.faq-intro h2,.pricing-copy h2,.today-grid h2,.about-why h2{font-size:clamp(1.9rem,8.5vw,2.4rem)}}

/* 2026-10-01 Jacques: trust banner restored below the hero (ported from the live site). */
.trust-band{background:var(--mist);border-block:1px solid var(--line)}
.trust-band .section-shell{min-height:56px;padding-block:10px;display:flex;flex-wrap:wrap;gap:10px 30px;justify-content:center;align-items:center}
.t-item{display:flex;align-items:center;gap:8px;font-size:.9rem;line-height:1.2}
.t-item svg{width:17px;height:17px;stroke:var(--navy);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.t-item strong{color:var(--ink);font-weight:600;white-space:nowrap}
@media(max-width:640px){.trust-band .section-shell{justify-content:flex-start;gap:12px 20px}.t-item{width:calc(50% - 10px)}.t-item strong{white-space:normal}}

/* 2026-10-01 Jacques: both workflow line signals move in sync. */
.line-two i{animation-delay:0s}

/* 2026-10-01 Jacques: Who we work with H2 white on the navy band. */
.use-cases .section-heading h2{color:#fff}

/* 2026-10-01 Jacques: a section H2 with no intro paragraph beside it spans the full width. */
.section-heading h2:last-child{grid-column:1/-1}

/* 2026-10-01 responsive fix: hero workflow card is now a flowing stack, so wrapped text can never overlap at any width. */
.hero-system{height:auto;display:flex;flex-direction:column;padding:76px 12% 30px}
.hero-system .workflow-node,.hero-system .workflow-line,.hero-system .system-status{position:relative;left:auto;right:auto;top:auto;bottom:auto}
.hero-system .node-ai{margin:0 -7% 0 7%}
.hero-system .workflow-line{flex:0 0 46px;margin-left:9%}
.hero-system .system-status{align-self:flex-end;margin:28px -6% 0 0}
@media(max-width:640px){
  .hero-system{height:auto;padding:64px 6% 24px}
  .hero-system .node-ai{margin:0 -3% 0 5%}
  .hero-system .workflow-line{flex-basis:36px;margin-left:12%}
  .hero-system .workflow-node strong{font-size:.95rem;line-height:1.3}
  .hero-system .system-status{align-self:flex-start;margin:22px 0 0}
  .t-item{font-size:.85rem}
}

/* 2026-10-01 responsive polish: readable spacing in uppercase labels; tighter mobile spacing. */
.eyebrow,.service-kicker,.grow-note strong,.system-label,.workflow-node small,.satellite{word-spacing:.18em}
@media(max-width:640px){
  .section-heading{margin-bottom:32px}
  .process-step{padding:26px 22px 28px}
  .process-step h3{margin:10px 0 8px}
  .outcomes div{padding:22px}
}
@media(max-width:960px) and (min-width:641px){.service-panel{padding:40px;gap:28px}.grow-note{gap:28px}}

/* 2026-10-01 Jacques: every section starts on the same left edge. Narrow sections keep a readable line length but no longer centre themselves. */
.page-hero.section-shell,.section-shell.narrow,.legal.section-shell{max-width:none}
.page-hero>div{max-width:900px}
.section-shell.narrow>*{max-width:820px}
.legal.section-shell>*{max-width:760px}

/* 2026-10-06 service pages: hero buttons under the page-hero lead, links inside cards and service lists. */
.page-hero .hero-actions{margin-top:30px}
.card .text-link{margin-top:22px}
.service-list li a{text-decoration:underline;text-decoration-color:var(--teal);text-underline-offset:4px}
.service-list li a:hover{color:var(--teal-ink)}
.dark .service-list li a:hover{color:#fff}
.process .section-heading>p:last-child{margin-top:18px;max-width:720px}
/* 2026-10-06 Jacques: intro sits under the H2 and runs the full width. */
.section-heading.stacked{grid-template-columns:1fr}
.section-heading.stacked>p:last-child{margin-top:22px;max-width:none}
/* 2026-10-06 Jacques: simple service lists on the CX and automation pages. */
.svc-plain{padding:100px 0}.svc-band{background:var(--mist);padding:100px 0}
.svc-card h3{margin-top:0}.svc-band .svc-card{background:#fff}
@media(max-width:640px){.svc-plain,.svc-band{padding:70px 0}}
/* 2026-10-06 Jacques: full-site menu. Home, Services dropdown, About, Contact. */
.desktop-nav{align-items:center;gap:34px}
.nav-item{position:relative}
.nav-drop-toggle{background:none;border:0;padding:0;font:inherit;font-weight:600;color:inherit;cursor:pointer;display:inline-flex;align-items:center;gap:6px;position:relative;white-space:nowrap}
.nav-drop-toggle svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
.nav-drop-toggle:after{content:"";position:absolute;left:0;bottom:-8px;width:calc(100% - 20px);height:2px;background:var(--teal);transform:scaleX(0);transform-origin:left;transition:.25s}
.nav-drop-toggle.is-current:after,.nav-item:hover .nav-drop-toggle:after,.nav-drop-toggle:focus-visible:after{transform:scaleX(1)}
.nav-drop-menu{position:absolute;top:calc(100% + 20px);left:50%;transform:translate(-50%,6px);min-width:250px;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 22px 44px rgba(11,31,51,.12);padding:8px;opacity:0;visibility:hidden;transition:opacity .2s,transform .2s,visibility 0s .2s;z-index:120}
.nav-drop-menu:before{content:"";position:absolute;left:0;right:0;top:-22px;height:22px}
.nav-item:hover .nav-drop-menu,.nav-item:focus-within .nav-drop-menu,.nav-item.open .nav-drop-menu{opacity:1;visibility:visible;transform:translate(-50%,0);transition:opacity .2s,transform .2s}
.nav-item:hover .nav-drop-toggle svg,.nav-item.open .nav-drop-toggle svg{transform:rotate(180deg)}
.desktop-nav .nav-drop-menu a{padding:11px 14px;border-radius:10px;white-space:nowrap}
.desktop-nav .nav-drop-menu a:after{display:none}
.desktop-nav .nav-drop-menu a:hover,.desktop-nav .nav-drop-menu a:focus-visible{background:var(--mist);color:var(--navy)}
.desktop-nav .nav-drop-menu a[aria-current="page"]{color:var(--teal-ink)}
.mobile-label{padding:10px 0 4px;font:800 .72rem "Manrope";letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.mobile-nav a.mobile-sub{padding-left:16px;font-size:.98rem}
.mobile-nav a[aria-current="page"]{color:var(--teal-ink)}
@media(prefers-reduced-motion:reduce){.nav-drop-menu,.nav-drop-toggle svg{transition:none}}
.inline-link{text-decoration:underline;text-decoration-color:var(--teal);text-underline-offset:3px}
/* AI receptionist voice widget panel: light card so the widget's blue stands out */
.voice-panel{background:#eef4f9;border:1px solid rgba(255,255,255,.55);color:#0f2f4a;box-shadow:0 24px 60px rgba(4,18,32,.35)}
.voice-panel .system-label{color:#5b7488}
.voice-panel #voice-widget-slot{min-height:340px;display:flex;align-items:center;justify-content:center}
.voice-panel .demo-line{border-top-color:rgba(15,47,74,.16)}
.voice-panel .demo-line small{color:#4b6377}
.voice-panel .demo-line strong{color:#0f2f4a}
@media(max-width:640px){
.voice-panel{padding:44px 0 12px;border-radius:24px;width:100%;box-sizing:border-box;overflow:hidden}
.voice-panel .system-label{top:20px;left:20px}
.voice-panel #voice-widget-slot{min-height:0;width:100%;max-width:100%;overflow:hidden}
.voice-panel chat-widget{display:block;margin:0 auto}
}
/* The GHL widget is a fixed 368px wide, so scale it down on narrow phones (panel width is the screen minus 32px) */
@media(max-width:420px){.voice-panel chat-widget{zoom:.94}}
@media(max-width:385px){.voice-panel chat-widget{zoom:.88}}
@media(max-width:360px){.voice-panel chat-widget{zoom:.8}}
@media(max-width:335px){.voice-panel chat-widget{zoom:.72}}
