/* Concept 04: desktop art direction. Structure and product copy are preserved. */
:root{--v4-ink:#201936;--v4-muted:#625971;--v4-violet:#6d48c6;--v4-line:#e3deed;--v4-paper:#f8f6fc;--v4-night:#19143f;--v4-night-mid:#251b66;--v4-night-card:#211950;--v4-night-line:#5e508b;--v4-hero-gradient:radial-gradient(ellipse at 74% 40%,#6650ef6b,transparent 57%),linear-gradient(115deg,var(--v4-night),var(--v4-night-mid) 68%,var(--v4-night))}
body{background:var(--v4-paper);color:var(--v4-ink)}
.wrap{max-width:1480px;padding-left:56px;padding-right:56px}
.header-shell{height:86px!important;background:var(--v4-night)!important;border-bottom:1px solid #ffffff12}
.header.wrap{min-height:86px;gap:22px}
.desktop-nav{gap:20px!important}.desktop-nav a,.desktop-nav button.nav-toggle{font-size:13px!important;font-weight:550!important}
.header .brand{margin-right:0}.header .brand img{width:68px;height:46px;object-fit:contain}
.header .header-cta{font-size:13px!important}
.header .nav-toggle svg{width:14px;height:14px;flex:0 0 14px;vertical-align:middle}
#start{padding-top:44px!important}.hero-grid{grid-template-columns:1.08fr 1fr!important;min-height:590px!important;gap:36px!important;align-items:center!important;padding:18px 0 54px!important}
#hero-title{font-size:clamp(38px,2.8vw,48px)!important;line-height:1.12!important;letter-spacing:-1.8px!important;font-weight:700!important}
.hero-copy>p{font-size:18px!important;line-height:1.65!important;max-width:570px!important;color:#d7cdeb!important;margin-top:24px!important}
.hero-copy .eyebrow,.hero-copy>.kicker{font-size:12px!important;letter-spacing:.12em!important;color:#d5c5ef!important}
.hero .hero-actions{margin-top:30px!important;gap:14px!important;flex-wrap:wrap}
.button{min-height:52px;font-size:14px!important;font-weight:600!important;line-height:1.35!important;gap:14px!important}
.button .button-icon{width:34px!important;height:34px!important;flex:0 0 34px!important;display:grid!important;place-items:center!important}
.button .button-icon svg{width:18px!important;height:18px!important;display:block!important;transform:none!important}
.hero-actions>.button{min-height:52px!important;padding:8px 9px 8px 22px!important}
.button.primary,.hero-actions>.button.primary,#pricing .price-card>.button.primary{background:linear-gradient(110deg,#c92770 0%,#db493c 55%,#c65d18 100%)!important;color:#fff!important;text-shadow:none;box-shadow:0 12px 28px #c3304318!important}
.button.primary:hover{filter:brightness(1.08)!important}
#start .hero-visual.unified-art{aspect-ratio:1.23!important;border-radius:0!important;overflow:visible!important}
.hero-slider-controls{bottom:0!important;padding:0!important;justify-content:center!important}
.hero-slider-controls .slide-dots{gap:12px!important}.hero-slider-controls .slide-dot{height:7px!important;min-width:7px!important}
.hero-grid .slide-arrow{opacity:1!important;pointer-events:auto!important;width:42px!important;height:42px!important;border-color:#ffffff45!important;background:#ffffff08!important;top:auto!important;bottom:0!important;transform:none!important}
.hero-grid .slide-prev{left:calc(50% - 155px)!important}.hero-grid .slide-next{right:calc(50% - 155px)!important}
.hero-benefits{padding:36px 0!important;margin-top:36px!important;border-top:1px solid #ffffff20;gap:20px!important}
.hero-benefits strong{font-size:14px!important}.hero-benefits p,.hero-benefits small{font-size:12px!important;line-height:1.5!important;color:#c6bddd!important}
#offer-assistant-legacy{margin-top:20px!important;border-top:1px solid #ffffff1c;padding-top:32px!important}
#offer-assistant-legacy h2{font-size:34px!important;line-height:1.2!important}
#offer-assistant-legacy h2 span{background:none!important;-webkit-text-fill-color:#d1b3ff!important;color:#d1b3ff!important}
#offer-assistant-legacy .raccoon-portrait img{height:290px!important}
#offer-assistant-legacy .raccoon-invite p{font-size:16px!important;color:#d7cdeb!important}
.raccoon-entry{box-shadow:0 10px 24px #110a2c16}.raccoon-entry input{font-size:16px!important}
.page-section,.v2-section,.direction-section,#clients{padding-top:96px!important;padding-bottom:96px!important}
.eyebrow{font-size:12px!important;font-weight:650!important;letter-spacing:.11em!important;line-height:1.5!important}
.section-heading,.v2-heading,.direction-heading{margin:16px 0 40px!important;gap:48px!important;align-items:end!important}
.section-heading h2,.v2-heading h2,.direction-heading h2,#clients h2{font-size:clamp(36px,3.05vw,46px)!important;line-height:1.12!important;letter-spacing:-1.5px!important;font-weight:700!important}
.section-heading>p,.v2-heading>p,.direction-heading>p{font-size:17px!important;line-height:1.6!important;max-width:370px!important;color:var(--v4-muted)!important}
.direction-heading h2 span,#clients h2 span{color:var(--v4-violet)!important}
.direction-grid{gap:24px!important}.direction-tile{border-radius:24px!important;border:1px solid var(--v4-night-line)!important;background:var(--v4-night-card)!important;box-shadow:none!important;transform:none!important}
.direction-tile:hover{border-color:#a68bd3!important;box-shadow:0 18px 38px #2b1c4b16!important}
.direction-image{height:260px!important;aspect-ratio:auto!important;padding:10px 36px 0!important;background:radial-gradient(ellipse at 60% 35%,#6650ef55,transparent 70%),var(--v4-night-card)!important;overflow:hidden}
.direction-image .direction-pack-art{height:100%!important;max-height:250px!important;object-fit:contain!important;transform:none!important}
.direction-image .real-badge{font-size:13px!important;padding:12px 18px!important;border-radius:16px!important;bottom:12px!important;left:24px!important;min-height:0!important;box-shadow:0 8px 20px #12091d1a}
.direction-image .real-badge span{font-size:20px!important;width:32px!important;height:32px!important;display:grid;place-items:center}
.direction-copy{padding:26px 28px 28px!important}.direction-copy small{font-size:12px!important;color:#bfaedc!important}.direction-copy h3{font-size:23px!important;line-height:1.25!important;margin:12px 0 14px!important;letter-spacing:-.45px!important}.direction-copy p{font-size:16px!important;line-height:1.65!important;color:#d9cfea!important;margin-bottom:24px!important}
.direction-price{margin-top:auto!important;padding-top:20px!important;border-top:1px solid #ffffff20!important}.direction-price-row{gap:16px!important;align-items:center!important}.direction-price-value{font-size:19px!important;font-weight:650!important}.direction-price-label,.direction-price-note{font-size:11px!important;color:#baacd0!important}.direction-link.button.secondary{font-size:13px!important;min-height:48px!important;white-space:nowrap}
#offer-platform{background:#fff!important;color:var(--v4-ink)!important}
#offer-platform .section-heading h2{color:var(--v4-ink)!important}#offer-platform .section-heading h2 span{color:var(--v4-violet)!important}
#offer-platform .eyebrow{color:var(--v4-violet)!important}
#offer-platform .offer-group-heading h3{color:var(--v4-ink)!important}
#offer-services{background:var(--v4-hero-gradient)!important}
#offer-services .section-heading>p{color:#d2c7e4!important}
#offer-services .section-heading h2 span{color:#c7a6f6!important}
.offer-catalog-tabs{padding:6px!important;gap:4px!important;border:1px solid var(--v4-line)!important;border-radius:16px!important;background:#f5f2fa!important;width:max-content!important;max-width:100%;margin:0 0 30px!important}
.offer-catalog-tab{min-height:46px!important;border:0!important;border-radius:11px!important;padding:10px 22px!important;background:transparent!important;color:#615472!important;font-size:14px!important;font-weight:600!important}
.offer-catalog-tab[aria-selected=true]{background:#6c48be!important;color:#fff!important;box-shadow:0 4px 10px #42266e1a!important}
#offer-services .offer-catalog-tabs{background:#ffffff0b!important;border-color:#ffffff28!important}
#offer-services .offer-catalog-tab{color:#dacfee!important}#offer-services .offer-catalog-tab[aria-selected=true]{background:#e6d8ff!important;color:#392154!important}
.offer-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important}
.offer-group-heading{margin-bottom:22px!important}.offer-group-heading h3{font-size:22px!important;line-height:1.25!important}
.offer-card{padding:24px 24px 50px!important;min-height:226px!important;border-radius:20px!important;border:1px solid #e1d9ed!important;background:#faf8fe!important;box-shadow:none!important;transition:border-color .2s,box-shadow .2s!important}
.offer-card:hover{transform:translateY(-3px)!important;border-color:#b099d2!important;box-shadow:0 12px 26px #2b1c4b0c!important}
.offer-card h4{font-size:18px!important;line-height:1.3!important;letter-spacing:-.3px!important;color:#2b2040!important;margin:18px 0 10px!important}
.offer-card p{font-size:14px!important;line-height:1.65!important;color:#655a75!important}
.offer-card .offer-pictogram{width:42px!important;height:42px!important;border-radius:12px!important}.offer-card .offer-pictogram svg{width:24px!important;height:24px!important}
.offer-card .offer-arrow{width:28px!important;height:28px!important;right:20px!important;bottom:16px!important;color:#7b5ba7!important}
#clients .qr-client-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}#clients .qr-client-tile{border-radius:16px;height:108px;background:#fff!important}
#clients .section-heading{max-width:none!important}#clients .proof-grid{gap:20px!important}
#implementations{background:var(--v4-hero-gradient)!important}#implementations .section-heading>p{color:#d6cbe6!important}
#cases{background:#f8f6fc!important}.v4-case-controls{display:flex;justify-content:flex-end;gap:10px;margin:-12px 0 22px}.v4-rail-button{display:grid;place-items:center;width:48px;height:48px;border:1px solid #d6cce2;border-radius:50%;color:#432d67;background:#fff;cursor:pointer}.v4-rail-button svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6}.v4-rail-button:disabled{opacity:.32;cursor:default}
#cases .cases-rail{width:100%!important;margin:0!important;grid-auto-columns:calc((100% - 24px)/2.2)!important;gap:24px!important;padding:0 0 22px!important;scrollbar-width:thin;scrollbar-color:#c5b3dd transparent}
#cases .v2-case--cover{min-height:620px!important;height:auto!important;border-radius:24px!important;background:var(--v4-night)!important;overflow:hidden!important;border:1px solid var(--v4-night-line)!important}
#cases .v2-case--cover::after{background:linear-gradient(180deg,#19143f00 0%,#19143f16 24%,#19143ff5 48%,var(--v4-night) 65%)!important}
#cases .v2-case-photo{height:320px!important;object-fit:cover;opacity:.86!important}
#cases .v2-case-overlay{position:relative!important;inset:auto!important;min-height:620px!important;height:100%!important;padding:210px 28px 26px!important;display:flex!important;flex-direction:column!important;background:linear-gradient(180deg,transparent 110px,#19143fdc 245px,var(--v4-night) 330px)!important}
#cases .v2-case-logo{top:24px!important;left:28px!important;width:70px!important;height:70px!important;border-radius:18px!important;box-shadow:0 8px 24px #0002!important}
#cases .v2-case--cover h3{font-size:29px!important;line-height:1.2!important;margin:14px 0!important;letter-spacing:-.8px!important}
#cases .v2-case--cover p{font-size:15px!important;line-height:1.65!important;color:#ddd3e9!important;-webkit-line-clamp:unset!important;display:block!important;margin:0 0 24px!important}
#cases .v2-case-metrics{padding:22px 0!important;margin:auto 0 24px!important;border-top:1px solid #ffffff25!important;gap:16px!important}.v2-case-metric-value{font-size:28px!important;font-weight:650!important;color:#e2c4ff!important}.v2-case-metric-arrow{display:none!important}.v2-case-metric-label{font-size:12px!important;color:#c2b4d1!important}
#cases .v2-case--cover .button{min-height:48px!important;padding:8px 10px 8px 20px!important;font-size:14px!important;width:fit-content!important}
.v4-case-note{font-size:12px;color:#756783;margin:14px 0 0;line-height:1.5}
#reviews .reviews-rail{width:100%!important;grid-auto-columns:calc((100% - 40px)/3)!important;gap:20px!important;padding-bottom:18px!important}
#reviews .video-review-card{border-radius:20px!important;overflow:hidden;min-height:300px!important}#reviews .video-review-card .play-circle{width:60px!important;height:60px!important;background:#fffc!important;box-shadow:0 8px 30px #0002!important}
#pricing{background:#fff!important}.pricing-grid{gap:20px!important}#pricing .price-card{border-radius:24px!important;padding:30px!important;border:1px solid #dfd6e8!important;background:#fcfaff!important}#pricing .price-card.recommended{border:2px solid #8762bd!important;box-shadow:0 16px 48px #6a3e9e10!important}
#pricing .price-card h3{font-size:25px!important;line-height:1.25!important;letter-spacing:-.6px!important}#pricing .price-card>p{font-size:15px!important;line-height:1.6!important}#pricing .price-card li{font-size:14px!important;line-height:1.55!important}#pricing .price-line{font-size:34px!important;line-height:1.2!important;margin:24px 0!important;letter-spacing:-1px!important}#pricing .price-line small{font-size:13px!important;line-height:1.4!important;letter-spacing:0!important}#pricing .recommended [data-plan-price]{color:#6e48a3!important;background:none!important;-webkit-text-fill-color:#6e48a3!important}#pricing .v2-plan-facts{font-size:12px!important;line-height:1.6!important}
/* Light tariff cards must not inherit text colors from the former dark plan. */
#pricing .price-card,
#pricing .price-card h3,
#pricing .price-card .price-line{color:var(--v4-ink)!important}
#pricing .price-card>p,
#pricing .price-card li,
#pricing .price-card .v2-plan-facts dd{color:#51445f!important}
#pricing .price-card .eyebrow,
#pricing .price-card .price-line small,
#pricing .price-card .price-was,
#pricing .price-card .v2-plan-facts dt{color:#6d5c7d!important}
#pricing #billing-note,
#pricing .pricing-inclusions p{color:#625971!important}
#pricing .billing-period .billing-save{color:#176b3d}
#pricing .billing-period button[aria-pressed="true"] .billing-save{color:#fff}
#pricing .price-card>.button{font-size:13px!important;min-height:50px!important}
.billing-switch{padding:5px!important;border-radius:14px!important}.billing-switch button{font-size:14px!important;padding:12px 20px!important;border-radius:10px!important}.billing-switch button[aria-pressed=true]{background:#6c48be!important;color:#fff!important}
#faq{background:#fff!important}#faq .v2-faq{column-gap:64px!important}#faq .v2-faq summary{font-size:17px!important;line-height:1.4!important;padding:24px 30px 24px 0!important}#faq .v2-faq details p{font-size:15px!important;line-height:1.7!important}
.site-footer.site-footer--compact{padding:56px 0 28px!important;background:var(--v4-hero-gradient)!important}.site-footer .footer-grid{gap:40px!important}.site-footer .footer-col h2{font-size:15px!important}.site-footer .footer-col a{font-size:14px!important;line-height:1.6!important}.site-footer .footer-legal{margin-top:36px!important;padding-top:24px!important;font-size:12px!important;border-color:#ffffff18!important}
.nav-dropdown{border-radius:0 0 24px 24px!important;box-shadow:0 24px 60px #120d2930!important;border:1px solid #e7deef!important;max-height:calc(100dvh - 106px)!important;overflow:auto!important}
.services-menu-levels{padding:12px!important;background:#f3eff8!important;border-radius:16px!important}.services-level{font-size:15px!important;min-height:52px!important;border-radius:10px!important}.services-panel-links a{font-size:15px!important;line-height:1.4!important;padding:12px 14px!important;border-radius:10px!important;color:#473558!important}.services-panel-links a:hover{background:#f0eaf8!important;color:#6f3da5!important}
.assistant-widget{max-width:230px!important;right:20px!important;bottom:20px!important;background:var(--v4-night-mid)!important;border:1px solid #b79ad34d!important;box-shadow:0 12px 32px #1b0a3424!important}.assistant-widget>button[data-open]{padding:12px 16px!important}.assistant-widget strong{font-size:13px!important}.assistant-widget small{font-size:11px!important}
a:focus-visible,button:focus-visible{outline:3px solid #c597f4!important;outline-offset:4px!important}
/* Desktop sizing only; mobile adaptation is intentionally a separate task. */
@media(min-width:1000px) and (max-width:1350px){.wrap{padding-left:36px;padding-right:36px}.header.wrap{gap:14px}.desktop-nav{gap:12px!important}.desktop-nav a,.desktop-nav button.nav-toggle{font-size:11px!important}.hero-grid{grid-template-columns:1.13fr 1fr!important;gap:26px!important;min-height:560px!important}#hero-title{font-size:37px!important;letter-spacing:-1.3px!important}.hero-copy>p{font-size:16px!important}.hero-actions>.button{font-size:12px!important}.direction-price-row{flex-wrap:wrap!important}.offer-card{padding:22px 20px 48px!important}.offer-card h4{font-size:17px!important}.section-heading h2,.v2-heading h2{font-size:38px!important}#pricing .price-card{padding:24px!important}#pricing .price-card h3{font-size:22px!important}}
#hero-title{font-size:clamp(36px,2.55vw,44px)!important;line-height:1.16!important;letter-spacing:-1.5px!important}
#start .hero-copy p.hero-description{font-size:18px!important;line-height:1.65!important;max-width:570px!important;margin-top:26px!important}
.hero-grid .slide-arrow[data-slide-step="-1"]{left:calc(50% - 150px)!important}.hero-grid .slide-arrow[data-slide-step="1"]{right:calc(50% - 150px)!important}
#cases .v2-case--cover .v2-case-overlay>p{max-width:none!important;width:100%!important}
#cases .v2-case--cover .v2-case-metrics{width:100%!important}
@media(min-width:1000px) and (max-width:1350px){#hero-title{font-size:36px!important;letter-spacing:-1.4px!important}#start .hero-copy p.hero-description{font-size:16px!important}}
.header-shell .nav-dropdown.services-dropdown .services-menu{min-height:300px!important;height:auto!important;padding:0 40px!important;align-items:start!important}
.header-shell .nav-dropdown.services-dropdown{border-radius:0 0 22px 22px!important}
#hero-title{font-size:clamp(36px,3vw,44px)!important}
.hero-grid .hero-slider-controls{position:relative!important;min-height:42px!important;align-items:center!important;gap:24px!important}
.hero-grid .hero-slider-controls .slide-arrow{position:static!important;inset:auto!important;flex:0 0 42px!important}
@media(min-width:1000px) and (max-width:1350px){#hero-title{font-size:36px!important}}
#start.hero::before{left:calc(50% - 50vw)!important;right:calc(50% - 50vw)!important;top:-86px!important;bottom:0!important}
.header-shell,.header-shell.is-scrolled{box-shadow:0 4px 20px #160e2920!important}
/* The hero gradient extends behind the header. Pinned and open sales navigation keep their surface. */
html:not(.sales-open) .header-shell:not(.is-scrolled):not(.is-pinned){background:transparent!important;border-bottom-color:transparent!important;box-shadow:none!important;backdrop-filter:none!important}

#offer-platform.offer-catalog-section .section-heading>p{color:#655a75!important;opacity:1!important}
#offer-platform.offer-catalog-section .section-topline .eyebrow{color:#79599d!important;opacity:1!important}
#cases .v2-heading h2 span,#pricing .v2-heading h2 span,#reviews .section-heading h2 span{color:#6d48c6!important}

/* One night palette, sampled from the first screen, across the homepage. */
#start.hero::before{background:var(--v4-hero-gradient)!important}
#cases .v2-case--cover::before{background:linear-gradient(180deg,#19143f00 8%,#19143f55 42%,#19143fe8 78%,var(--v4-night) 100%)!important}
#implementations .impl-mosaic-item{background:var(--v4-night-card)}
#implementations .impl-mosaic-item::after{background:linear-gradient(transparent,#19143fa6)}
/* Start process: the same spacing, typography and CTA as the rest of V4. */
#process{background:var(--v4-paper);color:var(--v4-ink);scroll-margin-top:86px}
#process .eyebrow{color:var(--v4-violet)}
#process h2 em{color:var(--v4-violet);font-style:normal}
.v4-process-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;list-style:none;padding:0;margin:48px 0 0}
.v4-process-step{position:relative;padding-top:24px;border-top:1px solid #d7cce8}
.v4-process-number{display:grid;place-items:center;width:44px;height:44px;margin-bottom:24px;border:1px solid #cab8e1;border-radius:50%;background:#fff;color:#6d48c6;font-size:14px;font-weight:600}
.v4-process-step h3{font-size:22px;line-height:1.3;font-weight:600;letter-spacing:-.45px;color:var(--v4-ink);margin:0 0 14px}
.v4-process-step p{margin:0;font-size:16px;line-height:1.7;color:var(--v4-muted)}
.v4-process-cta{display:flex;align-items:center;justify-content:space-between;gap:36px;margin-top:44px;padding:28px 32px;background:#fff;border:1px solid var(--v4-line);border-radius:24px}
.v4-process-cta h3{font-size:22px;line-height:1.35;letter-spacing:-.4px;margin:0 0 8px;color:var(--v4-ink)}
.v4-process-cta p{font-size:16px;line-height:1.6;margin:0;color:var(--v4-muted)}
.v4-process-cta .button{flex-shrink:0;padding:8px 9px 8px 22px}
