:root {
  --ink: oklch(0.222 0.032 259);
  --ink-deep: oklch(0.178 0.024 259);
  --paper: oklch(0.969 0.003 250);
  --white: oklch(1 0 0);
  --muted: oklch(0.455 0.023 255);
  --line: oklch(0.858 0.012 255);
  --gold: oklch(0.844 0.173 87);
  --gold-hover: oklch(0.909 0.143 90);
  --focus: oklch(0.51 0.18 263);
  --error: oklch(0.46 0.17 27);
  --success: oklch(0.36 0.09 160);
  --display: 'Manrope', Arial, sans-serif;
  --body: 'Source Sans 3', Arial, sans-serif;
  --content: 1280px;
  --gutter: clamp(24px,4.45vw,80px);
  --radius: 4px;
  --z-header: 10;
  --z-menu: 20;
  --z-skip: 30;
}
*,*::before,*::after {box-sizing:border-box}
html {scroll-behavior:smooth;scroll-padding-top:110px}
body {margin:0;background:var(--white);color:var(--ink);font-family:var(--body);font-size:18px;line-height:1.55;-webkit-font-smoothing:antialiased}
body.menu-open {overflow:hidden}
img {display:block;max-width:100%;height:auto}
svg {flex-shrink:0}
a {color:inherit;text-decoration-thickness:1px;text-underline-offset:5px}
button,input,textarea,select {font:inherit}
button,a,input,textarea,select,summary {-webkit-tap-highlight-color:transparent}
button {cursor:pointer}
a,button,input,textarea,select,summary {touch-action:manipulation}
:focus-visible {outline:3px solid var(--focus);outline-offset:5px}
.site-header :focus-visible,.hero :focus-visible,.site-footer :focus-visible,.cta-section :focus-visible {outline-color:var(--gold)}
[hidden] {display:none!important}
h1,h2,h3 {font-family:var(--display);font-weight:500;text-wrap:balance;letter-spacing:-.03em;margin:0;line-height:1.2}
h1 {font-size:clamp(2.5rem,4.7vw,4.5rem)}
h2 {font-size:clamp(2rem,3.3vw,3rem)}
h3 {font-size:clamp(1.375rem,1.8vw,1.75rem);letter-spacing:-.025em;line-height:1.3}
p {margin:0 0 1.2em;text-wrap:pretty}
p:last-child {margin-bottom:0}
.container {width:min(calc(100% - var(--gutter)*2),var(--content));margin-inline:auto}
.section {padding-block:clamp(64px,7vw,108px)}
.lead {font-size:clamp(1.2rem,1.55vw,1.45rem);line-height:1.55}
.section-label {font-size:1rem;line-height:1.4;font-weight:600;margin-bottom:22px}
.section-heading {display:grid;grid-template-columns:1.25fr .75fr;align-items:end;gap:80px;margin-bottom:60px}
.section-heading>p {color:var(--muted);max-width:39ch;font-size:1.2rem}
.sr-only {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link {position:fixed;top:8px;left:16px;padding:12px 20px;background:var(--gold);color:var(--ink);z-index:var(--z-skip);transform:translateY(-150%)}
.skip-link:focus {transform:translateY(0)}
.site-header {position:sticky;top:0;z-index:var(--z-header);background:var(--ink-deep);color:var(--white);border-bottom:1px solid oklch(1 0 0/.15)}
.header-inner {min-height:86px;display:flex;justify-content:space-between;align-items:center;gap:32px}
.brand {display:inline-flex;align-items:center;flex-shrink:0;text-decoration:none}
.brand img {width:100px;height:60px;object-fit:contain}
.main-nav {display:flex;align-items:center;gap:30px;font-size:1rem}
.main-nav>a {min-height:44px;display:inline-flex;align-items:center;text-decoration:none;transition:color 180ms ease}
.main-nav>a:hover,.main-nav>a[aria-current] {color:var(--gold)}
.main-nav .button {margin-left:18px;min-height:46px;padding:10px 17px;font-size:.94rem}
.menu-toggle {display:none;background:none;color:inherit;border:1px solid oklch(1 0 0/.5);border-radius:var(--radius);min-height:44px;padding:8px 12px;align-items:center;gap:12px}
.button {display:inline-flex;align-items:center;justify-content:space-between;gap:26px;min-height:54px;padding:14px 22px;border-radius:var(--radius);font-weight:600;text-decoration:none;border:1px solid transparent;line-height:1.3;transition:background 180ms ease,color 180ms ease,border-color 180ms ease}
.button-primary {background:var(--gold);color:var(--ink-deep)}
.button-primary:hover {background:var(--gold-hover)}
.button-primary:disabled {cursor:wait;opacity:.7}
.button-outline {border-color:oklch(1 0 0/.55);background:transparent;color:var(--white)}
.button-outline:hover {border-color:var(--gold);color:var(--gold)}
.text-link {display:inline-flex;align-items:center;gap:16px;min-height:44px;font-weight:600;text-decoration:none;line-height:1.4}
.text-link .arrow {transition:transform 180ms ease}
.text-link:hover {text-decoration:underline}
.text-link:hover .arrow {transform:translateX(4px)}
.light {color:var(--white)}
.hero {position:relative;background:var(--ink);color:var(--white);isolation:isolate}
.hero-media {position:absolute;inset:0;z-index:-2;overflow:hidden}
.hero-media img {width:100%;height:100%;object-fit:cover;object-position:center}
.hero::before {content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,oklch(.178 .024 259/.98) 0%,oklch(.178 .024 259/.94) 27%,oklch(.178 .024 259/.76) 49%,oklch(.178 .024 259/.22) 78%,oklch(.178 .024 259/.10) 100%)}
.hero-content {padding-block:68px 80px}
.hero-category {font-size:1.02rem;margin-bottom:22px;color:oklch(.95 .01 255)}
.hero h1 {font-size:clamp(2.5rem,5vw,4.625rem);line-height:1.14;max-width:790px;letter-spacing:-.035em}
.hero h1 span {color:var(--gold)}
.hero-description {max-width:min(52ch,580px);font-size:1.18rem;line-height:1.55;margin:26px 0 30px;color:oklch(.947 .006 255)}
.hero-actions {display:flex;gap:28px;align-items:center;flex-wrap:wrap}
.hero-actions .text-link {font-size:1rem}
.photo-credit {position:absolute;bottom:14px;right:var(--gutter);font-size:.875rem;color:var(--white);background:oklch(.178 .024 259/.85);padding:3px 8px}
.competencies {background:var(--paper);border-bottom:1px solid var(--line)}
.competencies-inner {display:grid;grid-template-columns:repeat(4,1fr)}
.competency {display:flex;justify-content:space-between;align-items:center;gap:20px;padding:28px 24px;min-height:108px;border-right:1px solid var(--line);font-family:var(--display);font-size:1.06rem;line-height:1.5;letter-spacing:-.015em;text-decoration:none;transition:background 180ms ease}
.competency:first-child {padding-left:0}
.competency:last-child {border:0;padding-right:0}
.competency:hover {text-decoration:underline}
.problem-columns {display:grid;grid-template-columns:repeat(3,1fr);gap:48px}
.problem-columns article {padding-top:26px;border-top:1px solid var(--line)}
.problem-columns h3 {margin-bottom:20px}
.problem-columns p {color:var(--muted);max-width:38ch}
.problem-columns .text-link {margin-top:10px;font-size:1rem}
.solutions-section {background:var(--paper)}
.service-row {display:grid;grid-template-columns:1fr 1fr 64px;gap:48px;align-items:center;padding:34px 0;border-top:1px solid var(--line)}
.service-row:last-child {border-bottom:1px solid var(--line)}
.technology {font-size:.95rem;color:var(--muted);margin-bottom:7px}
.service-row h3 a {text-decoration:none}
.service-row h3 a:hover {text-decoration:underline}
.service-row>p {margin:0;color:var(--muted);max-width:43ch}
.row-link {width:50px;height:50px;display:flex;align-items:center;justify-content:center;border:1px solid var(--ink);border-radius:50%;transition:background 180ms ease}
.row-link:hover {background:var(--gold)}
.approach-grid {display:grid;grid-template-columns:1fr 1fr;gap:100px}
.approach-grid .lead {margin-top:28px;max-width:29ch;color:var(--muted)}

