@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 400 700; font-display: swap; src: url('/assets/fonts/dm-sans-latin.woff2') format('woff2'); }
@font-face { font-family: 'Manrope'; font-style: normal; font-weight: 500 800; font-display: swap; src: url('/assets/fonts/manrope-latin.woff2') format('woff2'); }

/* Blogoverzicht en vaste artikelopmaak. */
.blog-overview-hero{background:linear-gradient(135deg,#fff 0%,#fbf6ff 60%,#fff4e9 100%)}.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.blog-card{overflow:hidden;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 16px 45px rgba(52,28,68,.08);transition:.25s}.blog-card:hover{transform:translateY(-4px);box-shadow:0 22px 55px rgba(52,28,68,.13)}.blog-card-image{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--lavender)}.blog-card-image img{width:100%;height:100%;object-fit:cover;transition:.35s}.blog-card:hover .blog-card-image img{transform:scale(1.025)}.blog-card-placeholder{display:grid;place-items:center;background:linear-gradient(135deg,var(--plum),var(--purple));color:#fff}.blog-card-placeholder span{font:700 clamp(24px,3vw,38px)/1 Manrope,sans-serif}.blog-card-body{padding:26px}.blog-card-body h3{margin:0 0 12px;font-size:22px;line-height:1.25}.blog-card-body>p:not(.eyebrow){min-height:72px;color:var(--muted);line-height:1.65}.blog-card-body .text-link{margin-top:10px}.blog-empty{padding:70px 25px;border:1px dashed #d8c8e6;border-radius:20px;background:var(--lavender);text-align:center}.blog-empty>span{display:grid;place-items:center;width:54px;height:54px;margin:0 auto 16px;border-radius:14px;background:#fff;color:var(--purple);font-size:24px}.blog-empty h3{margin:0 0 8px}.blog-empty p{margin:0;color:var(--muted)}
.blog-filters{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin:0 0 28px;padding:12px;border:1px solid var(--line);border-radius:15px;background:#fff}.blog-filters a{display:flex;align-items:center;gap:8px;border:1px solid transparent;border-radius:99px;padding:10px 15px;color:var(--muted);font-size:13px;font-weight:700;transition:.2s}.blog-filters a:hover{border-color:#d8c6e7;color:var(--purple)}.blog-filters a.active{background:var(--purple);color:#fff}.blog-filters span{display:grid;place-items:center;min-width:22px;height:22px;border-radius:50%;background:var(--lavender);color:var(--purple);font-size:10px}.blog-filters a.active span{background:rgba(255,255,255,.2);color:#fff}.blog-filter-result{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:-10px 0 24px;color:var(--muted);font-size:13px}.blog-filter-result a{color:var(--purple);font-weight:700}.blog-card-categories,.blog-article-categories{display:flex;flex-wrap:wrap;gap:7px}.blog-card-categories{margin-bottom:14px}.blog-card-categories span,.blog-article-categories a{border-radius:99px;padding:6px 10px;background:var(--lavender);color:var(--purple);font-size:10px;font-weight:800}.blog-article-categories{justify-content:center;margin:22px 0 0}
.blog-article-header{padding:80px 0 0;background:linear-gradient(180deg,#fff 0%,#fbf7ff 100%)}.blog-title-wrap{max-width:960px;text-align:center}.blog-title-wrap .breadcrumb{text-align:left}.blog-title-wrap h1{max-width:900px;margin:22px auto 20px;font-size:clamp(40px,6vw,76px);line-height:1.02;letter-spacing:-.035em}.blog-title-wrap .lead{max-width:760px;margin:0 auto;color:var(--muted);font-size:clamp(18px,2.2vw,24px);line-height:1.55}.blog-hero-image{margin-top:55px}.blog-hero-image img{display:block;width:100%;max-height:650px;aspect-ratio:16/7;object-fit:cover;border-radius:24px;box-shadow:0 25px 70px rgba(52,28,68,.14)}.blog-article-layout{display:grid;grid-template-columns:minmax(0,760px) 310px;justify-content:center;align-items:start;gap:90px;padding-top:80px;padding-bottom:100px}.blog-content{font-size:18px;line-height:1.85;color:#413645}.blog-content>p:first-child{font-size:21px;color:var(--ink)}.blog-content h2{margin:58px 0 18px;font-size:clamp(27px,3vw,38px);line-height:1.18}.blog-content h3{margin:38px 0 14px;font-size:23px}.blog-content h4{margin:30px 0 12px;font-size:19px;line-height:1.35}.blog-content h5{margin:26px 0 10px;font-size:17px;line-height:1.4}.blog-content h6{margin:22px 0 9px;font-size:15px;line-height:1.4}.blog-content ul{display:grid;gap:12px;margin:20px 0;padding-left:24px}.blog-content li::marker{color:var(--purple)}.blog-content blockquote{margin:38px 0;padding:24px 28px;border-left:5px solid var(--purple);border-radius:0 14px 14px 0;background:var(--lavender);color:var(--ink);font:600 20px/1.55 Manrope,sans-serif}.blog-aside{position:sticky;top:120px}.blog-aside>div{padding:28px;border:1px solid var(--line);border-radius:18px;background:var(--cream)}.blog-aside h2{margin:0 0 12px;font-size:24px}.blog-aside p:not(.eyebrow){color:var(--muted);line-height:1.65}.blog-aside .button{width:100%;margin-top:10px}.blog-back{display:flex;align-items:end;justify-content:space-between;gap:30px}.blog-back h2{margin:0}
@media(max-width:1050px){.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.blog-article-layout{grid-template-columns:minmax(0,720px);gap:45px}.blog-aside{position:static}.blog-aside>div{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px 25px}.blog-aside .eyebrow{grid-column:1/-1}.blog-aside h2,.blog-aside p{margin:0}.blog-aside .button{grid-column:2;grid-row:2/4;width:auto;margin:0}}
@media(max-width:650px){.blog-grid{grid-template-columns:1fr}.blog-card-body>p:not(.eyebrow){min-height:0}.blog-filters{flex-wrap:nowrap;overflow-x:auto;padding:9px}.blog-filters a{flex:0 0 auto}.blog-filter-result{align-items:flex-start;flex-direction:column;gap:5px}.blog-article-header{padding-top:45px}.blog-title-wrap{text-align:left}.blog-title-wrap h1{margin-top:16px}.blog-title-wrap .lead{margin:0}.blog-article-categories{justify-content:flex-start}.blog-hero-image{margin-top:32px;padding:0}.blog-hero-image img{border-radius:0;aspect-ratio:16/9}.blog-article-layout{padding-top:50px;padding-bottom:65px}.blog-content{font-size:16px;line-height:1.75}.blog-content>p:first-child{font-size:18px}.blog-content h2{margin-top:42px}.blog-aside>div{display:block}.blog-aside .button{width:100%;margin-top:10px}.blog-back{align-items:flex-start;flex-direction:column}}
.blog-content p{font-weight:400}.blog-content ol{display:grid;gap:12px;margin:20px 0;padding-left:27px}.blog-content a{color:var(--purple);text-decoration:underline;text-underline-offset:3px}.blog-content a:hover{color:var(--purple-dark)}.blog-content u{text-underline-offset:3px}.blog-content table{display:block;width:100%;margin:34px 0;border-collapse:collapse;overflow-x:auto;font-size:15px}.blog-content thead{background:var(--lavender)}.blog-content th,.blog-content td{min-width:150px;border:1px solid var(--line);padding:13px 15px;text-align:left;vertical-align:top}.blog-content th{color:var(--ink);font-family:Manrope,sans-serif;font-weight:700}.blog-content tbody tr:nth-child(even){background:#fcf9ff}

/* Eigen service- en foutpagina's. */
.error-page{min-height:100vh;background:radial-gradient(circle at 85% 12%,rgba(131,56,236,.14),transparent 32%),linear-gradient(180deg,#fff 0%,#fff8ef 100%)}.error-page main{display:grid;place-items:center;min-height:calc(100vh - 150px);padding:70px 0}.error-card{position:relative;overflow:hidden;width:min(920px,100%);padding:clamp(38px,7vw,82px);border:1px solid var(--line);border-radius:28px;background:#fff;box-shadow:0 28px 80px rgba(52,28,68,.12)}.error-code{position:absolute;top:-34px;right:28px;color:rgba(131,56,236,.07);font:800 clamp(130px,24vw,260px)/1 Manrope,sans-serif}.error-card .eyebrow{position:relative}.error-card h1{position:relative;max-width:700px;margin:0;font-size:clamp(42px,7vw,78px);line-height:1.03;letter-spacing:-.035em}.error-card>p:not(.eyebrow){position:relative;max-width:650px;margin:24px 0 30px;color:var(--muted);font-size:18px;line-height:1.7}.error-actions{position:relative;display:flex;flex-wrap:wrap;gap:12px}.error-actions .button-secondary{border:1px solid #d8c5e8;background:#fff;color:var(--purple)}.error-actions .button-secondary:hover{border-color:var(--purple);background:var(--lavender)}.error-contact{position:relative;margin-top:35px;padding-top:24px;border-top:1px solid var(--line);color:var(--muted);font-size:14px}.error-contact a{color:var(--purple);font-weight:700}@media(max-width:650px){.error-page main{padding:25px 0}.error-card{border-radius:20px}.error-actions{display:grid}.error-actions .button{width:100%}}
:root {
  --purple: #8338ec;
  --purple-dark: #6322bd;
  --purple-soft: #eee4ff;
  --plum: #2b1a3d;
  --cream: #fff8f1;
  --peach: #ffb58f;
  --peach-soft: #fff0e7;
  --coral: #e8674c;
  --sand: #ead8c5;
  --white: #fff;
  --ink: #251b2d;
  --muted: #706777;
  --line: #e7ddd5;
  --shadow: 0 24px 65px rgba(48, 30, 61, .12);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; overflow-x: hidden; color: var(--ink); background: var(--white); font-family: 'DM Sans', sans-serif; line-height: 1.65; }
body.menu-open { overflow: hidden; }
img { max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
.container { width: min(1160px, calc(100% - 40px)); margin-inline: auto; }
.section { padding: 105px 0; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0, 0, 0, 0); }
.skip-link { position: fixed; z-index: 200; top: 10px; left: 10px; padding: 10px 16px; background: var(--white); transform: translateY(-150%); }
.skip-link:focus { transform: translateY(0); }

h1, h2, h3 { margin-top: 0; font-family: 'Manrope', sans-serif; line-height: 1.12; }
h1 { margin-bottom: 25px; font-size: clamp(48px, 6.1vw, 78px); letter-spacing: -4px; }
h2 { margin-bottom: 22px; font-size: clamp(36px, 4.2vw, 53px); letter-spacing: -2.7px; }
h3 { letter-spacing: -.6px; }
.eyebrow { margin: 0 0 20px; color: var(--purple); font-size: 11px; font-weight: 800; letter-spacing: 2.1px; text-transform: uppercase; }
.eyebrow::before { content: ''; display: inline-block; width: 25px; height: 2px; margin: 0 9px 3px 0; background: currentColor; }
.lead { color: var(--muted); font-size: 18px; }
.section-heading { display: grid; grid-template-columns: 1fr 410px; gap: 80px; align-items: end; margin-bottom: 52px; }
.section-heading p:last-child { margin-bottom: 5px; color: var(--muted); }
.warm-section { background: var(--cream); }
.lavender-section { background: #faf7ff; }

.button { display: inline-flex; min-height: 52px; align-items: center; justify-content: center; gap: 10px; padding: 0 25px; border: 0; color: var(--white); background: var(--purple); font-weight: 700; cursor: pointer; transition: transform .2s, background .2s; }
.button:hover { transform: translateY(-2px); background: var(--purple-dark); }
.button-small { min-height: 44px; padding-inline: 20px; font-size: 14px; }
.button-warm { color: var(--ink); background: var(--peach); }
.button-warm:hover { background: #ffa678; }
.text-link { display: inline-flex; align-items: center; gap: 9px; color: var(--ink); font-weight: 700; }
.text-link span { color: var(--purple); font-size: 20px; transition: transform .2s; }
.text-link:hover span { transform: translateX(5px); }

.site-header { position: sticky; z-index: 50; top: 0; color: var(--ink); background: rgba(255,255,255,.96); box-shadow: 0 8px 30px rgba(43,26,61,.07); backdrop-filter: blur(12px); }
.header-bar { color: #64566c; background: var(--cream); border-bottom: 1px solid var(--line); font-size: 12px; }
.header-bar-inner { height: 38px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.header-bar p { display: flex; align-items: center; gap: 8px; margin: 0; }
.status-dot { width: 7px; height: 7px; display: inline-block; border-radius: 50%; background: var(--purple); box-shadow: 0 0 0 4px rgba(131,56,236,.11); }
.header-links { display: flex; gap: 22px; font-weight: 600; }
.language-switcher,.mobile-language-switcher{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:800;letter-spacing:.08em}.language-switcher{padding-left:15px;border-left:1px solid var(--line)}.language-switcher a,.mobile-language-switcher a{color:var(--muted)}.language-switcher a.active,.mobile-language-switcher a.active{color:var(--purple)}.mobile-language-switcher{display:none}
.header-links .portal-link { display: inline-flex; align-items: center; gap: 5px; color: var(--purple-dark); font-weight: 700; }
.header-links .portal-link:hover { color: var(--purple); }
.header-links .portal-link span { font-size: 14px; line-height: 1; transition: transform .2s; }
.header-links .portal-link:hover span { transform: translate(2px, -2px); }
.nav-wrapper { min-height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 35px; }
.logo { display: inline-flex; align-items: center; flex: 0 0 auto; }
.logo img { width: auto; height: 32px; }
.main-nav { display: flex; align-items: center; gap: 27px; font-size: 15px; }
.main-nav > a:not(.button) { position: relative; color: #554a5c; font-weight: 600; }
.main-nav > a:not(.button)::after { content: ''; position: absolute; right: 0; bottom: -8px; left: 0; height: 2px; background: var(--purple); transform: scaleX(0); transition: transform .2s; }
.main-nav > a:hover::after, .main-nav > a.active::after { transform: scaleX(1); }
.main-nav > a.active { color: var(--purple-dark); }
.main-nav > a.button.active { color: var(--white); }
.nav-toggle { display: none; padding: 8px; border: 0; color: var(--ink); background: transparent; }
.nav-toggle i { display: block; width: 25px; height: 2px; margin: 5px; background: currentColor; transition: transform .2s, opacity .2s; }
.mobile-nav-contact { display: none; }

.hero { position: relative; overflow: hidden; padding: 105px 0 110px; background: linear-gradient(125deg, var(--cream) 0%, #fff 54%, #f3eaff 100%); }
.hero::before { content: ''; position: absolute; width: 520px; height: 520px; right: -170px; bottom: -310px; border-radius: 50%; background: var(--peach); opacity: .26; }
.hero-grid { position: relative; display: grid; grid-template-columns: 1.04fr .96fr; gap: 70px; align-items: center; }
.hero h1 em { color: var(--purple); font-style: normal; }
.hero-copy .lead { max-width: 650px; }
.hero-actions { display: flex; align-items: center; gap: 25px; margin-top: 33px; }
.trust-list { display: flex; flex-wrap: wrap; gap: 10px 25px; margin: 35px 0 0; padding: 0; color: #675d6c; font-size: 12px; list-style: none; }
.trust-list li::before { content: '✓'; margin-right: 7px; color: var(--purple); font-weight: 800; }
.hero-card { position: relative; min-height: 455px; padding: 38px; color: var(--white); background: var(--purple); box-shadow: 22px 22px 0 var(--peach-soft); }
.hero-card::before { content: ''; position: absolute; inset: 20px; border: 1px solid rgba(255,255,255,.16); }
.hero-card-inner { position: relative; min-height: 378px; display: flex; flex-direction: column; justify-content: space-between; }
.hero-card-top { display: flex; justify-content: space-between; color: #dfccf9; font-size: 10px; letter-spacing: .8px; text-transform: uppercase; }
.hero-card h2 { max-width: 390px; margin: 40px 0; font-size: clamp(32px, 4vw, 48px); letter-spacing: -2.2px; }
.hero-card-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.hero-card-grid div { padding: 16px; background: rgba(255,255,255,.1); }
.hero-card-grid small, .hero-card-grid strong { display: block; }
.hero-card-grid small { color: #decdf4; font-size: 9px; text-transform: uppercase; }
.hero-card-grid strong { margin-top: 3px; font-size: 13px; }

.page-hero { padding: 86px 0 88px; background: linear-gradient(125deg, var(--cream), #fff 60%, var(--purple-soft)); }
.page-hero-grid { display: grid; grid-template-columns: 1fr 410px; gap: 80px; align-items: end; }
.page-hero h1 { margin-bottom: 0; }
.page-hero .lead { margin: 0 0 8px; }
.breadcrumb { margin-bottom: 25px; color: #8a7e8d; font-size: 10px; text-transform: uppercase; letter-spacing: 1px; }
.breadcrumb a { color: var(--purple); }

.logo-strip { padding: 34px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); background: var(--white); }
.logo-strip-inner { display: flex; align-items: center; justify-content: space-between; gap: 25px; }
.logo-strip p { margin: 0; color: #8b808f; font-size: 10px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; }
.mini-logos { display: flex; align-items: center; gap: 38px; color: #877d89; filter: grayscale(1); }
.mini-logos span { font-family: 'Manrope', sans-serif; font-size: 13px; font-weight: 700; }

.solution-grid { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.solution-card { min-height: 385px; padding: 33px; display: flex; flex-direction: column; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: var(--white); transition: transform .2s, box-shadow .2s; }
.solution-card:hover { z-index: 2; transform: translateY(-4px); box-shadow: var(--shadow); }
.solution-icon { width: 48px; height: 48px; display: grid; place-items: center; margin-bottom: 42px; color: var(--purple); background: var(--purple-soft); font-family: 'Manrope', sans-serif; font-weight: 800; }
.solution-card:nth-child(2n) .solution-icon { color: var(--coral); background: var(--peach-soft); }
.solution-card small { color: #938798; font-size: 9px; letter-spacing: 1px; text-transform: uppercase; }
.solution-card h3 { margin: 8px 0 13px; font-size: 22px; }
.solution-card p { margin: 0; color: var(--muted); font-size: 13px; }
.solution-card .text-link { margin-top: auto; padding-top: 25px; border-top: 1px solid var(--line); font-size: 12px; }

.service-directory-section { background: var(--white); }
.service-directory-grid { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 42px; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.email-platform-grid { grid-template-columns: repeat(2, 1fr); }
.service-directory-card { min-height: 265px; display: flex; flex-direction: column; padding: 28px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: var(--cream); transition: transform .2s, box-shadow .2s; }
.service-directory-card:nth-child(2), .service-directory-card:nth-child(4), .service-directory-card:nth-child(6) { background: var(--purple-soft); }
.service-directory-card:hover { z-index: 2; transform: translateY(-4px); box-shadow: var(--shadow); }
.service-directory-card > span { color: var(--purple); font-size: 9px; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.service-directory-card h3 { margin: 35px 0 12px; font-size: 22px; }
.service-directory-card p { margin: 0; color: var(--muted); font-size: 13px; }
.service-directory-card strong { margin-top: auto; padding-top: 22px; color: var(--purple); font-size: 12px; }

.commerce-banner { display: grid; grid-template-columns: .9fr 1.1fr; color: var(--ink); background: var(--peach-soft); }
.commerce-image { min-height: 500px; object-fit: cover; }
.commerce-copy { padding: 65px; align-self: center; }
.commerce-copy ul { margin: 25px 0 30px; padding: 0; color: var(--muted); list-style: none; }
.commerce-copy li { margin: 7px 0; }
.commerce-copy li::before { content: '✓'; margin-right: 9px; color: var(--coral); font-weight: 800; }

.license-spotlight { background: var(--cream); }
.license-showcase { overflow: hidden; background: var(--plum); box-shadow: 18px 18px 0 var(--peach-soft); }
.license-showcase-intro { display: grid; grid-template-columns: 1.1fr .9fr; gap: 85px; align-items: end; padding: 62px; color: var(--white); }
.license-showcase-intro .eyebrow { color: var(--peach); }
.license-showcase-intro h2 { margin-bottom: 0; }
.license-showcase-intro > div:last-child > p { max-width: 500px; margin: 0 0 26px; color: #dfd5e5; font-size: 17px; }
.license-product-grid { display: grid; grid-template-columns: repeat(5, 1fr); margin: 0 18px; background: var(--white); }
.license-product-card { min-height: 285px; display: flex; flex-direction: column; padding: 27px 23px; border-right: 1px solid var(--line); background: var(--white); }
.license-product-card:last-child { border-right: 0; }
.license-product-card:nth-child(even) { background: var(--purple-soft); }
.license-product-type { color: var(--purple); font-size: 9px; font-weight: 800; letter-spacing: 1.2px; text-transform: uppercase; }
.license-product-card h3 { margin: 30px 0 12px; font-size: 20px; }
.license-product-card p { margin: 0; color: var(--muted); font-size: 13px; }
.license-product-card .text-link { margin-top: auto; padding-top: 20px; border-top: 1px solid var(--line); font-size: 12px; }
.license-product-more { color: var(--white); background: var(--purple) !important; }
.license-product-more .license-product-type, .license-product-more .text-link span { color: var(--peach); }
.license-product-more h3 strong { display: block; margin-bottom: 2px; color: var(--peach); font-size: 38px; }
.license-product-more p { color: #e6d9f2; }
.license-product-more .text-link { color: var(--white); border-top-color: rgba(255,255,255,.22); }
.license-note { margin: 0; padding: 23px 30px 25px; color: #cfc2d6; font-size: 11px; text-align: center; }

.license-catalog-section { background: var(--cream); scroll-margin-top: 105px; }
.license-catalog-heading { align-items: end; }
.license-search-bar { margin-bottom: 22px; padding: 27px; color: var(--white); background: var(--plum); }
.license-search-bar > label { display: block; margin-bottom: 10px; color: var(--peach); font-size: 10px; font-weight: 800; letter-spacing: 1.2px; text-transform: uppercase; }
.license-search-bar > div { display: grid; grid-template-columns: 1fr auto; gap: 22px; align-items: center; }
.license-search-bar input { width: 100%; min-height: 54px; padding: 0 18px; border: 0; outline: 0; color: var(--ink); background: var(--white); }
.license-search-bar input:focus { box-shadow: 0 0 0 4px rgba(255,181,143,.35); }
.license-result-count { color: #d8cbdf; font-size: 12px; white-space: nowrap; }
.license-result-count strong { color: var(--white); font-size: 18px; }
.license-alphabet { display: grid; grid-template-columns: repeat(14, 1fr); margin-bottom: 25px; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.license-alphabet button { min-height: 42px; padding: 0; border: 0; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); color: var(--purple); background: var(--white); font-size: 11px; font-weight: 800; cursor: pointer; }
.license-alphabet button:hover, .license-alphabet button.active { color: var(--white); background: var(--purple); }
.license-alphabet button:disabled { color: #c8c0ca; background: #f6f1ee; cursor: default; }
.license-catalog-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.license-catalog-card { min-height: 260px; display: flex; flex-direction: column; align-items: flex-start; padding: 29px; border: 0; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); color: var(--ink); background: var(--white); text-align: left; cursor: pointer; transition: transform .2s, box-shadow .2s; }
.license-catalog-card:nth-child(6n + 2), .license-catalog-card:nth-child(6n + 4), .license-catalog-card:nth-child(6n + 6) { background: #faf7ff; }
.license-catalog-card:hover, .license-catalog-card:focus-visible { z-index: 2; outline: 0; transform: translateY(-4px); box-shadow: var(--shadow); }
.license-catalog-card > span { color: var(--purple); font-size: 9px; font-weight: 800; letter-spacing: 1px; text-transform: uppercase; }
.license-catalog-card > strong { margin: 34px 0 12px; font-family: 'Manrope', sans-serif; font-size: 20px; line-height: 1.25; }
.license-card-description { display: block; margin: 0; color: var(--muted); font-size: 12px; }
.license-catalog-card > em { margin-top: auto; padding-top: 22px; color: var(--purple); font-size: 11px; font-style: normal; font-weight: 800; }
.license-catalog-card[hidden] { display: none; }
.license-empty { padding: 45px; background: var(--white); text-align: center; }
.license-empty strong { font-family: 'Manrope', sans-serif; font-size: 23px; }
.license-empty p { margin-bottom: 0; color: var(--muted); }
.license-empty a { color: var(--purple); font-weight: 700; }

.license-dialog { width: min(1080px, calc(100% - 40px)); max-height: calc(100vh - 40px); padding: 0; overflow: auto; border: 0; color: var(--ink); background: var(--white); box-shadow: var(--shadow); }
.license-dialog::backdrop { background: rgba(43,26,61,.78); backdrop-filter: blur(5px); }
.license-dialog-layout { min-width: 0; display: grid; grid-template-columns: .8fr 1.2fr; min-height: 700px; }
.license-dialog-info { position: relative; min-width: 0; padding: 55px 45px; color: var(--white); background: var(--plum); }
.license-dialog-info .eyebrow { color: var(--peach); }
.license-dialog-info h2 { margin-bottom: 20px; font-size: 37px; }
.license-dialog-info .lead { color: #ded2e4; }
.license-dialog-close { position: absolute; top: 18px; right: 18px; width: 40px; height: 40px; display: grid; place-items: center; padding: 0; border: 1px solid rgba(255,255,255,.3); color: var(--white); background: transparent; font-size: 25px; cursor: pointer; }
.license-dialog-close:hover { color: var(--ink); background: var(--peach); }
.license-dialog-points { margin-top: 42px; border-top: 1px solid rgba(255,255,255,.16); }
.license-dialog-points div { padding: 17px 0; border-bottom: 1px solid rgba(255,255,255,.16); }
.license-dialog-points strong, .license-dialog-points span { display: block; }
.license-dialog-points strong { color: var(--peach); font-size: 11px; }
.license-dialog-points span { margin-top: 4px; color: #d5c9db; font-size: 11px; }
.license-request-form { min-width: 0; display: grid; align-content: center; gap: 15px; padding: 45px; background: var(--white); }
.selected-license { padding: 14px 16px; background: var(--purple-soft); }
.selected-license small, .selected-license strong { display: block; }
.selected-license small { color: var(--purple); font-size: 8px; font-weight: 800; letter-spacing: 1px; text-transform: uppercase; }
.selected-license strong { margin-top: 3px; font-family: 'Manrope', sans-serif; }
.license-request-form label { color: #6c6171; font-size: 9px; font-weight: 800; letter-spacing: .7px; text-transform: uppercase; }
.license-request-form input, .license-request-form textarea { width: 100%; margin-top: 6px; padding: 12px 13px; border: 1px solid #ddd3dc; outline: none; color: var(--ink); background: #fffdfb; text-transform: none; }
.license-request-form input:focus, .license-request-form textarea:focus { border-color: var(--purple); box-shadow: 0 0 0 3px rgba(131,56,236,.1); }
.license-request-form button:disabled { cursor: wait; opacity: .68; transform: none; }

.case-carousel { overflow: hidden; }
.case-track { display: flex; gap: 22px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; scroll-behavior: smooth; }
.case-track::-webkit-scrollbar { display: none; }
.case-card { overflow: hidden; flex: 0 0 min(510px, calc(100vw - 50px)); scroll-snap-align: start; border: 1px solid var(--line); background: var(--white); }
.case-card img { width: 100%; height: 285px; display: block; object-fit: cover; }
.case-card-body { padding: 28px; }
.case-tag { color: var(--purple); font-size: 9px; font-weight: 800; letter-spacing: 1px; text-transform: uppercase; }
.case-status { display: inline-flex; align-items: center; margin: 0 8px 10px 0; padding: 5px 8px; font-size: 8px; font-weight: 800; letter-spacing: .8px; text-transform: uppercase; }
.case-status.done { color: #28654f; background: #e3f3eb; }
.case-status.ongoing { color: #9a422f; background: var(--peach-soft); }
.case-status.invitation { color: var(--purple-dark); background: var(--purple-soft); }
.case-feature-copy > .case-status { margin-bottom: 18px; }
.case-card h3 { min-height: 55px; margin: 10px 0 12px; font-size: 21px; }
.case-card p { min-height: 44px; margin: 0; color: var(--muted); font-size: 13px; }
.case-card .text-link { margin-top: 22px; font-size: 12px; }
.case-invitation-visual { height: 285px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; color: var(--white); background: var(--purple); }
.case-invitation-visual span { width: 72px; height: 72px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.38); font-family: 'Manrope', sans-serif; font-size: 40px; font-weight: 500; line-height: 1; }
.case-invitation-visual small { color: #e7d9f5; font-size: 9px; font-weight: 800; letter-spacing: 1.4px; text-transform: uppercase; }
.carousel-controls { display: flex; gap: 8px; justify-content: flex-end; margin-top: 25px; }
.carousel-controls button { width: 44px; height: 44px; border: 1px solid var(--line); color: var(--ink); background: var(--white); cursor: pointer; }
.carousel-controls button:hover { color: var(--white); background: var(--purple); }

.platform-section { background: var(--cream); }
.platform-grid { display: grid; grid-template-columns: 390px 1fr; gap: 85px; align-items: center; }
.platform-grid > div:first-child p:last-child { color: var(--muted); }
.platform-cloud { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.platform-logo { min-height: 96px; display: grid; place-items: center; padding: 12px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); color: #776b7d; background: var(--white); font-family: 'Manrope', sans-serif; font-size: 14px; font-weight: 700; text-align: center; }
.platform-logo.more { color: var(--white); background: var(--purple); }
.platform-logo.more strong { display: block; font-size: 25px; }

.systems-section { background: var(--cream); }
.alphabet-nav { display: grid; grid-template-columns: repeat(13, 1fr); margin-bottom: 45px; border-top: 1px solid var(--line); border-left: 1px solid var(--line); background: var(--white); }
.alphabet-nav a, .alphabet-nav span { min-height: 54px; display: grid; place-items: center; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); font-family: 'Manrope', sans-serif; font-size: 13px; font-weight: 800; }
.alphabet-nav a { color: var(--purple); background: var(--purple-soft); transition: color .2s, background .2s; }
.alphabet-nav span { color: #b9b0bc; }
.alphabet-nav a:hover { color: var(--white); background: var(--purple); }
.systems-directory { border-top: 1px solid var(--line); background: var(--white); }
.system-letter { display: grid; grid-template-columns: 90px 1fr; gap: 32px; padding: 34px; border-bottom: 1px solid var(--line); scroll-margin-top: 110px; }
.system-letter > h2 { margin: 0; color: var(--purple); font-size: 34px; }
.system-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.system-list article { min-height: 145px; padding: 25px; background: var(--cream); }
.system-list article:nth-child(even) { background: var(--purple-soft); }
.system-list h3 { margin-bottom: 9px; font-size: 20px; }
.system-list p, .system-letter.is-empty > p { margin: 0; color: var(--muted); font-size: 13px; }
.system-status { display: inline-flex; margin-bottom: 12px; padding: 5px 8px; font-size: 8px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.system-status.upcoming { color: #95412f; background: var(--peach); }
.system-letter.is-empty { padding-block: 22px; align-items: center; }
.system-letter.is-empty > h2 { color: #b7aeb9; font-size: 24px; }
.system-letter.is-empty > p { color: #aaa0ad; font-style: italic; }

.benefit-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.benefit-card { min-height: 260px; padding: 34px; background: var(--cream); }
.benefit-card:nth-child(2) { background: var(--purple-soft); }
.benefit-card:nth-child(3) { background: var(--peach-soft); }
.benefit-number { color: var(--purple); font-size: 10px; font-weight: 800; }
.benefit-card h3 { margin: 45px 0 12px; font-size: 21px; }
.benefit-card p { margin: 0; color: var(--muted); font-size: 13px; }

.founder-grid { display: grid; grid-template-columns: 310px 1fr; gap: 72px; align-items: center; }
.founder-photo { position: relative; width: 100%; max-width: 310px; }
.founder-photo::before { content: ''; position: absolute; top: 20px; right: -20px; bottom: -20px; left: 20px; background: var(--peach); }
.founder-photo img { position: relative; z-index: 1; width: 100%; display: block; aspect-ratio: 4 / 5; object-fit: cover; object-position: center top; }
.experience-badge { position: absolute; z-index: 2; right: -34px; bottom: 24px; min-width: 142px; display: flex; align-items: center; gap: 9px; padding: 14px; color: var(--white); background: var(--purple); box-shadow: var(--shadow); }
.experience-badge strong { font-family: 'Manrope', sans-serif; font-size: 27px; line-height: 1; }
.experience-badge span { font-size: 10px; font-weight: 700; line-height: 1.35; text-transform: uppercase; }
.founder-copy { max-width: 600px; }
.founder-role { margin: -11px 0 24px; color: var(--coral); font-size: 11px; font-weight: 800; letter-spacing: 1.2px; text-transform: uppercase; }
.founder-copy > p:not(.eyebrow, .founder-role, .lead) { color: var(--muted); }
.founder-copy .button { margin-top: 15px; }

.solution-detail { scroll-margin-top: 115px; padding: 80px 0; border-bottom: 1px solid var(--line); }
.solution-detail-grid { display: grid; grid-template-columns: .82fr 1.18fr; gap: 95px; }
.solution-detail-title { position: sticky; top: 135px; align-self: start; }
.solution-detail-title h2 { font-size: clamp(34px, 4vw, 48px); }
.solution-detail-content > p { color: var(--muted); font-size: 16px; }
.outcome-list { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 30px; }
.outcome-list div { padding: 20px; background: var(--cream); }
.outcome-list strong { display: block; margin-bottom: 5px; font-size: 13px; }
.outcome-list span { color: var(--muted); font-size: 12px; }

.case-feature { display: grid; grid-template-columns: 1fr 1fr; margin-bottom: 32px; background: var(--cream); }
.case-feature:nth-child(even) img { order: 2; }
.case-feature img { width: 100%; height: 100%; min-height: 520px; object-fit: cover; }
.case-feature-copy { padding: 55px; align-self: center; }
.case-feature-copy > p { color: var(--muted); }
.case-points { margin-top: 27px; }
.case-point { padding: 18px 0; border-top: 1px solid var(--line); }
.case-point strong { display: block; margin-bottom: 4px; font-size: 12px; }
.case-point span { color: var(--muted); font-size: 12px; }

.cases-overview-section { background: #fffdfb; }
.cases-overview-heading { display: flex; align-items: end; justify-content: space-between; gap: 35px; margin-bottom: 25px; }
.cases-overview-heading .eyebrow { margin-bottom: 0; }
.cases-overview-heading > p:last-child { margin: 0; color: var(--muted); font-size: 13px; }
.case-count { display: block; margin: 8px 0 0 35px; color: #928696; font-size: 10px; font-weight: 700; letter-spacing: .7px; text-transform: uppercase; }
.cases-grid { display: flex; gap: 16px; overflow-x: auto; scroll-snap-type: x mandatory; }
.case-overview-card { min-width: 0; overflow: hidden; flex: 0 0 270px; border: 1px solid var(--line); background: var(--white); transition: transform .2s, box-shadow .2s; scroll-margin-top: 125px; }
.case-overview-card:hover { transform: translateY(-4px); box-shadow: var(--shadow); }
.case-overview-card > img { width: 100%; height: 135px; display: block; object-fit: cover; }
.case-overview-card > .case-invitation-visual { height: 135px; gap: 7px; }
.case-overview-card > .case-invitation-visual span { width: 45px; height: 45px; font-size: 27px; }
.case-overview-card > .case-invitation-visual small { font-size: 7px; }
.case-overview-copy { min-height: 205px; display: flex; flex-direction: column; padding: 18px; }
.case-overview-copy h2 { margin: 7px 0 7px; font-size: 17px; letter-spacing: -.7px; }
.case-overview-copy > p { min-height: 0; margin: 0; color: var(--muted); font-size: 11px; line-height: 1.55; }
.case-overview-copy .case-status { margin-bottom: 5px; padding: 4px 6px; font-size: 7px; }
.case-overview-copy .case-tag { font-size: 7px; }
.case-open { width: fit-content; margin-top: auto; padding: 15px 0 0; border: 0; background: transparent; font-size: 10px; cursor: pointer; }
.cases-archive-controls { margin-top: 18px; }
.cases-archive-controls button { width: 39px; height: 39px; }
.case-dialog { width: min(980px, calc(100% - 40px)); max-height: calc(100vh - 40px); padding: 0; overflow: auto; border: 0; color: var(--ink); background: var(--white); box-shadow: var(--shadow); }
.case-dialog::backdrop { background: rgba(43, 26, 61, .72); backdrop-filter: blur(5px); }
.case-dialog-layout { display: grid; grid-template-columns: .85fr 1.15fr; min-height: 590px; }
.case-dialog-layout > img { width: 100%; height: 100%; min-height: 590px; object-fit: cover; }
.case-dialog-copy { position: relative; align-self: center; padding: 55px; }
.case-dialog-copy > p:not(.eyebrow) { color: var(--muted); }
.case-dialog-copy h2 { margin-bottom: 17px; font-size: 36px; }
.case-dialog-close { position: absolute; top: 18px; right: 20px; width: 40px; height: 40px; display: grid; place-items: center; padding: 0; border: 1px solid var(--line); color: var(--ink); background: var(--white); font-size: 26px; line-height: 1; cursor: pointer; }
.case-dialog-close:hover { color: var(--white); background: var(--purple); }

.pricing-grid { display: grid; grid-template-columns: 1fr .88fr; gap: 90px; align-items: center; }
.pricing-copy > p { color: var(--muted); }
.pricing-card { padding: 50px; color: var(--white); background: var(--purple); box-shadow: 18px 18px 0 var(--peach); }
.pricing-card h3 { margin-bottom: 32px; font-size: 35px; }
.pricing-card ul { margin: 0; padding: 0; border-top: 1px solid rgba(255,255,255,.22); list-style: none; }
.pricing-card li { display: grid; grid-template-columns: 40px 1fr; gap: 12px; padding: 19px 0; border-bottom: 1px solid rgba(255,255,255,.22); }
.pricing-card li > span { color: #e4cffd; font-size: 10px; font-weight: 800; }
.pricing-card strong { display: block; font-size: 13px; }
.pricing-card p { margin: 3px 0 0; color: #e9dcf8; font-size: 11px; }

.process-list { display: grid; grid-template-columns: repeat(4, 1fr); margin: 45px 0 0; padding: 0; border-top: 1px solid var(--line); list-style: none; }
.process-list li { padding: 28px 25px; border-right: 1px solid var(--line); }
.process-list li:last-child { border-right: 0; }
.process-list > li > span { color: var(--purple); font-size: 10px; font-weight: 800; }
.process-list h3 { margin: 35px 0 9px; font-size: 17px; }
.process-list p { margin: 0; color: var(--muted); font-size: 12px; }
.home-process .process-list { gap: 12px; border-top: 0; }
.home-process .process-list li { min-height: 245px; border: 0; background: var(--white); }
.home-process .process-list li:nth-child(2) { background: var(--peach-soft); }
.home-process .process-list li:nth-child(3) { background: var(--cream); }
.home-process .process-list li:nth-child(4) { background: var(--purple-soft); }
.home-process .process-list > li > span { width: 32px; height: 32px; display: grid; place-items: center; color: var(--white); background: var(--purple); }
.home-process .process-list h3 { margin-top: 31px; }
.home-process-action { display: flex; justify-content: flex-end; margin-top: 28px; }

.faq-grid { display: grid; grid-template-columns: 350px 1fr; gap: 100px; }
.faq-list { border-top: 1px solid var(--line); }
.faq-list details { border-bottom: 1px solid var(--line); }
.faq-list summary { position: relative; padding: 25px 50px 25px 0; font-family: 'Manrope', sans-serif; font-weight: 700; cursor: pointer; list-style: none; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary span { position: absolute; right: 5px; color: var(--purple); font-size: 22px; transition: transform .2s; }
.faq-list details[open] summary span { transform: rotate(45deg); }
.faq-list details p { margin: -5px 55px 25px 0; color: var(--muted); font-size: 13px; }

.contact-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 80px; }
.contact-info { padding: 48px; color: var(--white); background: var(--purple); }
.contact-info h2 { font-size: 42px; }
.contact-info > p { color: #e5d5f7; }
.contact-method { display: flex; gap: 13px; align-items: center; padding: 18px 0; border-top: 1px solid rgba(255,255,255,.2); }
.contact-method i { width: 42px; height: 42px; display: grid; place-items: center; color: var(--ink); background: var(--peach); font-style: normal; font-weight: 800; }
.contact-method small, .contact-method strong { display: block; }
.contact-method small { color: #d9c8ec; font-size: 9px; text-transform: uppercase; }
.contact-method strong { font-size: 13px; }
.hours-card { margin-top: 25px; padding: 20px; color: var(--ink); background: var(--peach-soft); }
.hours-card small { display: block; color: var(--coral); font-size: 9px; font-weight: 800; text-transform: uppercase; }
.hours-card strong { display: block; margin-top: 4px; }
.contact-form, .voip-form { display: grid; gap: 16px; padding: 42px; border: 1px solid var(--line); background: var(--white); box-shadow: var(--shadow); }
.form-heading h2 { margin-bottom: 8px; font-size: 31px; }
.form-heading p { margin-top: 0; color: var(--muted); font-size: 12px; }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.contact-form label, .voip-form label { color: #6c6171; font-size: 9px; font-weight: 800; letter-spacing: .7px; text-transform: uppercase; }
.contact-form input, .contact-form textarea, .contact-form select, .voip-form input { width: 100%; margin-top: 6px; padding: 12px 13px; border: 1px solid #ddd3dc; outline: none; color: var(--ink); background: #fffdfb; text-transform: none; }
.contact-form input:focus, .contact-form textarea:focus, .contact-form select:focus, .voip-form input:focus { border-color: var(--purple); box-shadow: 0 0 0 3px rgba(131,56,236,.1); }
.privacy-check { display: flex; gap: 9px; align-items: start; font-weight: 500 !important; letter-spacing: 0 !important; line-height: 1.5; text-transform: none !important; }
.privacy-check input { width: 15px; height: 15px; margin: 2px 0 0; accent-color: var(--purple); }
.form-note { margin: 0; color: #948995; font-size: 10px; }
.form-note.success { color: var(--purple-dark); }
.form-note.error { color: #a32f24; }
.form-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.contact-form button:disabled, .voip-form button:disabled { cursor: wait; opacity: .68; transform: none; }
.soon-box { margin-bottom: 23px; padding: 22px; border-left: 3px solid var(--coral); background: var(--peach-soft); }
.soon-box strong { color: var(--coral); font-size: 10px; text-transform: uppercase; }
.soon-box p { margin: 6px 0 0; color: var(--muted); font-size: 12px; }

.cta-section { padding: 78px 0; background: var(--purple); }
.cta-inner { display: flex; align-items: center; justify-content: space-between; gap: 50px; color: var(--white); }
.cta-inner h2 { max-width: 710px; margin: 0; }

.site-footer { color: #cdbed8; background: var(--plum); }
.footer-main { display: grid; grid-template-columns: 1.5fr .8fr .8fr 1fr; gap: 60px; padding-top: 72px; padding-bottom: 65px; }
.footer-logo img { height: 39px; }
.footer-brand p { max-width: 330px; font-size: 14px; line-height: 1.7; }
.footer-column { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; font-size: 14px; }
.footer-column h3 { margin: 8px 0 12px; color: var(--white); font-size: 15px; }
.footer-column a:hover { color: var(--white); }
.footer-contact strong { color: var(--white); }
.footer-hours { margin-top: 10px; padding-left: 12px; border-left: 2px solid var(--peach); }
.footer-hours small, .footer-hours span { display: block; }
.footer-hours small { color: var(--peach); font-size: 10px; text-transform: uppercase; }
.footer-hours span { font-size: 12px; }
.footer-bottom { min-height: 74px; display: flex; align-items: center; justify-content: space-between; gap: 25px; border-top: 1px solid rgba(255,255,255,.11); font-size: 12px; }
.footer-bottom strong { color: var(--peach); }

@media (max-width: 980px) {
  .header-bar { display: block; }
  .header-bar-inner { height: 42px; justify-content: center; }
  .header-bar p { display: none; }
  .header-links { width: 100%; justify-content: space-between; gap: 16px; }
  .header-bar { max-height: 42px; overflow: hidden; opacity: 1; transition: max-height .25s ease, opacity .2s ease, border-color .2s ease; }
  .site-header.mobile-scrolled .header-bar { max-height: 0; opacity: 0; border-bottom-color: transparent; }
  .site-header { backdrop-filter: none; -webkit-backdrop-filter: none; }
  .nav-toggle { position: relative; display: block; z-index: 2; }
  .main-nav { position: fixed; z-index: 1; inset: 0; width: 100%; min-height: 100vh; min-height: 100dvh; display: flex; flex-direction: column; justify-content: center; gap: 0; padding: 90px 24px 30px; overflow-y: auto; color: var(--white); background: var(--plum); font-size: 18px; opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .25s, visibility .25s; }
  .main-nav.open { opacity: 1; visibility: visible; pointer-events: auto; }
  .main-nav > a, .main-nav > a.button { width: min(100%, 380px); min-height: 0; padding: 15px 10px; border-bottom: 1px solid rgba(255,255,255,.18); color: var(--white); background: transparent; font-size: inherit; font-weight: 600; text-align: center; }
  .main-nav > a:not(.button) { color: var(--white); }
  .main-nav > a.button:hover { background: transparent; transform: none; }
  .main-nav > a:not(.button)::after { right: 42%; bottom: -1px; left: 42%; }
  .main-nav > a.active, .main-nav > a.button.active { color: var(--white); }
  .mobile-nav-contact { width: min(100%, 380px); display: flex; flex-direction: column; align-items: center; gap: 7px; margin-top: 27px; color: rgba(255,255,255,.78); font-size: 15px; }
  .mobile-language-switcher{display:inline-flex;margin-top:25px;color:rgba(255,255,255,.5)}.mobile-language-switcher a{color:rgba(255,255,255,.72)}.mobile-language-switcher a.active{color:var(--peach)}
  .mobile-nav-contact span { margin-bottom: 3px; color: var(--peach); font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
  .mobile-nav-contact a { color: var(--white); font-weight: 600; }
  body.menu-open .nav-toggle { color: var(--white); }
  body.menu-open .nav-toggle i:nth-child(1) { transform: translateY(7px) rotate(45deg); }
  body.menu-open .nav-toggle i:nth-child(2) { opacity: 0; }
  body.menu-open .nav-toggle i:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
  .hero-grid, .page-hero-grid, .section-heading, .platform-grid, .solution-detail-grid, .pricing-grid, .contact-grid { grid-template-columns: 1fr; }
  .founder-grid { grid-template-columns: 270px 1fr; gap: 52px; }
  .hero-grid { gap: 55px; }
  .page-hero-grid, .section-heading { gap: 20px; }
  .solution-grid { grid-template-columns: 1fr 1fr; }
  .service-directory-grid { grid-template-columns: 1fr 1fr; }
  .commerce-banner, .case-feature { grid-template-columns: 1fr; }
  .license-showcase-intro { grid-template-columns: 1fr; gap: 28px; }
  .license-product-grid { grid-template-columns: repeat(2, 1fr); }
  .license-product-card { min-height: 0; border-right: 0; border-bottom: 1px solid var(--line); }
  .license-product-card:last-child { border-bottom: 0; }
  .license-catalog-grid { grid-template-columns: repeat(2, 1fr); }
  .license-alphabet { grid-template-columns: repeat(10, 1fr); }
  .license-dialog-layout { grid-template-columns: minmax(0, 1fr); }
  .license-dialog-info { padding-bottom: 42px; }
  .commerce-image, .case-feature img { min-height: 360px; max-height: 440px; }
  .case-feature:nth-child(even) img { order: 0; }
  .platform-grid, .pricing-grid, .contact-grid { gap: 50px; }
  .solution-detail-grid { gap: 30px; }
  .solution-detail-title { position: static; }
  .process-list { grid-template-columns: 1fr 1fr; }
  .process-list li:nth-child(2) { border-right: 0; }
  .process-list li { border-bottom: 1px solid var(--line); }
  .faq-grid { grid-template-columns: 1fr; gap: 40px; }
  .footer-main { grid-template-columns: 1.3fr 1fr 1fr; }
  .footer-contact { grid-column: 2 / 4; }
}

@media (max-width: 640px) {
  .header-bar { font-size: 11px; }
  .header-links{gap:9px}.language-switcher{padding-left:9px}
  .header-links .portal-link span { font-size: 13px; }
  .container { width: min(100% - 28px, 1160px); }
  .section { padding: 75px 0; }
  h1 { font-size: 45px; letter-spacing: -2.8px; }
  h2 { font-size: 35px; letter-spacing: -2px; }
  .hero { padding: 75px 0; }
  .hero-actions, .cta-inner { align-items: flex-start; flex-direction: column; }
  .hero-card { min-height: 405px; padding: 29px; box-shadow: 10px 10px 0 var(--peach-soft); }
  .hero-card-inner { min-height: 345px; }
  .logo-strip-inner { align-items: flex-start; flex-direction: column; }
  .mini-logos { flex-wrap: wrap; gap: 18px 25px; }
  .solution-grid, .benefit-grid, .outcome-list, .service-directory-grid { grid-template-columns: 1fr; }
  .service-directory-card { min-height: 225px; }
  .founder-grid { grid-template-columns: 118px 1fr; gap: 10px 20px; align-items: start; }
  .founder-photo { grid-column: 1; grid-row: 1 / 4; max-width: 118px; }
  .founder-photo::before { top: 8px; right: -8px; bottom: -8px; left: 8px; }
  .founder-copy { display: contents; }
  .founder-copy .eyebrow { grid-column: 2; grid-row: 1; align-self: end; margin: 0; }
  .founder-copy h2 { grid-column: 2; grid-row: 2; align-self: center; margin: 0; font-size: 27px; letter-spacing: -1.5px; }
  .founder-copy .founder-role { grid-column: 2; grid-row: 3; align-self: start; margin: 0; }
  .founder-copy > p:not(.eyebrow, .founder-role) { grid-column: 1 / -1; }
  .founder-copy .lead { margin-top: 27px; }
  .founder-copy .button { grid-column: 1 / -1; justify-self: start; }
  .experience-badge { display: none; }
  .solution-card { min-height: 340px; }
  .commerce-copy, .case-feature-copy { padding: 37px 25px; }
  .commerce-image, .case-feature img { min-height: 260px; }
  .license-showcase { box-shadow: 8px 8px 0 var(--peach-soft); }
  .license-showcase-intro { padding: 38px 25px; }
  .license-showcase-intro h2 { font-size: 36px; }
  .license-product-grid { margin: 0 8px; }
  .license-product-card { padding: 28px 24px; }
  .license-product-card h3 { margin-top: 22px; }
  .license-note { padding-inline: 20px; text-align: left; }
  .license-product-grid, .license-catalog-grid { grid-template-columns: 1fr; }
  .license-product-card { min-height: 205px; }
  .license-search-bar { padding: 20px; }
  .license-search-bar > div { grid-template-columns: 1fr; gap: 12px; }
  .license-result-count { white-space: normal; }
  .license-alphabet { grid-template-columns: repeat(7, 1fr); }
  .license-catalog-card { min-height: 225px; padding: 25px; }
  .license-dialog { inset: 8px; width: auto; max-width: none; height: calc(100vh - 16px); max-height: none; margin: 0; }
  .license-dialog-layout { width: 100%; display: block; overflow: hidden; }
  .license-dialog-info, .license-request-form { padding: 38px 23px; }
  .license-dialog-info h2 { padding-right: 35px; overflow-wrap: anywhere; font-size: 30px; }
  .license-dialog-close { z-index: 2; top: 12px; right: 12px; }
  .case-card { flex-basis: calc(100vw - 28px); }
  .case-card img { height: 230px; }
  .case-card > .case-invitation-visual { height: 230px; }
  .cases-overview-heading { align-items: flex-start; flex-direction: column; gap: 10px; }
  .case-dialog-layout { grid-template-columns: 1fr; }
  .case-overview-card { flex-basis: 245px; }
  .case-overview-card > img { height: 125px; }
  .case-overview-card > .case-invitation-visual { height: 125px; }
  .case-overview-copy { min-height: 195px; }
  .case-dialog { width: calc(100% - 20px); max-height: calc(100vh - 20px); }
  .case-dialog-layout > img { height: 230px; min-height: 230px; }
  .case-dialog-copy { padding: 38px 24px 32px; }
  .case-dialog-copy h2 { font-size: 29px; }
  .case-dialog-close { top: 12px; right: 12px; }
  .platform-cloud { grid-template-columns: 1fr 1fr; }
  .alphabet-nav { grid-template-columns: repeat(7, 1fr); }
  .alphabet-nav a, .alphabet-nav span { min-height: 48px; }
  .system-letter { grid-template-columns: 46px 1fr; gap: 14px; padding: 25px 18px; }
  .system-letter > h2 { font-size: 28px; }
  .system-list { grid-template-columns: 1fr; }
  .system-list article { min-height: 0; padding: 21px; }
  .system-letter.is-empty { padding-block: 17px; }
  .system-letter.is-empty > p { font-size: 12px; }
  .process-list { grid-template-columns: 1fr; }
  .process-list li { border-right: 0; }
  .pricing-card { padding: 37px 27px; box-shadow: 10px 10px 0 var(--peach); }
  .form-row { grid-template-columns: 1fr; }
  .contact-info, .contact-form, .voip-form { padding: 30px 23px; }
  .footer-main { grid-template-columns: 1fr 1fr; gap: 38px 25px; padding: 55px 0; }
  .footer-brand, .footer-contact { grid-column: 1 / -1; }
  .footer-bottom { align-items: flex-start; flex-direction: column; padding: 24px 0; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; }
}

/* Blogafsluiting, auteursblok en gerelateerde artikelen. */
.blog-inline-cta{position:relative;overflow:hidden;margin:64px 0 10px;padding:38px;border-radius:22px;background:linear-gradient(135deg,var(--plum),var(--purple-dark));color:#fff}.blog-inline-cta::after{content:'';position:absolute;right:-70px;bottom:-95px;width:230px;height:230px;border:45px solid rgba(255,255,255,.08);border-radius:50%}.blog-inline-cta .eyebrow{position:relative;z-index:1;color:var(--peach)}.blog-inline-cta h2{position:relative;z-index:1;margin:0 0 13px;color:#fff;font-size:clamp(28px,3vw,38px)}.blog-inline-cta>p:not(.eyebrow){position:relative;z-index:1;max-width:610px;margin:0 0 25px;color:#eee2f4;line-height:1.7}.blog-inline-cta .button{position:relative;z-index:1;text-decoration:none}
.author-bio{display:grid;grid-template-columns:110px minmax(0,690px);align-items:start;gap:28px;margin-bottom:100px;padding:34px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 18px 50px rgba(52,28,68,.08)}.author-avatar{display:grid;place-items:center;overflow:hidden;width:110px;height:110px;border-radius:50%;background:linear-gradient(135deg,var(--lavender),#e4ccff);color:var(--purple);font:700 40px/1 Manrope,sans-serif}.author-avatar img{width:100%;height:100%;object-fit:cover}.author-bio h2{margin:0 0 4px;font-size:27px}.author-bio strong{display:block;color:var(--purple);font-size:14px}.author-bio>div:last-child>p:last-child{margin:12px 0 0;color:var(--muted);line-height:1.7}
.related-articles{padding-top:85px}.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:34px}.related-grid article{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 12px 38px rgba(52,28,68,.07);transition:.25s}.related-grid article:hover{transform:translateY(-4px);box-shadow:0 18px 48px rgba(52,28,68,.12)}.related-grid article>a{display:block;height:100%}.related-grid img{display:block;width:100%;aspect-ratio:16/8;object-fit:cover}.related-grid article>a>div{padding:25px}.related-grid h3{margin:0 0 10px;font-size:21px;line-height:1.3}.related-grid article p:not(.eyebrow){color:var(--muted);font-size:14px;line-height:1.65}.related-grid article span{color:var(--purple);font-size:13px;font-weight:700}.related-empty{margin-top:28px;color:var(--muted)}
@media(max-width:900px){.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.related-grid article:last-child:nth-child(odd){display:none}}
@media(max-width:640px){.blog-inline-cta{margin-top:46px;padding:30px 24px}.author-bio{grid-template-columns:72px 1fr;gap:18px;margin-bottom:65px;padding:24px 20px}.author-avatar{width:72px;height:72px;font-size:28px}.author-bio h2{font-size:22px}.author-bio .eyebrow{margin-bottom:6px}.related-articles{padding-top:65px}.related-grid{grid-template-columns:1fr}.related-grid article:last-child:nth-child(odd){display:block}}

/* Kleinere blogkoppen houden een natuurlijke ruimte tussen woorden. */
.author-bio h2,.blog-aside h2{letter-spacing:-.5px;word-spacing:.12em}

/* Dynamische casepagina's. */
.case-article-hero{padding:72px 0 0;background:linear-gradient(135deg,#fff 0%,#f8f0ff 62%,#fff3e7 100%)}.case-article-heading{display:grid;grid-template-columns:minmax(0,820px) auto;align-items:end;justify-content:space-between;gap:60px;padding:45px 0 58px}.case-article-heading .case-status{margin-bottom:18px}.case-article-heading h1{margin-bottom:22px;font-size:clamp(45px,6.5vw,82px);line-height:1.01}.case-article-heading .lead{max-width:760px;color:var(--muted);font-size:21px;line-height:1.6}.case-article-heading>strong{max-width:230px;padding:20px;border-left:4px solid var(--purple);font:700 19px/1.35 Manrope,sans-serif}.case-article-image img{display:block;width:100%;max-height:650px;aspect-ratio:16/7;object-fit:cover;border-radius:24px;box-shadow:0 25px 70px rgba(52,28,68,.14)}.case-article-intro{display:grid;grid-template-columns:220px minmax(0,820px);gap:60px;align-items:start}.case-article-intro h2{margin:0;font-size:clamp(27px,3.4vw,43px);line-height:1.35;letter-spacing:-1.2px}.case-story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:70px;background:var(--line);border:1px solid var(--line)}.case-story-grid article{min-height:330px;padding:38px;background:#fff}.case-story-grid article:nth-child(2){background:var(--cream)}.case-story-grid article>span{color:var(--purple);font-size:11px;font-weight:800}.case-story-grid h2{margin:48px 0 15px;font-size:25px;letter-spacing:-.7px}.case-story-grid p{margin:0;color:var(--muted);line-height:1.75}
@media(max-width:900px){.case-article-heading{grid-template-columns:1fr;gap:25px}.case-article-heading>strong{max-width:none}.case-article-intro{grid-template-columns:1fr;gap:15px}.case-story-grid{grid-template-columns:1fr}.case-story-grid article{min-height:0}.case-story-grid h2{margin-top:25px}}
@media(max-width:640px){.case-article-hero{padding-top:42px}.case-article-heading{padding:25px 0 36px}.case-article-heading .lead{font-size:18px}.case-article-image{width:100%}.case-article-image img{border-radius:0;aspect-ratio:16/10}.case-article-intro h2{font-size:27px}.case-story-grid{margin-top:45px}.case-story-grid article{padding:30px 24px}}

.case-story-grid p{margin:0 0 14px}.case-story-content p:last-child{margin-bottom:0}.case-story-content ul,.case-story-content ol{display:grid;gap:9px;margin:16px 0;padding-left:22px;color:var(--muted)}.case-story-content li::marker{color:var(--purple)}.case-story-content strong{color:var(--ink)}

/* Vernieuwde losse casepagina. */
.case-card-placeholder{height:135px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:20px;background:linear-gradient(135deg,var(--purple-dark),var(--purple));color:#fff;text-align:center}.case-card-placeholder span{font:800 24px/1 Manrope,sans-serif}.case-card-placeholder small{color:#eadbff;font-size:9px;letter-spacing:.1em;text-transform:uppercase}
.case-detail-hero{padding:36px 0 82px;background:linear-gradient(135deg,#fff 0%,#fbf7ff 62%,#fff6ec 100%);border-bottom:1px solid var(--line)}.case-detail-hero .breadcrumb{margin-bottom:34px}.case-detail-hero-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);align-items:stretch;gap:70px}.case-detail-copy{align-self:center;padding:28px 0}.case-detail-labels{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:35px}.case-detail-labels .case-status{margin:0}.case-detail-labels .case-tag{padding:6px 9px;border:1px solid #dcc9ef;border-radius:99px}.case-detail-copy h1{max-width:720px;margin-bottom:25px;font-size:clamp(44px,5.3vw,72px);line-height:1.03;letter-spacing:-3px}.case-detail-copy .lead{max-width:660px;margin:0;color:var(--muted);font-size:20px;line-height:1.65}.case-detail-visual{min-height:520px}.case-detail-visual img,.case-detail-placeholder{width:100%;height:100%;min-height:520px;display:block;object-fit:cover;border-radius:24px;box-shadow:18px 18px 0 var(--peach-soft)}.case-detail-placeholder{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:48px;background:linear-gradient(145deg,var(--plum),var(--purple));color:#fff}.case-detail-placeholder::before,.case-detail-placeholder::after{content:'';position:absolute;border:1px solid rgba(255,255,255,.17);border-radius:50%}.case-detail-placeholder::before{width:380px;height:380px;right:-125px;top:-110px}.case-detail-placeholder::after{width:230px;height:230px;right:-50px;top:-35px}.case-detail-placeholder span{position:absolute;top:42px;left:48px;font:800 22px Manrope,sans-serif}.case-detail-placeholder strong{position:relative;z-index:1;max-width:420px;font:750 clamp(30px,4vw,48px)/1.1 Manrope,sans-serif}.case-detail-placeholder small{position:relative;z-index:1;margin-top:14px;color:#eadbff;font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.case-detail-introduction{padding:72px 0;background:var(--plum);color:#fff}.case-detail-intro-grid{display:grid;grid-template-columns:280px minmax(0,760px);justify-content:center;gap:80px}.case-detail-intro-grid .eyebrow{color:var(--peach)}.case-detail-intro-grid>div>span{color:#cdbed4;font-size:13px}.case-detail-intro-grid>p{margin:0;color:#fff;font:500 clamp(24px,3vw,36px)/1.5 Manrope,sans-serif;letter-spacing:-.6px}
.case-detail-story{background:#fffdfb}.case-detail-story-heading{display:grid;grid-template-columns:1fr 360px;align-items:end;gap:60px;margin-bottom:58px}.case-detail-story-heading h2{margin:0}.case-detail-story-heading>p{margin:0;color:var(--muted);line-height:1.7}.case-detail-steps{display:grid}.case-detail-step{display:grid;grid-template-columns:105px minmax(0,760px);justify-content:center;gap:55px;padding:56px 0;border-top:1px solid var(--line)}.case-detail-step:last-child{border-bottom:1px solid var(--line)}.case-detail-step-number span{display:grid;place-items:center;width:66px;height:66px;border-radius:50%;background:var(--lavender);color:var(--purple);font:800 21px Manrope,sans-serif}.case-detail-step-content h2{margin:0 0 22px;font-size:clamp(28px,3vw,40px);letter-spacing:-1.2px}.case-detail-step-content .case-story-content{color:var(--muted);font-size:17px;line-height:1.85}.case-detail-step-content .case-story-content p{margin:0 0 18px}.case-detail-step-content .case-story-content strong{color:var(--ink)}.case-detail-step-content .case-story-content ul,.case-detail-step-content .case-story-content ol{display:grid;gap:10px;margin:20px 0;padding-left:23px}.case-detail-step-content .case-story-content li::marker{color:var(--purple)}
.case-detail-cta{padding:85px 0;background:var(--purple)}.case-detail-cta>.container{display:flex;align-items:center;justify-content:space-between;gap:60px;color:#fff}.case-detail-cta .eyebrow{color:var(--peach)}.case-detail-cta h2{max-width:720px;margin-bottom:15px;color:#fff}.case-detail-cta p:not(.eyebrow){max-width:650px;margin:0;color:#e9dcf7;line-height:1.7}.case-detail-cta .button{flex:0 0 auto}
@media(max-width:980px){.case-detail-hero-grid{grid-template-columns:1fr;gap:35px}.case-detail-copy{padding-bottom:0}.case-detail-visual{min-height:430px}.case-detail-visual img,.case-detail-placeholder{min-height:430px}.case-detail-intro-grid{grid-template-columns:220px 1fr;gap:45px}.case-detail-story-heading{grid-template-columns:1fr}.case-detail-step{grid-template-columns:80px 1fr;gap:30px}.case-detail-cta>.container{align-items:flex-start;flex-direction:column}}
@media(max-width:640px){.case-detail-hero{padding:24px 0 55px}.case-detail-hero .breadcrumb{margin-bottom:20px}.case-detail-copy h1{font-size:43px;letter-spacing:-2px}.case-detail-copy .lead{font-size:17px}.case-detail-visual{min-height:310px}.case-detail-visual img,.case-detail-placeholder{min-height:310px;border-radius:15px;box-shadow:9px 9px 0 var(--peach-soft)}.case-detail-placeholder{padding:28px}.case-detail-placeholder span{top:26px;left:28px}.case-detail-introduction{padding:52px 0}.case-detail-intro-grid{grid-template-columns:1fr;gap:25px}.case-detail-intro-grid>p{font-size:24px}.case-detail-story-heading{margin-bottom:35px;gap:15px}.case-detail-step{grid-template-columns:48px 1fr;gap:17px;padding:40px 0}.case-detail-step-number span{width:46px;height:46px;font-size:16px}.case-detail-step-content h2{font-size:27px}.case-detail-step-content .case-story-content{font-size:16px}.case-detail-cta{padding:65px 0}}

/* Uitgebreide caseopbouw: samenvatting, klantreis en social proof. */
.case-glance{display:grid;grid-template-columns:1.05fr 1fr 1.25fr 1fr;margin-top:65px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 22px 60px rgba(52,28,68,.11)}.case-glance>div{min-width:0;padding:26px;border-right:1px solid var(--line)}.case-glance>div:last-child{border-right:0}.case-glance-heading{grid-column:1/-1!important;display:flex;align-items:center;justify-content:space-between;padding-block:19px!important;background:var(--plum);color:#fff;border-radius:19px 19px 0 0}.case-glance-heading .eyebrow{margin:0;color:var(--peach)}.case-glance-heading h2{margin:0;color:#fff;font-size:21px;letter-spacing:-.4px}.case-glance small{display:block;margin-bottom:11px;color:var(--purple);font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.case-glance-client img{display:block;max-width:130px;max-height:48px;margin:0 0 18px;object-fit:contain;object-position:left center}.case-glance-client strong,.case-glance-client span{display:block}.case-glance-client strong{font:700 17px Manrope,sans-serif}.case-glance-client span{margin-top:5px;color:var(--muted);font-size:12px}.case-glance-challenge p,.case-glance-results>p{margin:0;color:var(--muted);font-size:13px;line-height:1.65}.case-glance-results>div{display:grid;gap:10px}.case-glance-results>div>span{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px}.case-glance-results strong{color:var(--purple);font:800 19px Manrope,sans-serif;white-space:nowrap}.case-glance-results em{color:var(--muted);font-size:11px;font-style:normal;line-height:1.35}.case-glance-tech>div{display:flex;flex-wrap:wrap;gap:7px}.case-glance-tech span{padding:7px 9px;border-radius:99px;background:var(--lavender);color:var(--purple-dark);font-size:10px;font-weight:700}
.case-journey{background:#fffdfb}.case-journey-list{display:grid}.case-journey-section{display:grid;grid-template-columns:220px minmax(0,790px);justify-content:center;gap:70px;padding:70px 0;border-top:1px solid var(--line)}.case-journey-section:last-child{border-bottom:1px solid var(--line)}.case-journey-section>aside{position:sticky;top:125px;align-self:start;display:grid;grid-template-columns:58px 1fr;align-items:center;gap:4px 13px}.case-journey-section>aside>span{grid-row:1/3;display:grid;place-items:center;width:58px;height:58px;border-radius:16px;background:var(--lavender);font-size:25px}.case-journey-section>aside small{color:var(--purple);font-size:10px;font-weight:800}.case-journey-section>aside strong{font:700 16px Manrope,sans-serif}.case-journey-content>h2{margin:0 0 22px;font-size:clamp(31px,3.5vw,45px);letter-spacing:-1.3px}.case-journey-summary{padding:24px 27px;border-left:4px solid var(--purple);background:var(--lavender);color:var(--ink)!important}.case-journey-summary p{color:var(--ink)!important}.case-journey-detail{padding:34px 0 4px;border-bottom:1px solid var(--line)}.case-journey-detail:last-child{border-bottom:0}.case-journey-detail h3{margin:0 0 13px;font-size:20px}.case-journey-content .case-story-content{color:var(--muted);font-size:16px;line-height:1.8}.case-journey-content .case-story-content p{margin:0 0 16px}.case-journey-content .case-story-content ul,.case-journey-content .case-story-content ol{display:grid;gap:9px;padding-left:22px}.case-journey-content .case-story-content li::marker{color:var(--purple)}
.case-testimonial{padding:90px 0;background:linear-gradient(135deg,var(--plum),var(--purple-dark));color:#fff}.case-testimonial>.container{position:relative;display:grid;grid-template-columns:170px minmax(0,760px);justify-content:center;gap:55px}.case-testimonial-mark{color:var(--peach);font:800 150px/.75 Georgia,serif}.case-testimonial blockquote{margin:0}.case-testimonial blockquote>p{margin:0;color:#fff;font:500 clamp(25px,3.2vw,39px)/1.5 Manrope,sans-serif;letter-spacing:-.7px}.case-testimonial footer{display:flex;align-items:center;gap:14px;margin-top:30px}.case-testimonial footer img{width:58px;height:58px;border-radius:50%;object-fit:cover}.case-testimonial footer strong,.case-testimonial footer span{display:block}.case-testimonial footer span{margin-top:4px;color:#d6c7df;font-size:12px}
.case-proof-gallery{background:var(--cream)}.case-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.case-gallery-grid figure{overflow:hidden;margin:0;border-radius:18px;background:var(--lavender)}.case-gallery-grid figure:first-child:nth-last-child(odd){grid-column:1/-1}.case-gallery-grid img{display:block;width:100%;height:100%;min-height:330px;max-height:600px;object-fit:cover;transition:.3s}.case-gallery-grid figure:hover img{transform:scale(1.015)}
.case-related{background:var(--soft)}.case-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:38px}.case-related-grid article{overflow:hidden;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 12px 38px rgba(52,28,68,.07);transition:transform .25s,box-shadow .25s}.case-related-grid article:hover{transform:translateY(-4px);box-shadow:0 18px 48px rgba(52,28,68,.12)}.case-related-grid article>a{display:block;height:100%;color:inherit}.case-related-visual{display:flex;align-items:center;justify-content:center;height:190px;background:linear-gradient(135deg,var(--purple),#a76bff);color:#fff;font-size:24px;font-weight:700;text-align:center;padding:25px}.case-related-visual img{display:block;width:calc(100% + 50px);height:190px;object-fit:cover;margin:-25px}.case-related-copy{padding:26px}.case-related-copy small{color:var(--purple);font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.case-related-copy h3{margin:10px 0 12px;font-size:23px;line-height:1.2}.case-related-copy p{color:var(--muted);font-size:14px;line-height:1.65}.case-related-copy strong{display:inline-flex;gap:10px;margin-top:12px;color:var(--purple);font-size:14px}
@media(max-width:1050px){.case-glance{grid-template-columns:repeat(2,1fr)}.case-glance>div:nth-child(3){border-right:0}.case-glance>div{border-bottom:1px solid var(--line)}.case-glance>div:nth-last-child(-n+2){border-bottom:0}.case-journey-section{grid-template-columns:180px 1fr;gap:40px}.case-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.case-related-grid article:last-child:nth-child(odd){display:none}}
@media(max-width:720px){.case-glance{grid-template-columns:1fr;margin-top:42px}.case-glance-heading{align-items:flex-start;flex-direction:column;gap:5px}.case-glance>div{border-right:0!important;border-bottom:1px solid var(--line)!important}.case-glance>div:last-child{border-bottom:0!important}.case-journey-section{grid-template-columns:1fr;gap:28px;padding:52px 0}.case-journey-section>aside{position:static}.case-testimonial>.container{grid-template-columns:1fr;gap:10px}.case-testimonial-mark{font-size:100px}.case-gallery-grid{grid-template-columns:1fr}.case-gallery-grid figure:first-child:nth-last-child(odd){grid-column:auto}.case-gallery-grid img{min-height:240px}.case-related-grid{grid-template-columns:1fr}.case-related-grid article:last-child:nth-child(odd){display:block}}

/* Case detail: compact hero and scan-friendly summary. */
.case-detail-hero-grid{grid-template-columns:minmax(0,1fr) minmax(360px,.92fr);gap:52px;align-items:center}.case-detail-copy h1{max-width:680px;font-size:clamp(42px,4.25vw,62px);line-height:1.04;overflow-wrap:anywhere}.case-detail-copy .lead{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:4}.case-detail-visual{min-height:0;aspect-ratio:4/3}.case-detail-visual img,.case-detail-placeholder{min-height:0;height:100%;aspect-ratio:4/3;object-position:center top}.case-glance{grid-template-columns:.9fr 1.2fr 1.25fr 1fr}.case-glance-challenge p,.case-glance-results p{font-size:14px;line-height:1.55}.case-glance-heading .eyebrow{color:var(--peach)}
@media(max-width:980px){.case-detail-hero-grid{grid-template-columns:1fr}.case-detail-visual{width:min(100%,720px);aspect-ratio:16/9}.case-detail-visual img,.case-detail-placeholder{aspect-ratio:16/9}.case-detail-copy .lead{-webkit-line-clamp:unset}}
@media(max-width:720px){.case-detail-copy h1{font-size:clamp(37px,11vw,50px)}.case-detail-visual,.case-detail-visual img,.case-detail-placeholder{aspect-ratio:4/3}}
