/* Mobile-first content scale from Cognativ's compact web templates, not the PDF's display-size examples. */
:root {
    --cv-content-h2: 20px;
    --cv-content-h2-stroke: .2px;
    --cv-content-h3: 16px;
    --cv-content-title-color: #212529;
    --cv-signal-stop: #c74444;
    --cv-signal-change: #e4b341;
    --cv-signal-continue: #829f32;
    --cv-content-copy: 14px;
    --cv-section-gap: 32px;
    --cv-page-gutter: 16px;
    --cv-disclosure-size: 32px;
    --cv-disclosure-icon: 12.8px;
    --cv-card-padding: 16px;
    --cv-content-gap: 16px;
    --cv-content-icon: 24px;
    --cv-heading-gap: 12px;
    --cv-copy-inset: 36px;
    --cv-faq-closed: #ffffff;
    --cv-faq-open: #ffffff;
}
/* Each neighboring section contributes half the gap; inner component spacing is independent. */
.cv-section > .cv-wrap, .cv-work-band > .cv-wrap, .cv-footer > .cv-wrap { width: min(var(--cv-max), calc(100% - 2 * var(--cv-page-gutter))); }
.cv-section, .cv-work-band > .cv-section { padding-block: calc(var(--cv-section-gap) / 2); }
.cv-v1-section h2, .cv-work-heading h2, .cv-inquiry-heading h2 { font-size: var(--cv-content-h2); font-weight: 700; -webkit-text-stroke: var(--cv-content-h2-stroke) currentColor; line-height: 1.25; color: var(--cv-content-title-color); text-wrap: pretty; }
.cv-v1-section h3, .cv-case-summary h3 { font-size: var(--cv-content-h3); font-weight: 700; line-height: 1.3; text-wrap: pretty; }
.cv-v1-section p, .cv-v1-section li, .cv-work-heading p, .cv-case-body p, .cv-inquiry-body p { font-size: var(--cv-content-copy); font-weight: 400; line-height: 1.52; }
.cv-v1-section a, .cv-v1-section h2, .cv-v1-section h3 { overflow-wrap: anywhere; }
.cv-v1-heading, .cv-v1-workflow-intro, .cv-v1-book-panel, .cv-v1-newsletter-panel,
.cv-v1-contact-panel {
    min-width: 0; padding: var(--cv-card-padding); border: 1px solid #dee2e6; border-radius: 16px;
    background: #fff; box-shadow: 0 2px 4px #00000013;
}
.cv-work-heading, .cv-case, .cv-inquiry-copy { padding: var(--cv-card-padding); }
.cv-case-grid { gap: var(--cv-content-gap); }
.cv-work-heading { gap: var(--cv-heading-gap); margin-bottom: var(--cv-content-gap); }
.cv-work-heading > div { flex: 1; min-width: 0; }
.cv-work-heading > svg, .cv-inquiry-heading > svg { width: var(--cv-content-icon); height: var(--cv-content-icon); }
.cv-inquiry-heading { flex-direction: column; align-items: flex-start; gap: var(--cv-heading-gap); }
.cv-inquiry-heading h2 { min-width: 0; }
.cv-inquiry-body { padding-inline: 0; }
.cv-inquiry-body, .cv-inquiry-form { margin-inline-start: 0; width: 100%; min-width: 0; }
.cv-v1-heading { display: flex; gap: var(--cv-heading-gap); align-items: flex-start; margin-bottom: var(--cv-content-gap); }
.cv-v1-heading > div { display: block; flex: 1; min-width: 0; }
.cv-v1-heading p { margin-top: 10px; }
.cv-v1-heading .cv-v1-text-link { margin-top: 8px; }
.cv-work-heading .cv-v1-text-link { margin-top: 8px; }
.cv-v1-heading-icon { display: grid; place-items: center; flex: 0 0 40px; width: 40px; height: 40px; border: 1px solid var(--cv-section-icon-border, #ded8ed); border-radius: 8px; background: var(--cv-section-icon-bg, #f5f3fa); color: var(--cv-section-icon-color, var(--cv-purple)); box-shadow: inset 0 2px 0 #fff; }
.cv-v1-heading-icon svg { width: 22px; height: 22px; color: inherit; }
.cv-v1-heading > div > h2, .cv-work-heading h2, .cv-v1-book-copy h2, .cv-v1-newsletter-copy h2, .cv-inquiry-heading h2 { display: flex; align-items: center; min-height: 40px; }
.cv-v1-grid { display: grid; grid-template-columns: minmax(0, 1fr); align-items: stretch; gap: var(--cv-content-gap); }
.cv-v1-service, .cv-v1-industry, .cv-v1-post, .cv-v1-form-panel { min-width: 0; border: 1px solid #dee2e6; border-radius: 16px; background: #fff; box-shadow: 0 2px 4px #00000013; }
.cv-v1-service { display: flex; flex-direction: column; gap: 12px; height: 100%; padding: var(--cv-card-padding); }
.cv-v1-service--collapsible { display: block; height: auto; align-self: start; }
.cv-case-details > summary { grid-template-columns: minmax(0, 1fr) var(--cv-disclosure-size); }
.cv-v1-service-summary { display: grid; grid-template-columns: minmax(0, 1fr) var(--cv-disclosure-size); align-items: start; gap: 8px 12px; cursor: pointer; list-style: none; }
.cv-v1-service-summary::-webkit-details-marker { display: none; }
.cv-v1-service-summary .cv-v1-card-heading { min-height: 44px; }
.cv-v1-service-summary .cv-v1-service-badges { grid-column: 1; }
.cv-v1-service-summary > .cv-v1-chevron { grid-column: 2; grid-row: 1 / 3; margin-top: 2px; }
.cv-v1-service-summary:focus-visible { outline-offset: 4px; border-radius: 5px; }
.cv-v1-service-details[open] .cv-v1-chevron svg { transform: rotate(180deg); }
.cv-v1-service-body { padding-top: 16px; }
.cv-v1-service-body > .cv-v1-text-link { margin-top: 8px; }
.cv-v1-card-heading { display: flex; align-items: center; gap: 12px; min-width: 0; }
.cv-v1-card-heading h3 { min-width: 0; }
.cv-v1-card-heading svg { width: var(--cv-content-icon); height: var(--cv-content-icon); color: var(--cv-purple); }
.cv-v1-card-heading h3 { color: var(--cv-content-title-color); }
.cv-v1-text-link { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; color: var(--cv-purple); font-size: 14px; font-weight: 600; line-height: 1.5; text-decoration: underline; text-underline-offset: 4px; }
.cv-v1-text-link svg { width: 17px; height: 17px; }
.cv-v1-service > .cv-v1-text-link { margin-top: auto; padding-top: 4px; }
.cv-v1-section .cv-button, .cv-case-body .cv-button, .cv-case-actions .cv-button { min-height: 44px; padding: 10px 16px; gap: 10px; font-size: 16px; border-radius: var(--cv-button-radius); white-space: normal; }
.cv-v1-media-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.cv-v1-media-logo { display: grid; place-items: center; height: 88px; padding: 16px; border: 1px solid #dee2e6; border-radius: 16px; background: white; box-shadow: 0 2px 4px #00000013; }
.cv-v1-media-logo:last-child { grid-column: 1 / -1; }
.cv-v1-media-logo img { max-width: 100%; max-height: 65px; object-fit: contain; }
.cv-v1-banner a { display: block; border: 1px solid #dee2e6; border-radius: 16px; overflow: hidden; box-shadow: 0 2px 4px #00000013; }
.cv-v1-banner img { width: 100%; height: auto; }
.cv-v1-industry { display: flex; flex-direction: column; gap: 16px; padding: var(--cv-card-padding); }
.cv-v1-industry-image { width: 100%; max-width: none; height: 120px; aspect-ratio: 16 / 9; object-fit: contain; align-self: flex-start; border-radius: 8px; }
.cv-v1-industry details { flex: 1; min-width: 0; }
.cv-v1-industry details { width: 100%; }
.cv-v1-industry summary { display: grid; grid-template-columns: minmax(0, 1fr) var(--cv-disclosure-size); align-items: start; min-height: 44px; gap: 12px; list-style: none; cursor: pointer; }
.cv-v1-industry summary::-webkit-details-marker { display: none; }
.cv-v1-industry-category { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; min-width: 0; color: var(--cv-purple); }
.cv-v1-industry-category svg { width: 27px; height: 27px; }
.cv-v1-category { border: 1px solid #dee2e6; border-radius: 6px; background: #f8f9fa; color: #212529; font-size: 12px; font-weight: 700; padding: 2px 8px; line-height: 1.4; }
.cv-case-toggle, .cv-v1-chevron { display: grid; place-items: center; width: var(--cv-disclosure-size); height: var(--cv-disclosure-size); border: 1px solid #6c757d; border-radius: 50%; color: #6c757d; }
.cv-case-toggle svg, .cv-v1-chevron svg { width: var(--cv-disclosure-icon); height: var(--cv-disclosure-icon); transition: transform .2s; }
.cv-v1-industry details[open] .cv-v1-chevron svg { transform: rotate(180deg); }
.cv-v1-industry summary h3 { grid-column: 1 / -1; color: #212529; }
.cv-v1-tags { display: grid; grid-column: 1 / -1; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.cv-v1-tags > :is(span, li) { display: grid; place-items: center; padding: 3px 5px; border-radius: 5px; border: 1px solid var(--cv-section-icon-border, #ded8ed); color: var(--cv-section-icon-color, #221259); background: var(--cv-section-icon-bg, #f5f3fa); font-size: 11px; font-weight: 600; line-height: 1.4; text-align: center; overflow-wrap: anywhere; }
.cv-home-v2 :is(.cv-company-eyebrow, .cv-case-kicker).cv-v1-tags > span { background: var(--cv-section-icon-bg, #f5f3fa); border-color: var(--cv-section-icon-border, #ded8ed); color: var(--cv-section-icon-color, var(--cv-purple)); }
.cv-home-v2 .cv-case-skills > span { padding: 3px 6px; line-height: 1.4; border-radius: 5px; }
.cv-home-v2 .cv-v1-tags > :is(span, li) { padding-inline: 6px; }
.cv-v1-service-badges { grid-template-columns: minmax(0, 1fr); gap: 6px; margin: 0; padding: 0; list-style: none; }
.cv-v1-service-badges > li { min-width: 0; min-height: 22px; padding: 3px 6px; font-size: 11px; }
.cv-v1-tags.cv-v1-service-badges > li { background: var(--cv-section-icon-bg, #f5f3fa); border-color: var(--cv-section-icon-border, #ded8ed); color: var(--cv-section-icon-color, #221259); }
.cv-v1-service-summary--compact { min-height: 44px; row-gap: 4px; }
.cv-v1-service-summary--compact .cv-v1-card-heading { min-height: 0; align-items: flex-start; }
.cv-v1-service-badges--plain { display: flex; flex-wrap: wrap; gap: 4px 12px; margin-inline-start: 0; }
.cv-v1-tags.cv-v1-service-badges--plain > li { display: flex; align-items: center; gap: 4px; max-width: 100%; min-height: 18px; padding: 0; border: 0; border-radius: 0; background: transparent; color: var(--cv-section-icon-color, var(--cv-purple)); text-align: left; }
.cv-v1-service-badges--plain > li > svg { flex: 0 0 12px; width: 12px; height: 12px; stroke-width: 1.5; }
.cv-v1-service-badges--plain > li > span { min-width: 0; }
/* Opt-in section color and heading tiles; highlight and disclosure icons stay unframed. */
.cv-section--icon-tiles { --cv-content-icon: 32px; --cv-copy-inset: calc(40px + var(--cv-heading-gap)); }
.cv-section--tech { --cv-section-icon-bg: #f5f3fa; --cv-section-icon-border: #ded8ed; --cv-section-icon-color: #221259; }
.cv-section--delivery { --cv-section-icon-bg: #edf4fb; --cv-section-icon-border: #c9dced; --cv-section-icon-color: #245579; }
.cv-section--operations { --cv-section-icon-bg: #edf7f5; --cv-section-icon-border: #c5e2db; --cv-section-icon-color: #245e54; }
.cv-section--governance { --cv-section-icon-bg: #f3f7eb; --cv-section-icon-border: #d4e2b9; --cv-section-icon-color: #465d2a; }
.cv-section--rapid, .cv-section--rapid .cv-section--contact { --cv-section-icon-bg: #fbf5e9; --cv-section-icon-border: #ead9b4; --cv-section-icon-color: #79571d; }
.cv-section--recognition, .cv-company-page.cv-section--recognition .cv-section--contact { --cv-section-icon-bg: #edf6fc; --cv-section-icon-border: #bfdced; --cv-section-icon-color: #245579; }
.cv-section--workflow { --cv-section-icon-bg: #edf7f8; --cv-section-icon-border: #c5e1e5; --cv-section-icon-color: #285e68; }
.cv-section--insights { --cv-section-icon-bg: #f3f7eb; --cv-section-icon-border: #d4e2b9; --cv-section-icon-color: #465d2a; }
.cv-section--newsletter { --cv-section-icon-bg: #f3f7eb; --cv-section-icon-border: #d4e2b9; --cv-section-icon-color: #465d2a; }
.cv-section--faq { --cv-section-icon-bg: #f1f5f1; --cv-section-icon-border: #d4dfd4; --cv-section-icon-color: #486048; }
.cv-section--contact { --cv-section-icon-bg: #f5f1fa; --cv-section-icon-border: #dfd2ef; --cv-section-icon-color: #654387; }
.cv-section--icon-tiles .cv-v1-heading-icon, .cv-section--icon-tiles .cv-v1-card-heading > svg,
.cv-section--icon-tiles .cv-inquiry-heading > svg, .cv-section--icon-tiles .cv-blueprint-heading > h3 > svg { background: var(--cv-section-icon-bg); border: 1px solid var(--cv-section-icon-border); border-radius: 8px; color: var(--cv-section-icon-color); box-shadow: inset 0 2px 0 #fff; }
.cv-section--icon-tiles .cv-v1-heading-icon { flex-basis: 40px; height: 40px; }
.cv-section--icon-tiles .cv-v1-heading-icon > svg { width: 22px; height: 22px; color: inherit; }
.cv-section--icon-tiles .cv-v1-card-heading { align-items: center; }
.cv-section--icon-tiles .cv-v1-card-heading > svg { width: var(--cv-content-icon); height: var(--cv-content-icon); padding: 6px; }
.cv-section--icon-tiles .cv-inquiry-heading > svg { width: 40px; height: 40px; padding: 8px; }
.cv-section--icon-tiles .cv-blueprint-heading > h3 > svg { width: 32px; height: 32px; padding: 6px; }
.cv-v1-industry-body { padding-top: 18px; }
.cv-v1-industry-body ul { padding-left: 18px; margin-block: 12px; color: var(--cv-muted); }
.cv-v1-industry-body li + li { margin-top: 7px; }
.cv-v1-load-actions { margin-top: var(--cv-content-gap); }
.cv-v1-load-actions .cv-button { width: 100%; }
.cv-v1-load-actions > a { display: flex; justify-content: center; padding: 12px; }
.cv-v1-workflow-intro { display: block; margin: 0 0 var(--cv-content-gap); }
.cv-v1-workflow-intro p { margin-top: 10px; }
.cv-v1-blueprint { padding: var(--cv-card-padding); border-color: #dee2e6; border-radius: 16px; box-shadow: 0 2px 4px #00000013; }
.cv-v1-blueprint .cv-flow { grid-template-columns: minmax(0, 1fr); margin-block: 20px; gap: 20px; }
.cv-v1-blueprint .cv-flow li { display: grid; grid-template-columns: 40px minmax(0, 1fr); column-gap: 12px; }
.cv-v1-blueprint .cv-flow-icon { grid-row: 1 / 3; width: 40px; height: 40px; margin: 0; }
.cv-section--icon-tiles .cv-flow li .cv-flow-icon { background: var(--cv-section-icon-bg); border-color: var(--cv-section-icon-border); color: var(--cv-section-icon-color); }
.cv-v1-blueprint .cv-flow li:not(:last-child)::after { top: 48px; left: 19px; right: auto; bottom: -12px; width: 1px; border: 0; background: #d6ccdf; }
.cv-v1-blueprint .cv-blueprint-heading { padding-bottom: 16px; border-bottom: 0; flex-wrap: wrap; gap: 12px; }
.cv-v1-blueprint .cv-blueprint-heading > h3 { display: flex; align-items: center; gap: 12px; font-size: var(--cv-content-h3); color: var(--cv-content-title-color); }
.cv-v1-blueprint .cv-flow h3 { margin: 0 0 6px; color: var(--cv-content-title-color); }
.cv-v1-blueprint .cv-feedback { gap: 4px; min-height: 18px; border-top: 0; padding-top: 0; color: var(--cv-section-icon-color, var(--cv-purple)); font-size: 11px; font-weight: 600; line-height: 1.4; }
.cv-v1-blueprint .cv-feedback > svg { flex: 0 0 12px; width: 12px; height: 12px; stroke-width: 1.5; color: inherit; }
.cv-v1-blueprint .cv-feedback > span { min-width: 0; overflow-wrap: anywhere; }
.cv-v1-book-grid, .cv-v1-newsletter-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--cv-content-gap); align-items: start; }
.cv-v1-book-grid { margin-top: 24px; column-gap: 16px; }
.cv-v1-book-form { min-width: 0; }
.cv-v1-book-visual { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; align-self: start; min-width: 0; gap: 16px; padding-left: var(--cv-copy-inset); }
.cv-v1-book-visual .cv-book-art { min-height: 0; max-width: 100%; padding: 8px 0; justify-content: flex-start; }
.cv-v1-book-visual .cv-book-art img { width: 190px; }
.cv-v1-book-copy { display: flex; gap: var(--cv-heading-gap); align-items: flex-start; }
.cv-v1-book-copy > div { flex: 1; min-width: 0; }
.cv-v1-book-copy p { margin-top: 12px; }
.cv-v1-book-credit { font-size: 12px; line-height: 1.6; color: var(--cv-muted); margin: 0; text-align: left; }
.cv-v1-form-panel { padding: var(--cv-card-padding); }
.cv-v1-form-panel > p, .cv-v1-book-form > p { margin-top: 8px; }
.cv-v1-form-panel iframe, .cv-v1-book-form iframe, .cv-v1-newsletter-embed iframe { display: block; width: 100%; border: 0; background: #fff; }
.cv-v1-ebook-form { height: 650px; margin-top: 16px; }
.cv-v1-newsletter-form { height: 560px; }
.cv-v1-newsletter-copy { display: flex; gap: var(--cv-heading-gap); align-items: flex-start; min-width: 0; }
.cv-v1-newsletter-copy > div { flex: 1; min-width: 0; }
.cv-v1-newsletter-embed { min-width: 0; }
.cv-v1-newsletter-copy p { margin-top: 16px; }
.cv-v1-post-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--cv-content-gap); }
.cv-v1-post { overflow: hidden; }
.cv-v1-post-image { display: block; width: 100%; aspect-ratio: 16 / 9; overflow: hidden; border-radius: 15px 15px 0 0; background: #fff; }
.cv-v1-post-image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.cv-v1-post-copy { padding: var(--cv-card-padding); }
.cv-v1-post-meta { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 12px; }
.cv-v1-post-meta > span { max-width: 100%; overflow-wrap: anywhere; font-size: 11px; line-height: 1.5; padding: 2px 6px; border: 1px solid #dee2e6; border-radius: 4px; }
:is(.cv-learn, #insights) .cv-v1-post-meta > span { background: var(--cv-section-icon-bg); border-color: var(--cv-section-icon-border); color: var(--cv-section-icon-color); }
:is(.cv-learn, #insights) .cv-v1-post-meta > [data-post-topic] { padding: 3px 6px; font-size: 11px; line-height: 1.4; }
/* Semantic categories retain their tone regardless of card position. */
:is(.cv-learn, #insights) [data-post-topic]:is([data-post-topic="AI"], [data-post-topic="Artificial_Intelligence"], [data-post-topic="Artificial Intelligence"]) { --cv-section-icon-bg: #e8f2e2; --cv-section-icon-border: #b5cca5; --cv-section-icon-color: #4b6438; }
:is(.cv-learn, #insights) [data-post-topic="News"] { --cv-section-icon-bg: #edf5e6; --cv-section-icon-border: #bed3ad; --cv-section-icon-color: #50673c; }
:is(.cv-learn, #insights) [data-post-topic]:is([data-post-topic="Software Development"], [data-post-topic="Software_Development"]) { --cv-section-icon-bg: #f0f6e8; --cv-section-icon-border: #c5d6b1; --cv-section-icon-color: #556b40; }
:is(.cv-learn, #insights) [data-post-topic="Business"] { --cv-section-icon-bg: #e8f3ed; --cv-section-icon-border: #b4cfc0; --cv-section-icon-color: #466653; }
:is(.cv-learn, #insights) .cv-v1-post-meta > span:has(time) { --cv-section-icon-bg: #f1f6eb; --cv-section-icon-border: #ccdabc; --cv-section-icon-color: #566746; }
:is(.cv-learn, #insights) .cv-v1-post-meta > span:not([data-post-topic]):not(:has(time)) { --cv-section-icon-bg: #eaf6f1; --cv-section-icon-border: #b9d9ca; --cv-section-icon-color: #3d6958; }
.cv-v1-post-copy h3 { color: #212529; }
.cv-v1-post-copy p { margin-top: 12px; }
.cv-v1-faq-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; align-items: start; }
.cv-v1-faq-column { display: grid; gap: 12px; align-content: start; min-width: 0; }
.cv-v1-faq-grid details, .cv-v1-faq-grid details:first-child { min-width: 0; border: 1px solid #dee2e6; border-radius: 10px; background: var(--cv-faq-closed); color: var(--cv-content-title-color); box-shadow: 0 2px 4px #00000013; }
.cv-v1-faq-grid details[open] { background: var(--cv-faq-open); border-color: var(--cv-section-icon-border, #ded8ed); }
.cv-v1-faq-grid summary { display: flex; align-items: center; min-height: 64px; padding: 16px 16px 16px 48px; font-size: var(--cv-content-copy); font-weight: 600; line-height: 1.4; overflow-wrap: anywhere; }
.cv-v1-faq-grid summary::after { top: 50%; left: 16px; right: auto; transform: translateY(-50%); width: 20px; text-align: center; color: var(--cv-section-icon-color, var(--cv-purple)); }
.cv-v1-faq-grid summary:focus-visible { outline-offset: -4px; outline-color: currentColor; border-radius: 10px; }
.cv-v1-faq-grid p { padding: 0 16px 16px 48px; color: var(--cv-ink); }
.cv-v1-faq-grid p a { color: var(--cv-purple); text-decoration: underline; text-underline-offset: 3px; }
.cv-v1-contact-panel { background: linear-gradient(135deg, #e6e6fa 0%, #c9c9f0 100%); text-align: center; }
.cv-v1-contact-heading { display: flex; justify-content: center; align-items: flex-start; gap: var(--cv-heading-gap); }
.cv-v1-contact-panel p { color: var(--cv-purple); margin-block: 16px 20px; }
.cv-v1-contact-panel .cv-button { width: 100%; }
.cv-v1-footer-main { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 32px 20px; padding-block: 32px; }
.cv-v1-footer-brand { grid-column: 1 / -1; max-width: 480px; }
.cv-footer .cv-footer-logo { width: 190px; max-width: 100%; }
.cv-certification-badge { display: inline-flex; align-items: center; gap: 8px; max-width: 100%; min-height: 32px; padding: 0; border: 0; background: transparent; color: var(--cv-footer-text); font-size: 13px; font-weight: 600; line-height: 1.5; }
.cv-certification-badge > svg { flex: 0 0 22px; width: 22px; height: 22px; color: inherit; stroke-width: 3; }
.cv-certification-badge > span { min-width: 0; overflow-wrap: anywhere; }
.cv-v1-footer-main > * { min-width: 0; }
.cv-v1-footer-main p { margin-top: 18px; font-size: 14px; line-height: 1.65; }
.cv-v1-footer-main h2 { min-height: 40px; margin-bottom: 8px; font-size: 14px; font-weight: 700; line-height: 1.4; text-wrap: pretty; }
.cv-footer .cv-v1-footer-main > nav > a { display: flex; align-items: center; min-height: 44px; margin: 0; padding-block: 6px; font-size: 14px; line-height: 1.5; overflow-wrap: anywhere; }
.cv-footer .cv-v1-footer-main > nav > a:hover, .cv-footer-bottom nav a:hover { text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px; }
.cv-footer .cv-hero-socials { position: static; display: grid; justify-items: start; gap: 0; margin-block: 16px; }
.cv-footer .cv-hero-socials a:not(:has(img)) { display: flex; justify-content: flex-start; gap: 10px; width: fit-content; max-width: 100%; height: auto; min-height: 44px; margin: 0; padding-block: 6px; border: 0; border-radius: 0; background: transparent; color: var(--cv-footer-text); font-size: 14px; line-height: 1.5; }
.cv-footer .cv-hero-socials a:hover { color: var(--cv-lime); background: transparent; }
.cv-footer .cv-hero-socials a::after { display: none; }
.cv-footer .cv-hero-socials a > span { min-width: 0; overflow-wrap: anywhere; }
.cv-footer .cv-hero-socials svg { width: 20px; height: 20px; }
.cv-footer .cv-footer-bottom { display: grid; grid-template-columns: minmax(0, 1fr); align-items: start; gap: 16px; padding-block: 0 32px; line-height: 1.6; }
.cv-footer-copyright { min-width: 0; }
.cv-footer-bottom nav { min-width: 0; flex-wrap: wrap; gap: 4px 16px; }
.cv-footer .cv-footer-bottom nav a { display: flex; align-items: center; min-height: 44px; overflow-wrap: anywhere; }
.cv-footer-tools { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; min-width: 0; }
.cv-footer .cv-v1-back-top { display: grid; place-items: center; flex: 0 0 44px; width: 44px; height: 44px; margin: 0; border: 1px solid #ffffff55; border-radius: 50%; color: #fff; background: #ffffff0d; }
.cv-footer .cv-v1-back-top:hover { color: var(--cv-lime); border-color: var(--cv-lime); }
.cv-v1-back-top svg { transform: rotate(-90deg); }
/* CRO composition reuses the existing palette, cards and spacing contracts. */
.cv-hero .cv-hero-credentials { width: 100%; max-width: 760px; margin: 12px auto 0; font-size: 16px; font-weight: 400; line-height: 1.5; color: #fff; }
.cv-cro-hero-action { margin-top: 20px; }
.cv-cro-hero-action .cv-v1-text-link { max-width: 100%; gap: 6px; color: #fff; font-size: 16px; font-weight: 400; text-decoration-thickness: 1px; white-space: normal; }
.cv-v1-service--open > .cv-v1-card-heading + .cv-v1-service-badges--plain { margin-top: -8px; }
.cv-work-band .cv-case-grid { grid-template-columns: minmax(0, 1fr); }
.cv-work-band .cv-case { display: grid; grid-template-columns: minmax(0, 1fr); align-items: start; gap: 16px; }
.cv-work-band .cv-case-image { width: 100%; max-width: 180px; height: auto; aspect-ratio: 1; object-fit: contain; justify-self: center; }
.cv-work-band .cv-case-details > summary { min-height: 44px; }
.cv-work-band [data-case-more] { min-height: 44px; padding: 8px 16px; font-size: 14px; line-height: 1.5; }
.cv-work-band [data-case-more] { justify-content: center; gap: 6px; background: transparent; border: 0; border-radius: 0; box-shadow: none; cursor: pointer; }
.cv-case-body > .cv-v1-text-link { max-width: 100%; margin-top: 18px; gap: 6px; }
.cv-cro-method { padding: var(--cv-card-padding); border: 1px solid #dee2e6; border-radius: 16px; background: #fff; box-shadow: 0 2px 4px #00000013; }
.cv-cro-method-steps { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--cv-content-gap); list-style: none; padding: 0; margin: 0; }
.cv-cro-method-steps > li { min-width: 0; }
.cv-cro-method-steps p { margin-top: 8px; }
.cv-cro-method-resources { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--cv-content-gap); margin-top: var(--cv-content-gap); }
.cv-cro-method-resources .cv-v1-text-link { gap: 6px; }
.cv-cro-governance { margin-top: var(--cv-content-gap); }
/* Shared interaction follows context-specific resting styles. */
.cv-v1-text-link:is(:hover, :focus-visible) { color: var(--cv-lime); font-weight: 700; }
#services, #services-title, #ai-operations, #ai-operations-title, #ai-governance, #ai-governance-title { scroll-margin-top: 110px; }
@media (min-width: 576px) {
    .cv-work-band .cv-case { grid-template-columns: minmax(0, .47fr) minmax(0, 1fr); }
    .cv-work-band .cv-case-image { max-width: 100%; justify-self: start; }
    .cv-v1-service-badges { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .cv-v1-industry { flex-direction: row; }
    .cv-v1-industry-image { width: 28%; max-width: 140px; height: auto; aspect-ratio: 1; }
    .cv-v1-ebook-form { height: 420px; }
    .cv-v1-newsletter-form { height: 450px; }
    .cv-v1-contact-panel .cv-button { width: auto; }
}
@media (min-width: 701px) {
    .cv-cro-routes, .cv-cro-governance { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    :root { --cv-content-h2: 22px; --cv-content-copy: 14.4px; --cv-card-padding: 20px; --cv-content-gap: 20px; --cv-section-gap: 48px; --cv-page-gutter: 28px; }
    .cv-inquiry-heading { flex-direction: row; }
    .cv-inquiry-heading h2 { flex: 1; }
    .cv-inquiry-body, .cv-inquiry-form { margin-inline-start: var(--cv-copy-inset); width: calc(100% - var(--cv-copy-inset)); }
    .cv-v1-post-grid, .cv-v1-faq-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .cv-v1-faq-grid { gap: 20px; }
    .cv-v1-media-grid { grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 20px; }
    .cv-v1-media-logo { grid-column: span 3; height: 96px; }
    .cv-v1-media-logo:nth-child(n+5) { grid-column: span 4; }
    .cv-v1-footer-main { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 32px 24px; padding-block: 48px 32px; }
    .cv-v1-footer-brand { max-width: 560px; }
    .cv-footer .cv-footer-bottom { display: flex; align-items: center; gap: 16px 24px; }
    .cv-footer-copyright { margin-right: auto; }
    .cv-footer-tools { justify-content: flex-end; }
}
@media (min-width: 981px) {
    .cv-work-band .cv-case-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .cv-cro-method-resources { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .cv-cro-method-steps { grid-template-columns: repeat(5, minmax(0, 1fr)); }
    .cv-cro-method-steps .cv-v1-card-heading { flex-direction: column; align-items: flex-start; }
    :root { --cv-content-h2: 24px; --cv-section-gap: 64px; --cv-page-gutter: 40px; --cv-content-icon: 28px; --cv-heading-gap: 16px; --cv-copy-inset: 44px; }
    .cv-v1-grid, .cv-v1-newsletter-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .cv-v1-book-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 4fr); padding-left: var(--cv-copy-inset); }
    .cv-v1-ebook-form { height: 380px; }
    .cv-v1-newsletter-form { height: 360px; }
    .cv-v1-book-visual { padding-left: 0; }
    .cv-v1-blueprint .cv-flow { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .cv-v1-blueprint .cv-flow li { display: block; }
    .cv-v1-blueprint .cv-flow-icon { margin-bottom: 12px; }
    .cv-v1-blueprint .cv-flow li:not(:last-child)::after { top: 20px; left: 52px; right: -8px; bottom: auto; width: auto; height: 1px; }
    .cv-v1-contact-panel { padding: 28px; }
}
@media (min-width: 1025px) {
    .cv-v1-post-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .cv-v1-footer-main { grid-template-columns: minmax(0, 1.8fr) repeat(4, minmax(0, 1fr)); column-gap: 32px; }
    .cv-v1-footer-brand { grid-column: auto; max-width: 320px; padding-right: 16px; }
}

.cv-case-share { display: flex; flex-wrap: wrap; justify-content: flex-end; align-self: stretch; width: 100%; gap: 6px; margin-top: 12px; }
.cv-case-share > a { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 26px; width: 26px; height: 26px; border: 1px solid #c6dbe9; border-radius: 50%; background: #f4f9fc; text-decoration: none; }
.cv-case-share > a:is(:hover, :focus-visible) { background: #e1eff8; border-color: #397da5; }
.cv-case-share > a:focus-visible { outline: 2px solid #255e80; outline-offset: 3px; }
.cv-case-share span { display: inline-flex; }
.cv-case-share svg { display: block; width: 12px; height: 12px; }
.cv-case-share img { display: block; width: 18px; height: 18px; object-fit: contain; }
.cv-case-share-linkedin { color: #0a66c2; }
.cv-case-share-x { color: #14171a; }
.cv-case-body:has(> .cv-case-share), .cv-case-catalog-body:has(> .cv-case-share) { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 12px; }
.cv-case-body:has(> .cv-case-share) > p, .cv-case-catalog-body:has(> .cv-case-share) > p { grid-column: 1 / -1; }
.cv-case-body:has(> .cv-case-share) > .cv-v1-text-link, .cv-case-catalog-body:has(> .cv-case-share) > .cv-v1-text-link { margin-top: 0; justify-self: start; }
.cv-case-body > .cv-case-share, .cv-case-catalog-body > .cv-case-share { width: auto; margin-top: 0; align-self: center; }
@media (max-width: 480px) {
    .cv-case-body:has(> .cv-case-share), .cv-case-catalog-body:has(> .cv-case-share) { grid-template-columns: minmax(0, 1fr); }
    .cv-case-body > .cv-case-share, .cv-case-catalog-body > .cv-case-share { justify-self: end; }
}