.editorial-note {font-size:1rem;color:var(--muted);padding-top:20px;border-top:1px solid var(--line)}
.connection-section {background:var(--ink);color:var(--white)}
.connection-section .section-heading>p {color:oklch(.85 .015 255)}
.connection-diagram {display:flex;align-items:stretch;gap:28px;margin-top:64px}
.connection-diagram>div {border-block:1px solid oklch(1 0 0/.35);flex:1;padding:28px 0}
.connection-diagram>div>span {font-family:var(--display);font-size:2rem;color:var(--gold)}
.connection-diagram p {margin-top:10px;color:oklch(.87 .01 255);font-size:1.05rem}
.connection-arrow {align-self:center;color:var(--gold);font-size:1.8rem}
.diagram-caption {font-size:.94rem;color:oklch(.85 .015 255);margin-top:26px}

.cta-section {background:var(--gold);padding-block:64px}
.cta-inner {display:grid;grid-template-columns:1.3fr .7fr;align-items:center;gap:80px}
.cta-inner p {font-size:1.15rem;max-width:38ch}
.cta-inner .button-primary {background:var(--ink-deep);color:var(--white)}
.cta-inner .button-primary:hover {background:var(--ink)}
.cta-section :focus-visible {outline-color:var(--ink)}
.site-footer {background:var(--ink-deep);color:var(--white)}
.footer-main {display:grid;grid-template-columns:1.3fr .7fr 1fr;gap:80px;padding-block:64px}
.footer-brand img {width:120px;height:72px}
.footer-brand+p {margin-top:22px;font-size:1rem;color:oklch(.83 .014 255)}
.footer-label {font-size:.94rem;color:oklch(.8 .012 255);margin-bottom:20px}
.footer-links a {display:flex;align-items:center;min-height:44px;text-decoration:none;font-size:1rem;width:fit-content}
.footer-links a:hover {text-decoration:underline}
.footer-description {font-size:1rem;margin-top:18px;color:oklch(.83 .014 255)}
.footer-bottom {border-top:1px solid oklch(1 0 0/.2);display:flex;justify-content:space-between;gap:20px;align-items:center;padding-block:24px;color:oklch(.81 .014 255);font-size:.875rem}
.footer-bottom a {min-height:44px;display:inline-flex;align-items:center}
.breadcrumbs {padding-block:28px 36px;color:var(--muted);font-size:.94rem}
.breadcrumbs ol {display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;list-style:none;margin:0;padding:0}
.breadcrumbs li {display:flex;align-items:center;gap:14px}
.breadcrumbs li+li::before {content:'/';color:var(--muted)}
.breadcrumbs a {display:inline-flex;align-items:center;min-height:44px;text-decoration:none}
.breadcrumbs a:hover {text-decoration:underline}
.solution-hero {background:var(--paper);padding-bottom:70px}
.solution-intro {display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:70px}
.solution-intro h1 {font-size:clamp(2.5rem,4.4vw,4rem);max-width:19ch}
.solution-intro .lead {margin-block:28px 30px;max-width:49ch;color:var(--muted)}

