body,button,input,select,textarea{font-family:'Montserrat',sans-serif}button,input,select,textarea{font-synthesis:none}
.nav>.brand .brand-image,.footer>.brand .brand-image{display:block;width:141px;height:41px;object-fit:contain;mix-blend-mode:lighten}.footer>.brand .brand-image{width:110px;height:32px}
.hero h1{font-weight:700;letter-spacing:-.04em}.hero h1::after{content:'';display:block;width:225px;height:14px;margin-top:24px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 225 14'%3E%3Cpath d='M3 10Q110-3 222 9' fill='none' stroke='%239ed800' stroke-width='5' stroke-linecap='round'/%3E%3C/svg%3E") center/contain no-repeat}
h2{font-weight:700;letter-spacing:-.035em}.proof-number>span{font-size:16px;font-weight:700;line-height:1.25;letter-spacing:0}.proof-number strong{font-weight:700}
.header .button,.hero-actions .button,.campaign .button,.contact .button{font-weight:700;letter-spacing:0;border-radius:999px;box-shadow:none}.hero-actions .button{font-size:16px;min-height:60px;padding:18px 33px;gap:32px}.hero-actions .button>span,.campaign .button>span,.contact .button>span,.header .button>span{font-size:20px;line-height:1}.campaign .button,.contact .button{font-size:14px}.header .button{font-size:12px;min-height:44px}
.footer .cookie-settings-link{background:none;border:0;padding:0;color:var(--muted);font-size:10px;text-decoration:underline;cursor:pointer}.cookie-settings-link:hover{color:var(--text)}
.cookie-banner{position:fixed;bottom:20px;left:20px;right:20px;z-index:1000;max-width:1168px;margin:auto;background:#0c191e;border:1px solid #40545e;box-shadow:0 8px 50px #0008;border-radius:12px;padding:24px;display:flex;align-items:center;gap:28px}.cookie-banner-copy{flex:1}.cookie-banner h2{font-size:18px;line-height:1.35;letter-spacing:-.3px;margin:0 0 8px}.cookie-banner p{font-size:11px;line-height:1.8;color:#b5c2c8;margin:0}.cookie-actions{display:flex;flex-wrap:wrap;gap:9px;align-items:center}.cookie-button{font:600 11px/1.4 'Montserrat',sans-serif;border:1px solid #78909d;background:transparent;color:#edf3f5;border-radius:999px;padding:12px 17px;cursor:pointer;min-height:42px;white-space:nowrap}.cookie-button:hover{border-color:var(--lime);background:#9ed8000d}.cookie-button.primary{border-color:var(--lime);background:var(--lime);color:#0a1300}.cookie-button:focus-visible,.cookie-close:focus-visible{outline:2px solid var(--lime);outline-offset:4px}
.cookie-dialog{background:#0b171c;color:var(--text);border:1px solid #40545e;border-radius:12px;width:min(620px,calc(100% - 32px));max-height:calc(100dvh - 40px);padding:30px;overflow:auto;box-shadow:0 20px 80px #0009}.cookie-dialog::backdrop{background:#000b}.cookie-dialog h2{font-size:24px;line-height:1.3;letter-spacing:-.5px;margin:0 35px 17px 0}.cookie-dialog>p{font-size:12px;color:#afbec5;line-height:1.8}.cookie-close{position:absolute;right:18px;top:18px;border:0;background:none;color:#edf3f5;font-size:27px;line-height:1;cursor:pointer}.cookie-category{border-top:1px solid #2c414b;padding:20px 0}.cookie-category label{display:flex;align-items:center;justify-content:space-between;gap:20px;color:#edf3f5;font-size:14px;font-weight:600;margin:0}.cookie-category input{appearance:auto;width:20px;height:20px;margin:0;accent-color:var(--lime);cursor:pointer;flex-shrink:0}.cookie-category p{font-size:11px;line-height:1.8;color:#aebdc4;margin:9px 32px 0 0}.cookie-category small{font-size:10px;color:var(--lime);white-space:nowrap}.cookie-dialog .cookie-actions{margin-top:15px}.cookie-error{font-size:11px;color:#ffb4b4}.cookie-dialog .cookie-detail{font-size:10px;color:#8eaaaF;margin:15px 0 0}.cookie-banner[hidden]{display:none!important}
@media(max-width:1100px){.nav nav{gap:20px}.nav nav a{font-size:11px}.hero-copy{max-width:52%}.hero h1{font-size:49px}.hero .lead{font-size:13px}.header .nav-cta{font-size:10px;padding:12px 16px;gap:14px}.proof-number>span{font-size:14px}.cookie-banner{align-items:flex-start;gap:18px;flex-direction:column}.cookie-actions{width:100%}}
@media(max-width:800px){.hero h1{font-size:40px}.proof-number>span{font-size:16px}.cookie-banner{bottom:12px;left:12px;right:12px;padding:20px}.cookie-banner h2{font-size:16px}.cookie-banner p{font-size:10px}.cookie-button{font-size:10px;padding:11px 13px}.footer .cookie-settings-link{font-size:9px}}
@media(max-width:560px){.hero-copy{max-width:none}.hero h1{font-size:clamp(33px,10.5vw,49px)}.hero h1::after{width:185px;height:12px;margin-top:20px}.hero .lead{font-size:13px}.hero-actions .button{font-size:14px;padding:17px 26px;min-height:55px;gap:26px}.nav>.brand .brand-image{width:132px;height:39px}.proof-number>span{font-size:15px}.contact h2{font-size:28px}.contact .gradient-text{white-space:normal}.campaign .button,.contact .button{font-size:12px}.cookie-banner{gap:14px;padding:17px}.cookie-banner .cookie-actions{gap:7px;display:grid;grid-template-columns:1fr 1fr}.cookie-banner .cookie-actions .cookie-button:last-child{grid-column:1/-1}.cookie-dialog{padding:24px 20px}.cookie-dialog h2{font-size:21px}.cookie-dialog .cookie-actions{display:grid;grid-template-columns:1fr}.cookie-dialog .cookie-button{width:100%}.cookie-category label{font-size:12px}.cookie-category p{font-size:10px}.footer{gap:18px}}
@media(prefers-reduced-motion:reduce){.cookie-banner,.cookie-dialog{scroll-behavior:auto}}
.header{position:sticky;top:0;z-index:100;background:#060c0ef5;backdrop-filter:blur(12px)}html{scroll-padding-top:120px}.cookie-banner a{color:var(--text);text-decoration:underline;text-underline-offset:3px}.cookie-banner a:hover{color:var(--lime)}
.button .cta-arrow{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.button .cta-arrow svg{width:20px;height:20px;stroke-width:1.8}.hero-actions .button .cta-arrow svg{width:22px;height:22px}
@media(max-width:800px){html{scroll-padding-top:100px}}
/* Keep the illuminated floor aligned with the box while extending it beneath the copy. */
.hero{container-type:inline-size;--hero-art-width:min(720px,64cqw);--hero-art-top:8px;--hero-art-right:-18px}
.hero .hero-art{width:var(--hero-art-width);max-width:none;top:var(--hero-art-top);right:var(--hero-art-right)}
.hero>.hero-floor{display:block;position:absolute;width:calc(var(--hero-art-width)*.680556);height:auto;left:auto;bottom:auto;right:calc(var(--hero-art-right) + var(--hero-art-width)*.669444);top:calc(var(--hero-art-top) + var(--hero-art-width)*.7);z-index:0;pointer-events:none;mix-blend-mode:lighten;mask-image:linear-gradient(90deg,transparent 0%,black 10%,black 40%,transparent 70%),linear-gradient(180deg,transparent,black 25%,black 70%,transparent);mask-composite:intersect}
@media(max-width:1100px){.hero{--hero-art-width:min(640px,66cqw);--hero-art-top:24px;--hero-art-right:-15px}}
@media(max-width:800px){.hero{--hero-art-width:min(570px,67cqw);--hero-art-top:50px;--hero-art-right:-10px}}
@media(max-width:560px){.hero .hero-art{position:relative;width:calc(100% + 20px);right:auto;top:auto}.hero>.hero-floor{display:none}}
.client-rotator{flex:1;min-width:0;position:relative;padding:20px 0}.client-viewport{overflow:hidden;width:100%;mask-image:linear-gradient(90deg,transparent,black 2%,black 98%,transparent)}.client-grid{display:flex;width:400%;align-items:center;animation:client-marquee 40s linear infinite;will-change:transform}.proof .client-grid .client{flex:0 0 5%;width:5%;max-width:none;min-width:0;padding:0 12px;box-sizing:border-box}.proof .client-grid .client img{display:block;width:143px;max-width:100%;height:50px;object-fit:contain;filter:grayscale(1) invert(1);mix-blend-mode:screen;opacity:.8;margin:auto}@keyframes client-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}@media(max-width:800px){.client-rotator{flex-basis:100%;width:100%;padding:0}.proof .client-grid .client{padding:0 9px}}@media(max-width:560px){.proof .client-grid .client{padding:0 6px}.proof .client-grid .client img{height:42px}}@media(prefers-reduced-motion:reduce){.client-grid{animation:none;will-change:auto}}
/* Feature tabs: illustration and copy follow the Figma composition. */
.platform .tabs{margin:22px auto 52px}.platform .tabs button{white-space:nowrap;cursor:pointer}
.platform .tabs button:focus-visible,.feature-panel:focus-visible{outline:2px solid var(--lime);outline-offset:5px}
.feature-panels{min-height:390px}.feature-panel{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;animation:feature-enter .28s ease-out both;text-align:left}
.feature-panel[hidden]{display:none!important}.feature-panel.is-leaving{animation:feature-leave .16s ease-in both;pointer-events:none}
.feature-illustration{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;mix-blend-mode:lighten}
.feature-copy{align-self:center}.feature-icon{display:flex;align-items:center;justify-content:center;width:56px;height:56px;background:#9ed8000d;border-radius:16px;color:var(--lime);margin-bottom:20px}.feature-icon svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.feature-copy h3{font-size:22px;line-height:1.4;font-weight:700;letter-spacing:-.02em;margin:0 0 20px}.feature-copy p{font-size:14px;line-height:1.85;color:var(--muted);margin:0}
@keyframes feature-enter{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@keyframes feature-leave{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-5px)}}
@media(max-width:1100px){.feature-panel{gap:30px}.feature-copy p{font-size:13px}.platform .tabs button{padding:12px 14px;font-size:11px}}
@media(max-width:800px){.platform .tabs{margin-bottom:36px}.platform .tabs button{font-size:10px;padding:11px 9px;gap:6px}.feature-panel{gap:24px}.feature-copy p{font-size:12px;line-height:1.8}.feature-copy h3{font-size:20px;margin-bottom:15px}.feature-icon{width:48px;height:48px;margin-bottom:16px}.feature-panels{min-height:430px}}
@media(max-width:620px){.platform .tabs{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:4px}.platform .tabs button{justify-content:flex-start;padding:12px 10px;font-size:11px;gap:8px}.platform .tabs button svg{width:17px;height:17px}.feature-panel{grid-template-columns:1fr;gap:24px}.feature-illustration{max-width:520px;margin:auto}.feature-copy p{font-size:13px}.feature-copy h3{font-size:21px}.feature-panels{min-height:720px}.feature-copy{align-self:start}}
@media(max-width:380px){.platform .tabs button{font-size:10px;padding:11px 7px}.feature-panels{min-height:760px}}
@media(prefers-reduced-motion:reduce){.feature-panel,.feature-panel.is-leaving{animation:none}.platform .tabs button{transition:none}}
.consultation .section-head h2{flex-shrink:0}.consultation .section-head>p{max-width:55%}
@media(max-width:560px){.consultation .section-head>p{max-width:none}}
.consultation .section-head{display:block}.consultation .section-head>p{max-width:760px;margin:22px 0 0;font-size:13px;line-height:1.8}
@media(max-width:560px){.consultation .section-head>p{font-size:12px}}
/* Mobile proof label and a continuous consultation timeline. */
@media(max-width:800px){
 .proof{justify-content:flex-start}.proof-number{justify-content:flex-start;gap:6px;margin:0;width:100%;text-align:left}.proof-number strong,.proof-number>span{font-size:12px;line-height:1.5;font-weight:600;letter-spacing:0}.proof-number>span br{display:none}.proof-number>span br::after{content:' '}
 .consultation .steps{display:block;margin-top:32px}.consultation .steps li{position:relative;padding:0 0 30px 62px;min-height:74px}.consultation .steps li:last-child{padding-bottom:0}.consultation .steps li::before{content:'';position:absolute;left:20px;top:42px;bottom:0;width:1px;background:var(--line)}.consultation .steps li:last-child::before{display:none}.consultation .steps li>span{position:absolute;left:0;top:0;margin:0;width:42px;height:42px}.consultation .steps li>span::after{display:none}.consultation .steps h3{font-size:14px;line-height:1.5;margin:0 0 9px;padding-top:10px}.consultation .steps p{font-size:12px;line-height:1.8}
}
@media(max-width:620px){.feature-copy .feature-icon{display:none}}
.feature-panels{display:grid;min-height:0}.feature-panel{grid-area:1 / 1}.feature-panel[hidden]{display:grid!important;visibility:hidden;pointer-events:none;animation:none}
@media(max-width:620px){.feature-copy{order:-1}}

@media(max-width:800px){.client-grid{width:1000%}.proof .client-grid .client{padding:0 12px}.proof .client-grid .client img{width:100%;max-width:200px;height:64px}}