.scope-section {background:var(--paper)}
.scope-grid,.technology-grid {display:grid;grid-template-columns:1fr 1fr;gap:100px}
.scope-row {border-top:1px solid var(--line);padding:25px 0}
.scope-row:first-child {padding-top:0;border-top:0}
.scope-row h3 {margin-bottom:14px}
.scope-row p {color:var(--muted)}
.technology-name {font-family:var(--display);font-size:1.8rem;margin-bottom:24px}
.faq-section {background:var(--paper)}
.faq-grid {display:grid;grid-template-columns:.7fr 1.3fr;gap:100px}
.faq-list details {border-top:1px solid var(--line)}
.faq-list details:last-child {border-bottom:1px solid var(--line)}
.faq-list summary {padding:24px 0;display:flex;justify-content:space-between;gap:24px;cursor:pointer;list-style:none;font-family:var(--display);font-size:1.125rem;line-height:1.5}
.faq-list summary::-webkit-details-marker {display:none}
.faq-list summary span {font-size:1.5rem;line-height:1;transition:transform 180ms ease}
.faq-list details[open] summary span {transform:rotate(45deg)}
.faq-list details p {padding:0 40px 24px 0;color:var(--muted);max-width:65ch}
.contact-section {background:var(--paper);padding-bottom:90px}
.contact-grid {display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;padding-top:16px}
.contact-intro h1 {font-size:clamp(2.5rem,4.4vw,4rem);line-height:1.18}
.contact-intro>.lead {max-width:30ch;color:var(--muted);margin-top:28px}
.contact-guide {margin-top:60px;padding-top:30px;border-top:1px solid var(--line);max-width:36ch}
.contact-guide h2 {font-size:1.3rem;line-height:1.5;margin-bottom:18px}
.contact-guide p {color:var(--muted);font-size:1.05rem}
.form-surface {background:var(--white);padding:36px 40px 40px;border:1px solid var(--line)}
.form-surface>h2 {font-size:1.6rem;line-height:1.4;margin-bottom:12px}
.form-intro {font-size:.94rem;color:var(--muted);margin-bottom:24px}
.availability-note {padding:16px 18px;background:var(--paper);margin-bottom:28px;border:1px solid var(--line);font-size:.94rem}
.availability-note strong {font-weight:600}
.availability-note p {margin-top:5px;color:var(--muted)}
.form-grid {display:grid;grid-template-columns:1fr 1fr;gap:21px 20px}
.field {min-width:0}
.field-full {grid-column:1/-1}
.field label {display:block;font-size:1rem;line-height:1.4;margin-bottom:8px;font-weight:600}
.field label span {font-weight:400;color:var(--muted);font-size:.94rem}
.field input,.field select,.field textarea {display:block;width:100%;border:1px solid oklch(.6 .015 255);border-radius:var(--radius);padding:11px 12px;min-height:48px;background:var(--white);color:var(--ink);font-size:1rem}
.field textarea {resize:vertical;min-height:116px;max-height:500px}
.field select {appearance:none;-webkit-appearance:none;padding-right:42px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cpath d='m5 7 5 5 5-5' fill='none' stroke='%23121c2c' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:20px}
@media (forced-colors:active){.field select {appearance:auto;-webkit-appearance:auto;background-image:none}}
.field input[aria-invalid=true],.field textarea[aria-invalid=true],.field select[aria-invalid=true] {border:2px solid var(--error)}
.field-error {font-size:.94rem;color:var(--error);margin:6px 0 0;line-height:1.4}
.field-error:empty {display:none}
.form-summary {padding:16px;margin-bottom:24px;border:1px solid var(--error);color:var(--error);font-size:1rem}
.form-summary ul {margin:8px 0 0;padding-left:20px}
.form-summary a {display:inline-block;padding-block:4px}
.privacy-note {font-size:.94rem;color:var(--muted);line-height:1.5;margin:24px 0}
.submit-button {width:100%;font-size:1rem}
.form-status {font-size:1rem;color:var(--error);margin-top:18px}
.form-status.success {color:var(--success)}
.honeypot {position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.page-intro {background:var(--paper);padding-bottom:64px}
.page-intro-grid {display:grid;grid-template-columns:1.35fr .65fr;gap:80px;align-items:end;padding-top:20px}
.page-intro-grid h1 {max-width:20ch;font-size:clamp(2.5rem,4.6vw,4.2rem)}
.page-intro-grid>.lead {color:var(--muted);max-width:32ch;margin:0 0 7px}
.solution-focus {padding:36px;background:var(--ink);color:var(--white)}
.focus-label {font-size:1rem;color:oklch(.85 .015 255);margin-bottom:24px}
.solution-flow>div {border-top:1px solid oklch(1 0 0/.3);padding-top:20px}
.solution-flow h2 {font-size:1.55rem;color:var(--gold)}
.solution-flow p {font-size:1rem;margin-top:8px;color:oklch(.89 .01 255)}
.solution-flow>span {display:block;font-size:1.5rem;color:var(--gold);padding:10px 0}
.focus-caption {font-size:.875rem;color:oklch(.85 .015 255);margin-top:28px}
.insights-teaser {background:var(--paper)}
.insights-teaser .section-heading>div p {font-size:1.15rem;color:var(--muted);max-width:36ch;margin-bottom:10px}

.article-meta {display:flex;flex-wrap:wrap;gap:10px 18px;color:var(--muted);font-size:.94rem;margin-bottom:20px}
.article-meta>span+span::before {content:'·';margin-right:18px}

.archive-label {display:flex;justify-content:space-between;gap:24px;color:var(--muted);font-size:1rem;margin-bottom:30px}
.article-list-item {display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.35fr) minmax(0,.9fr);gap:clamp(24px,3vw,44px);border-top:1px solid var(--line);padding:38px 0;align-items:start}
.article-list-item:last-child {border-bottom:1px solid var(--line)}
.article-list-item h2 {font-size:clamp(1.4rem,1.85vw,1.8rem);line-height:1.4;max-width:40ch}
.article-list-item h2 a {text-decoration:none}
.article-list-item h2 a:hover {text-decoration:underline}
.article-list-item>div>p:not(.article-meta) {color:var(--muted)}
.article-header {background:var(--paper);padding-bottom:52px}
.article-heading {margin-left:calc(25% + 30px);max-width:860px}
.article-heading h1 {font-size:clamp(2.1rem,3.6vw,3.4rem);line-height:1.23}
.article-heading .lead {color:var(--muted);margin-block:26px}
.byline {font-size:1rem;color:var(--muted)}
.article-layout {display:grid;grid-template-columns:.75fr 2.25fr;gap:60px;padding-block:64px 96px;align-items:start}
.article-aside {position:sticky;top:120px}
.article-aside>p {font-weight:600;font-size:1rem;margin-bottom:16px}
.article-aside nav {display:flex;flex-direction:column;gap:6px}
.article-aside a {font-size:.94rem;line-height:1.5;display:flex;align-items:center;min-height:44px;padding-block:8px;text-decoration:none;color:var(--muted)}
.article-aside a:hover {text-decoration:underline;color:var(--ink)}
.article-layout .article-body {max-width:65ch}
.article-body section {margin-top:42px;scroll-margin-top:120px}
.article-body section h2 {font-size:1.75rem;line-height:1.4;margin-bottom:20px}
.article-body section p {font-size:1.2rem;line-height:1.7;color:var(--ink)}
.revision-note {font-size:.94rem;color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:24px}
.article-next-step {background:var(--paper);padding:32px;margin-top:52px}
.article-next-step h2 {font-size:1.6rem;margin-bottom:20px}
.article-next-step>p {color:var(--muted)}
.article-next-step .text-link {display:flex;width:fit-content;margin-bottom:18px}
.related-reading {margin-top:44px;padding-top:28px;border-top:1px solid var(--line)}
.related-reading h2 {font-size:1.55rem;line-height:1.5}
.legal-reading {max-width:65ch}
.legal-reading h2 {font-size:1.8rem;margin-block:36px 18px}
.legal-reading .text-link {margin-top:28px}
.error-page {min-height:60vh}
.error-page .lead {margin-top:28px}
.error-page .text-link {margin-left:26px}
@media(min-width:1700px){.hero-content {padding-block:84px 96px}.hero h1{font-size:4.8rem}}
@media(max-width:1100px){.page-intro-grid,.article-list-item{gap:48px}.article-layout{gap:40px}.article-heading{margin-left:calc(25% + 20px)}.solution-focus{padding:28px}}
@media(max-width:950px){.page-intro-grid{grid-template-columns:1.2fr .8fr;gap:32px}.article-aside{position:static;grid-column:1/-1;max-width:65ch}.article-aside nav{display:none}.article-aside>p{display:none}.article-layout{display:block;padding-top:40px}.article-heading{margin-left:0}.article-body{max-width:65ch;margin-inline:auto}.article-list-item{gap:36px}}
@media(max-width:700px){.page-intro-grid{grid-template-columns:1fr;gap:28px}.page-intro-grid>.lead{max-width:46ch}.page-intro-grid h1 br{display:none}.article-list-item{grid-template-columns:1fr;gap:20px}.archive-label{display:block}.archive-label span{display:block;margin-top:10px}.article-header{padding-bottom:36px}.article-heading h1{font-size:2.2rem}.article-body section h2{font-size:1.55rem}.article-body section p{font-size:1.12rem}.article-next-step{padding:24px}.article-next-step .button{font-size:1rem}.solution-focus{padding:28px}.solution-flow h2{font-size:1.5rem}.error-page .text-link{margin-left:0;display:flex;margin-top:20px}}
@media(max-width:600px){.page-intro{padding-bottom:44px}.page-intro-grid{padding-top:0}.article-heading h1{font-size:2rem}.article-heading .lead{font-size:1.2rem}.article-layout{padding-bottom:60px}.article-next-step h2{font-size:1.45rem}.article-next-step h2 br{display:none}.related-reading h2{font-size:1.4rem}.byline{font-size:.94rem}}
@media(max-width:1100px){.main-nav{gap:20px}.main-nav .button{margin-left:0;gap:15px}.section-heading{gap:45px}.contact-grid{gap:40px}.form-surface{padding:28px}.solution-intro{gap:44px}.approach-grid,.scope-grid,.technology-grid,.faq-grid{gap:55px}.cta-inner{gap:50px}}
@media(max-width:950px){.menu-toggle{display:inline-flex}.header-inner{height:76px}.brand img{width:92px;height:55px}.main-nav{display:none}.main-nav.is-open{display:flex;position:fixed;inset:76px 0 0;background:var(--ink-deep);padding:28px var(--gutter) 60px;z-index:var(--z-menu);align-items:stretch;flex-direction:column;gap:0;overflow-y:auto}.main-nav>a{font-family:var(--display);font-size:1.3rem;padding:19px 0;border-bottom:1px solid oklch(1 0 0/.2)}.main-nav .button{margin-top:24px;padding:16px 20px;border:1px solid oklch(1 0 0/.6);font-size:1rem;align-self:flex-start}.hero h1{font-size:clamp(2.7rem,6.5vw,4.3rem)}.hero-description{max-width:46ch}.hero::before{background:linear-gradient(90deg,oklch(.178 .024 259/.97),oklch(.178 .024 259/.89) 45%,oklch(.178 .024 259/.35))}.competencies-inner{grid-template-columns:1fr 1fr}.competency:nth-child(2){border-right:0;padding-right:0}.competency:nth-child(n+3){border-top:1px solid var(--line)}.competency:nth-child(3){padding-left:0}.competency{min-height:84px;padding-block:18px}.section-heading{gap:32px;grid-template-columns:1.2fr .8fr}.problem-columns{gap:28px}.service-row{grid-template-columns:1fr 1fr 50px;gap:24px}.solution-intro{grid-template-columns:1.15fr .85fr;gap:32px}.solution-intro h1{font-size:2.8rem}.contact-grid{grid-template-columns:1fr;gap:42px}.contact-intro h1 br{display:none}.contact-intro h1{max-width:19ch;font-size:3.3rem}.contact-intro>.lead{max-width:42ch}.contact-guide{display:none}.form-surface{max-width:720px}.footer-main{gap:40px}.footer-bottom{flex-wrap:wrap}}
@media(max-width:700px){.section-heading,.approach-grid,.scope-grid,.technology-grid,.faq-grid,.cta-inner{grid-template-columns:1fr;gap:28px}.section-heading{margin-bottom:36px}.section-heading>p{max-width:50ch}.problem-columns{grid-template-columns:1fr;gap:26px}.problem-columns article{padding-top:24px}.problem-columns p{max-width:55ch}.problem-columns h3 br{display:none}.problem-columns h3{margin-bottom:12px}.problem-columns .text-link{margin-top:0}.service-row{grid-template-columns:1fr 50px;gap:16px;padding-block:28px}.service-row>p{grid-column:1;grid-row:2}.service-row>.row-link{grid-column:2;grid-row:1/3}.service-row h3{font-size:1.5rem}.connection-diagram{gap:16px;margin-top:38px}.connection-diagram>div{padding-block:20px}.connection-diagram>div>span{font-size:1.35rem}.connection-diagram p{font-size:.94rem}.connection-arrow{font-size:1.3rem}.cta-section{padding-block:52px}.footer-main{grid-template-columns:1fr 1fr;gap:40px;padding-block:48px}.footer-main>div:last-child{grid-column:1/-1}.footer-bottom{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.solution-intro{grid-template-columns:1fr}.solution-intro h1{font-size:clamp(2.4rem,7vw,3.3rem);max-width:22ch}.solution-hero{padding-bottom:48px}.scope-grid,.technology-grid,.faq-grid{gap:36px}.contact-grid{padding-top:0}.contact-intro h1{font-size:clamp(2.5rem,8vw,3.3rem)}.form-surface{padding:28px}.form-grid{gap:20px}.contact-section{padding-bottom:56px}}
@media(max-width:600px){:root{--gutter:24px}body{font-size:17px}.header-inner{height:68px}.brand img{width:86px;height:52px}.main-nav.is-open{top:68px}.hero-content{padding-block:44px 74px}.hero-category{font-size:.94rem;max-width:28ch;line-height:1.5;margin-bottom:22px}.hero h1{font-size:clamp(2.375rem,10.6vw,3rem);line-height:1.19;letter-spacing:-.03em}.hero-description{font-size:1.08rem;max-width:36ch;margin-block:24px}.hero-actions{gap:14px;align-items:flex-start;flex-direction:column}.hero-actions .button{font-size:1rem;min-height:52px}.hero-actions .text-link{font-size:1rem}.hero::before{background:linear-gradient(90deg,oklch(.178 .024 259/.96),oklch(.178 .024 259/.83) 57%,oklch(.178 .024 259/.67))}.hero-media img{object-position:center bottom}.photo-credit{right:auto;left:var(--gutter);font-size:.8125rem;bottom:14px}.competency{font-size:.94rem;gap:14px;padding:18px 16px;min-height:94px}.competency .arrow{width:17px;height:17px}.section-heading h2 br,.cta-inner h2 br{display:none}.section-heading>p{font-size:1.125rem}.section-label{margin-bottom:18px}.connection-diagram{flex-direction:column;gap:5px}.connection-diagram>div{padding-block:20px;border-bottom:0;display:flex;justify-content:space-between;align-items:center;gap:20px}.connection-diagram>div>span{font-size:1.5rem}.connection-diagram p{max-width:14ch;margin:0;font-size:1rem}.connection-arrow{transform:rotate(90deg);align-self:flex-end;margin-right:20px}.connection-diagram>div:last-child{border-bottom:1px solid oklch(1 0 0/.35)}.cta-inner{gap:26px}.breadcrumbs{padding-block:18px 26px;font-size:.875rem}.breadcrumbs ol{gap:4px 10px}.breadcrumbs li{gap:10px}.solution-intro .lead{font-size:1.15rem}.solution-intro .button{font-size:1rem;gap:16px;width:100%}.solution-intro .section-label{font-size:.94rem}.technology-name{font-size:1.5rem}.form-surface{padding:25px 20px}.form-surface>h2{font-size:1.35rem}.form-grid{grid-template-columns:1fr}.form-grid .field{grid-column:1}.contact-grid{gap:30px}.contact-intro>.lead{font-size:1.2rem}.availability-note{padding:14px}.footer-main{gap:32px}.footer-brand img{width:105px;height:63px}}
@media(max-width:360px){:root{--gutter:20px}.hero h1{font-size:2.375rem}.competency{padding-inline:10px;font-size:.875rem}.competency:first-child,.competency:nth-child(3){padding-left:0}.contact-intro h1{font-size:2.35rem}.form-surface{padding:24px 16px}.footer-main{grid-template-columns:1fr}.footer-main>div:last-child{grid-column:auto}}
.site-header {container:header / inline-size}
.competencies {container:competencies / inline-size}
.connection-section {container:connection / inline-size}
.form-summary,.field input,.field select,.field textarea {scroll-margin-top:120px}
.competencies-inner {grid-template-columns:repeat(4,minmax(0,1fr))}
.connection-diagram>div {min-width:0}
@container header (max-width:70rem){
  .header-inner{min-height:68px;height:auto;padding-block:8px}
  .menu-toggle{display:inline-flex}
  .main-nav{display:none}
  .main-nav.is-open{display:flex;position:fixed;inset:var(--header-height,68px) 0 0;max-height:calc(100dvh - var(--header-height,68px));background:var(--ink-deep);padding:20px var(--gutter) 36px;z-index:var(--z-menu);align-items:stretch;flex-direction:column;gap:0;overflow-y:auto}
  .main-nav>a{font-family:var(--display);font-size:1.3rem;padding:19px 0;border-bottom:1px solid oklch(1 0 0/.2)}
  .main-nav .button{margin-top:24px;padding:16px 20px;border:1px solid oklch(1 0 0/.6);font-size:1rem;align-self:flex-start}
}
@container competencies (max-width:60rem){
  .competencies-inner{grid-template-columns:repeat(2,minmax(0,1fr))}
  .competency:nth-child(2){border-right:0;padding-right:0}
  .competency:nth-child(n+3){border-top:1px solid var(--line)}
  .competency:nth-child(3){padding-left:0}
}
@container connection (max-width:40rem){
  .connection-diagram{flex-direction:column;gap:5px}
  .connection-diagram>div{padding-block:20px;border-bottom:0;display:flex;justify-content:space-between;align-items:center;gap:20px}
  .connection-diagram>div>span{font-size:1.5rem}
  .connection-diagram p{max-width:14ch;margin:0;font-size:1rem}
  .connection-arrow{transform:rotate(90deg);align-self:flex-end;margin-right:20px}
  .connection-diagram>div:last-child{border-bottom:1px solid oklch(1 0 0/.35)}
}
@media(max-width:950px){.header-inner{min-height:76px}}
@media(max-width:600px){.header-inner{min-height:68px;padding-block:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Film hero: fixed message, a readable foreground and independent poster fallback. */
.hero--film {display:flex;flex-direction:column;container:hero / inline-size;background:var(--ink-deep);overflow:clip}
.hero--film::before {z-index:1;pointer-events:none;background:linear-gradient(90deg,oklch(.178 .024 259) 0%,oklch(.178 .024 259) 18%,oklch(.178 .024 259/.94) 36%,oklch(.178 .024 259/.78) 49%,oklch(.178 .024 259/.3) 65%,oklch(.178 .024 259/.06) 100%)}
.hero-film {position:absolute;inset:0 0 0 18%;overflow:hidden;background:var(--ink-deep)}
.hero-film-poster,.hero-video {position:absolute;inset:0;width:100%;height:100%}
.hero-film-poster img,.hero-video {width:100%;height:100%;object-fit:cover;object-position:58% 40%}
.hero-video {opacity:0}
.hero-film.has-frame .hero-video {opacity:1}
.hero--film .hero-content {position:relative;z-index:2;padding-block:76px 88px}
.hero--film .hero-category {margin-bottom:24px;color:var(--white)}
.hero-technology{display:flex;align-items:center;gap:20px;margin-bottom:24px}
.hero-technology img{width:64px;height:auto;flex-shrink:0}
.hero--film .hero-technology .hero-category{margin:0;font-size:1rem;line-height:1.5}
.hero--film h1 {font-size:clamp(2.5rem,5vw,4.625rem);max-width:11em;line-height:1.16;letter-spacing:-.035em}
.hero--film h1 span {color:var(--white)}
.hero--film .hero-description {max-width:44ch;color:var(--white);margin-block:28px 32px}
.hero--film .hero-actions {gap:18px 28px}
.hero-video-toggle {position:absolute;z-index:3;right:var(--gutter);bottom:24px;display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:10px 14px;background:var(--ink-deep);color:var(--white);border:1px solid oklch(1 0 0/.55);border-radius:var(--radius);font-size:.875rem;line-height:1.4}
.hero-video-toggle:hover {border-color:var(--gold);color:var(--gold)}
.hero-video-toggle .video-pause-icon {display:none}
.hero-video-toggle.is-playing .video-pause-icon {display:block}
.hero-video-toggle.is-playing .video-play-icon {display:none}
@media(min-width:1700px){.hero--film .hero-content{padding-block:88px 104px}}
@container hero (max-width:56.25rem){
 .hero--film::before{display:none}
 .hero--film .hero-content{background:var(--white);color:var(--ink);padding-block:40px;width:100%;padding-inline:var(--gutter)}
 .hero--film .hero-category{color:var(--muted);margin-bottom:20px;font-size:1rem;max-width:none}
 .hero--film h1{font-size:clamp(2.375rem,6.4vw,3.75rem);max-width:20ch}
 .hero--film h1 span{color:inherit}
 .hero--film .hero-description{color:var(--muted);max-width:50ch;margin-block:24px}
 .hero--film .hero-actions{flex-direction:row;align-items:center;gap:10px 24px}
 .hero--film{display:flex;flex-direction:column}
 .hero-film{position:relative;inset:auto;order:2;height:clamp(230px,46vw,410px);width:100%}
 .hero-film-poster img,.hero-video{object-position:center 38%}
 .hero--film .hero-content :focus-visible{outline-color:var(--focus)}
 .hero-video-toggle{bottom:16px}
}
@container hero (max-width:37.5rem){
 .hero-technology{gap:16px;margin-bottom:22px}
 .hero-technology img{width:56px}
 .hero--film .hero-content{padding-block:32px}
 .hero--film .hero-category{font-size:.94rem;margin-bottom:18px}
 .hero--film h1{font-size:clamp(2.125rem,10vw,3rem);line-height:1.17}
 .hero--film .hero-description{font-size:1.08rem;margin-block:22px}
 .hero--film .hero-actions{flex-direction:column;align-items:flex-start;gap:8px}
 .hero-film{height:clamp(230px,64vw,360px)}
}
@media(max-width:360px){.hero--film h1{font-size:2.125rem}}
@media(prefers-reduced-motion:reduce){.hero-video{display:none}}

/* Portfolio: needs lead the navigation; each offer identifies its commercial role. */

.portfolio-intro,.portfolio-catalog{background:var(--paper)}
.partner-panel{background:var(--paper);color:var(--ink);padding:clamp(28px,3.4vw,48px);min-width:0;border-radius:var(--radius)}
.partner-logo{object-fit:contain;object-position:left;max-width:100%;height:auto}
.partner-logo--vartana{width:145px}
.partner-logo--ambidx{width:200px}
.partner-relation{margin:24px 0 30px;font-size:1rem;color:var(--muted)}
.partner-capabilities>div{padding-block:19px;border-top:1px solid var(--line)}
.partner-capabilities .capability-title{font-family:var(--display);font-size:1.35rem;color:var(--ink);margin-bottom:6px;line-height:1.35}
.partner-capabilities p{font-size:1rem;color:var(--muted)}
.panel-note{font-size:.94rem;color:var(--muted);padding-top:18px;border-top:1px solid var(--line)}

.catalog-jump{display:flex;flex-wrap:wrap;gap:16px 40px;margin-top:40px}
.catalog-jump .text-link{border-bottom:1px solid var(--ink)}
.platform-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.platform-list article{border-top:1px solid var(--line);padding-top:26px}
.platform-list h3{font-size:1.65rem;margin-bottom:16px}
.platform-list p{color:var(--muted)}
.platform-list .text-link{font-size:1rem}
.offer-kind{font-size:.94rem;color:var(--muted);margin-bottom:8px}
.portfolio-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:80px;padding-block:40px;border-top:1px solid var(--line);scroll-margin-top:110px}
.portfolio-row:last-child{border-bottom:1px solid var(--line)}
.portfolio-row h2{font-size:clamp(1.6rem,2.4vw,2.1rem);margin-bottom:18px;max-width:20ch}
.portfolio-row p{color:var(--muted);max-width:46ch}
.portfolio-offer+.portfolio-offer{margin-top:28px;padding-top:28px;border-top:1px solid var(--line)}
.portfolio-offer .text-link{font-size:1.35rem;font-family:var(--display);font-weight:500;margin-bottom:12px}
.portfolio-offer>p:last-child{font-size:1.05rem}
.partner-identities{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-block:32px}
.partner-identities>article{border-top:1px solid var(--line);padding-top:32px}.partner-identities h3{margin-top:28px}.partner-identities .partner-logo{height:64px;width:190px;object-fit:contain;object-position:left center}
.about-partners{background:var(--paper)}

@media(max-width:1000px){.portfolio-row{gap:40px}.platform-list{gap:24px}.platform-list .text-link{align-items:flex-start}.platform-list .text-link .arrow{margin-top:3px}}
@media(max-width:760px){.portfolio-row,.platform-list{grid-template-columns:1fr;gap:32px}.partner-panel{padding:28px}.portfolio-row{padding-block:32px}.portfolio-row h2{max-width:none}.portfolio-offer .text-link{font-size:1.2rem}.catalog-jump{gap:12px 26px;margin-top:28px}.solution-intro .partner-panel{margin-top:8px}.platform-list .text-link{align-items:center}.partner-identities{grid-template-columns:1fr;gap:48px}}
@media(max-width:360px){.hero--film .hero-category{max-width:28ch}.partner-panel{padding:24px}.partner-capabilities .capability-title{font-size:1.2rem}}

/* Editorial hierarchy: SAP leads; complementary offers share one reading area. */
.sap-focus-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(48px,8vw,120px);align-items:center}
.sap-focus-intro h2{max-width:17ch;font-size:clamp(2rem,3.6vw,3.35rem)}
.sap-focus-intro .lead{max-width:37ch;margin-block:28px;color:var(--muted)}
.sap-moments{border-block:1px solid var(--ink)}
.sap-moments article{display:grid;grid-template-columns:.85fr 1fr;gap:28px;padding-block:28px}
.sap-moments article+article{border-top:1px solid var(--line)}
.sap-moments h3{font-size:1.35rem}
.sap-moments p{font-size:1.05rem;color:var(--muted)}
.complementary-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px}
.offer-group-title{font-family:var(--body);font-size:1rem;font-weight:600;letter-spacing:0;margin-bottom:24px}

.complementary-offers>article{display:grid;grid-template-columns:128px minmax(0,1fr);gap:28px;padding-block:28px;border-top:1px solid var(--line);scroll-margin-top:110px}

.complementary-offers .partner-logo{width:120px;max-height:52px;object-fit:contain;object-position:left center;margin-top:4px}
.complementary-offers h4{font-family:var(--display);font-weight:500;font-size:1.35rem;letter-spacing:-.025em;line-height:1.35;margin:0 0 14px;text-wrap:balance}
.complementary-offers p:not(.offer-technology){font-size:1.05rem;color:var(--muted);margin-bottom:12px}
.complementary-offers .text-link{font-size:1rem}
.offer-technology{font-size:1rem;line-height:1.5;font-weight:600;margin:3px 0 0}
.portfolio-footnote{border-top:1px solid var(--line);padding-top:28px;display:flex;align-items:center;justify-content:space-between;gap:32px;margin-top:24px}
.portfolio-footnote p{font-size:1rem;max-width:68ch;color:var(--muted);margin:0}
.portfolio-footnote .text-link{flex-shrink:0;font-size:1rem}
.working-section{padding-bottom:64px}
.working-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,8vw,120px)}
.working-grid h2{max-width:18ch}
.working-grid .lead{margin-top:28px;max-width:35ch;color:var(--muted)}
.working-copy h3{font-size:1.3rem;margin-bottom:16px}
.working-copy p{color:var(--muted);max-width:48ch}
.working-copy h3:not(:first-child){margin-top:36px}
.about-signature{margin-top:64px;padding-top:28px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:48px;scroll-margin-top:110px}
.about-signature p{max-width:65ch;margin:0;font-size:1.1rem}
.about-signature .text-link{flex-shrink:0}
.insights-heading{display:flex;align-items:baseline;justify-content:space-between;gap:32px;margin-bottom:48px}
.insights-heading h2{font-size:clamp(1.8rem,2.7vw,2.5rem);max-width:22ch}
.insights-heading .text-link{flex-shrink:0}
.insights-editorial{display:grid;grid-template-columns:1.2fr 1fr;column-gap:80px}
.insights-editorial article{padding-top:24px;border-top:1px solid var(--line)}
.insight-featured{grid-row:span 2}
.insight-featured h3{font-size:clamp(1.5rem,2.4vw,2rem);max-width:28ch}
.insights-editorial h3 a{text-decoration:none}
.insights-editorial h3 a:hover{text-decoration:underline}
.insights-editorial h3{margin-bottom:20px}
.insight-featured .insight-copy>p:not(.article-meta){color:var(--muted);max-width:48ch}
.insight-secondary{padding-bottom:24px}
.insight-secondary h3{font-size:1.3rem;max-width:39ch;margin-bottom:8px}
.insights-editorial .text-link{font-size:1rem}
.erp-context{padding:32px;background:var(--ink);color:var(--white)}
.context-caption{font-size:1rem;color:var(--white);margin-bottom:28px}
.context-point h2{font-size:1.25rem;letter-spacing:-.02em;margin-bottom:6px}
.context-point p,.context-erp p{font-size:1rem;color:var(--white)}
.context-connector{font-size:1.4rem;color:var(--gold);line-height:1;padding-block:16px}
.context-erp{border-block:1px solid var(--gold);padding-block:20px}
.context-erp h2{color:var(--gold);font-size:clamp(1.4rem,2.2vw,1.85rem);margin-bottom:10px}
.context-note{font-size:.94rem;color:var(--white);opacity:.85;margin-top:28px;max-width:42ch}
.platform-list:has(.platform-primary){grid-template-columns:1.4fr 1fr 1fr;align-items:start}
.platform-list .platform-primary{background:var(--ink);color:var(--white);padding:32px;border:0}
.platform-primary p{color:var(--white)}
.platform-primary .text-link{color:var(--gold)}
.platform-primary :focus-visible{outline-color:var(--gold)}
.about-intro{background:var(--ink);color:var(--white)}
.about-intro .breadcrumbs,.about-intro .page-intro-grid>.lead{color:var(--white)}
.about-intro :focus-visible{outline-color:var(--gold)}
.about-practice-heading{display:grid;grid-template-columns:1fr 1fr;gap:64px;margin-bottom:56px;align-items:baseline}
.about-practice-heading .lead{max-width:40ch;color:var(--muted)}
.practice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px}
.practice-grid article{border-top:1px solid var(--line);padding-top:24px}
.practice-grid h3{font-size:clamp(1.7rem,2.6vw,2.3rem);margin-bottom:24px}
.practice-grid .practice-technology{color:var(--ink);font-size:1rem;font-weight:600;margin-bottom:14px}
.practice-grid p{color:var(--muted);font-size:1.05rem}
.practice-grid .text-link{font-size:1rem}

.about-partners .partner-identities{margin-bottom:0}
.about-partners .partner-identities h3{margin-bottom:14px}
.about-partners .partner-identities .partner-logo{width:150px;height:52px}
.about-conversation .lead{margin-top:0}
@media(max-width:1120px){
 .sap-moments article{grid-template-columns:1fr;gap:12px;padding-block:24px}
 .complementary-grid{gap:40px}
 .complementary-offers>article{grid-template-columns:1fr;gap:20px}
 .complementary-offers .partner-logo{height:48px;width:124px;object-position:left center}

 .offer-technology br{display:none}
 .portfolio-footnote,.about-signature{align-items:flex-start;flex-direction:column;gap:20px}
 .practice-grid{gap:28px}
}
@media(max-width:760px){
 .sap-focus-grid,.working-grid,.about-practice-heading,.practice-grid{grid-template-columns:1fr;gap:36px}
 .sap-focus-intro h2{max-width:22ch}
 .sap-moments article{grid-template-columns:1fr 1.1fr;gap:24px}
 .complementary-grid{grid-template-columns:1fr;gap:32px}
 .complementary-offers>article{grid-template-columns:120px minmax(0,1fr);gap:24px}
 .offer-group-title{margin-bottom:20px}

 .offer-technology br{display:initial}
 .about-signature{margin-top:40px}
 .insights-heading{align-items:flex-start;flex-direction:column;gap:12px;margin-bottom:32px}
 .insights-editorial{grid-template-columns:1fr;gap:28px}
 .insight-featured{grid-row:auto;padding-bottom:4px}
 .insight-secondary{padding-bottom:0}
 .platform-list:has(.platform-primary){grid-template-columns:1fr}
 .about-practice-heading{margin-bottom:36px;gap:20px}
 .practice-grid article{padding-top:24px}
}
@media(max-width:480px){
 .sap-moments article{grid-template-columns:1fr;gap:12px}
 .complementary-offers>article{grid-template-columns:1fr;gap:18px}
 .complementary-offers .partner-logo{height:36px;width:110px}

 .offer-technology br{display:none}
 .complementary-offers h4{font-size:1.3rem}
 .erp-context{padding:28px 24px}
 .sap-focus-intro .button{width:100%;gap:16px}
}

/* Reflow also responds to larger reading text, not only viewport pixels. */
.solution-hero{container:solution / inline-size}
.sap-priority,.portfolio-intro,.working-section,.insights-teaser,.about-practice,.about-conversation{container:editorial / inline-size}
@container solution (max-width:52rem){
 .solution-intro:has(.erp-context){grid-template-columns:1fr;gap:36px}
}
@container editorial (max-width:52rem){
 .sap-focus-grid,.complementary-grid,.working-grid,.insights-editorial,.about-practice-heading,.practice-grid{grid-template-columns:1fr;gap:36px}
 .insights-heading{align-items:flex-start;flex-direction:column;gap:12px}
 .insight-featured{grid-row:auto}
}

/* Five practice areas; shared operational narrative, October 2026. */
.competencies-inner{grid-template-columns:repeat(5,minmax(0,1fr))}
.competency{padding:24px 20px;font-size:1rem;min-height:112px;gap:12px}
.home-front{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,7vw,100px);padding-block:32px;border-top:1px solid var(--line)}
.home-front h3{font-size:clamp(1.5rem,2.3vw,2rem);max-width:22ch;margin-bottom:14px}
.home-front p{color:var(--muted);max-width:42ch;font-size:1.1rem}
.front-links{display:flex;flex-direction:column;gap:10px;justify-content:center}
.front-offer{display:flex;align-items:center;gap:24px;min-width:0}
.front-offer .partner-logo{width:92px;max-height:36px;flex-shrink:0}
.front-offer .text-link{font-size:1.05rem}
.portfolio-offer[id]{scroll-margin-top:110px}
.operation-journey{background:var(--ink);color:var(--white);container:journey / inline-size}
.operation-journey :focus-visible{outline-color:var(--gold)}
.journey-heading{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,7vw,100px);align-items:start}
.journey-heading h2{max-width:19ch}
.journey-heading>div{max-width:46ch}
.journey-note{font-size:1rem;color:var(--white);opacity:.85}
.purchase-steps{list-style:none;counter-reset:purchase;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px;margin:56px 0 36px;padding:0}
.purchase-steps li{counter-increment:purchase;position:relative;padding-top:24px;border-top:1px solid oklch(1 0 0/.45)}
.purchase-steps li::before{content:counter(purchase);display:block;color:var(--gold);font-size:1rem;margin-bottom:20px}
.purchase-steps span{display:block;font-family:var(--display);font-size:1.25rem;line-height:1.35;margin-bottom:12px}
.purchase-steps p{font-size:1rem;max-width:23ch}
.journey-actions{display:flex;flex-wrap:wrap;gap:20px 48px}
.journey-actions .text-link{color:var(--gold);font-size:1rem}
.conversation-start{font-size:1.1rem;color:var(--muted);margin-bottom:32px}
.conversation-start strong{color:var(--ink)}
.engagement-steps{list-style:none;counter-reset:engagement;padding:0;margin:0}
.engagement-steps li{counter-increment:engagement;display:grid;grid-template-columns:24px 1fr;gap:8px 20px;border-top:1px solid var(--line);padding-block:24px}
.engagement-steps li::before{content:counter(engagement);grid-row:span 2;font-size:1.05rem;padding-top:3px;color:var(--muted)}
.engagement-steps h3{font-size:1.35rem}
.engagement-steps p{grid-column:2;color:var(--muted);font-size:1.05rem;max-width:47ch}
.solution-connection{background:var(--paper)}
.solution-connection .lead{margin-top:0;max-width:none}
@container competencies (max-width:65rem){
 .competencies-inner{grid-template-columns:1fr}
 .competency,.competency:first-child,.competency:last-child{border:0;padding:15px 0;min-height:56px;font-size:1rem}
 .competency+.competency{border-top:1px solid var(--line)}
}
@container editorial (max-width:52rem){
 .home-front{grid-template-columns:1fr;gap:16px;padding-block:28px}
 .home-front h3{max-width:none}
 .front-offer{flex-wrap:wrap;gap:4px 20px}
}
@container journey (max-width:60rem){
 .journey-heading{grid-template-columns:1fr;gap:24px}
 .purchase-steps{grid-template-columns:1fr;margin-top:36px;gap:0}
 .purchase-steps li{display:grid;grid-template-columns:24px 1fr;gap:8px 20px;padding-block:20px}
 .purchase-steps li::before{grid-row:span 2;margin:0}
 .purchase-steps span{margin:0}
 .purchase-steps p{grid-column:2;max-width:none}
}
.platform-catalog{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(48px,8vw,120px);align-items:start}
.platform-catalog .platform-primary{background:var(--ink);color:var(--white);padding:clamp(32px,4vw,56px)}
.platform-catalog .platform-primary h3{font-size:clamp(2rem,3vw,2.6rem);margin-bottom:24px}
.platform-catalog .platform-primary p{font-size:1.25rem;max-width:28ch;margin-bottom:28px}
.platform-complements article{border-top:1px solid var(--line);padding-block:24px}
.platform-complements h3{font-size:1.35rem;margin-bottom:12px}
.platform-complements p{color:var(--muted);font-size:1.05rem;margin-bottom:8px}
.platform-complements .text-link{font-size:1rem}
.practice-list article{display:grid;grid-template-columns:1fr 1.1fr auto;gap:40px;align-items:start;border-top:1px solid var(--line);padding-block:28px}
.practice-list h3{font-size:1.5rem;max-width:23ch}
.practice-list p{color:var(--muted);font-size:1.1rem;max-width:38ch}
.practice-list .text-link{font-size:1rem}
#plataformas,.portfolio-catalog{container:catalog / inline-size}
@container catalog (max-width:52rem){
 .platform-catalog{grid-template-columns:1fr;gap:32px}
 .portfolio-row{grid-template-columns:1fr;gap:24px}
 .portfolio-row h2{max-width:none}
}
@container editorial (max-width:52rem){
 .front-offer:has(.partner-logo){flex-direction:column;align-items:flex-start;gap:4px}
 .practice-list article{grid-template-columns:1fr;gap:12px}
 .practice-list p{margin:0}
}

/* Original article photography: compact archive rows and one lead home story. */
.blog-section,.insights-teaser{container:insights / inline-size}
.insight-cover{display:block;overflow:hidden;background:var(--paper);aspect-ratio:3/2}
.insight-cover img{width:100%;height:100%;object-fit:cover}
.article-list-item .article-meta{margin-bottom:16px}
.insights-photo-note{color:var(--muted);font-size:.875rem;margin-top:28px}
.insight-featured .insight-cover{margin-bottom:24px;aspect-ratio:16/9}
.insight-secondary{display:grid;grid-template-columns:minmax(100px,.55fr) minmax(0,1fr);align-items:start;gap:24px}
.insight-secondary .insight-cover{aspect-ratio:4/3}
.insight-secondary .article-meta{margin-bottom:14px}
.insight-copy{min-width:0}
@container insights (max-width:65rem){
 .article-list-item{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:16px 32px}
 .article-list-item .insight-cover{grid-row:span 2}
 .article-list-summary{grid-column:2}
 .insights-editorial{column-gap:36px}
 .insight-secondary{grid-template-columns:minmax(88px,.5fr) minmax(0,1fr);gap:20px}
}
@container insights (max-width:52rem){
 .insights-editorial{grid-template-columns:1fr;gap:28px}
 .insight-featured{grid-row:auto}
 .insight-secondary{grid-template-columns:minmax(0,.55fr) minmax(0,1fr);gap:28px}
}
@container insights (max-width:40rem){
 .article-list-item{grid-template-columns:minmax(0,1fr);gap:20px;padding-block:28px}
 .article-list-item .insight-cover{grid-row:auto;margin-bottom:4px}
 .article-list-summary{grid-column:auto}
 .article-list-item h2{font-size:1.5rem;line-height:1.35}
 .article-list-item .article-meta{margin-bottom:12px}
 .insight-secondary{grid-template-columns:minmax(0,1fr);gap:20px}
 .insight-secondary .insight-cover{aspect-ratio:16/9}
}
