.elementor-10955 .elementor-element.elementor-element-2f8fba2{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-10955 .elementor-element.elementor-element-499ca57{width:100%;max-width:100%;}:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-499ca57 */:root {
  --vps-ink: #14253c;
  --vps-navy: #0c1b30;
  --vps-blue: #2554c7;
  --vps-mint: #b8e7d5;
  --vps-green: #18715c;
  --vps-coral: #e76f51;
  --vps-ivory: #f8f5ed;
  --vps-white: #fff;
  --vps-muted: #58667a;
  --vps-line: #d4dbe4;
  --vps-shadow: 0 22px 60px rgba(12,27,48,.13);
}

.vy-pro,
.vy-pro * { box-sizing: border-box; }

.vy-pro {
  background: var(--vps-white);
  color: var(--vps-ink);
  font: 400 16px/1.7 "Manrope", Arial, sans-serif;
  overflow: clip;
}

.vy-pro h1,
.vy-pro h2,
.vy-pro h3,
.vy-pro p,
.vy-pro ul,
.vy-pro ol,
.vy-pro dl { margin-top: 0; }

.vy-pro h1,
.vy-pro h2 {
  color: var(--vps-navy);
  font-family: "Fraunces", Georgia, serif;
  font-weight: 600;
  letter-spacing: -.04em;
  line-height: 1.02;
}

.vy-pro h1 { font-size: clamp(3.1rem, 6.6vw, 6.6rem); }
.vy-pro h2 { font-size: clamp(2.3rem, 4.35vw, 4.45rem); }
.vy-pro h3 { color: var(--vps-navy); font-size: 1.1rem; line-height: 1.32; }
.vy-pro a { color: inherit; }
.vy-pro a:focus-visible,
.vy-pro summary:focus-visible,
.vy-pro [tabindex]:focus-visible { outline: 3px solid var(--vps-coral); outline-offset: 4px; }

.vps-shell { margin-inline: auto; width: min(1180px, calc(100% - 40px)); }
.vps-section { padding: clamp(5rem, 9vw, 8.5rem) 0; }
.vps-eyebrow,
.vps-kicker,
.vps-card-label {
  color: var(--vps-blue);
  font-family: "IBM Plex Mono", monospace;
  font-size: .7rem;
  font-weight: 500;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.vps-eyebrow,
.vps-kicker { margin-bottom: 1.3rem; }
.vps-section-head { margin-bottom: 3.3rem; max-width: 830px; }
.vps-section-head h2 { margin-bottom: 1.2rem; }
.vps-section-head > p:last-child { color: var(--vps-muted); font-size: 1.05rem; }
.vps-section-head-split { align-items: end; display: grid; gap: 4rem; grid-template-columns: 1.1fr .9fr; max-width: none; }
.vps-section-head-split > p { border-left: 4px solid var(--vps-coral); padding-left: 1.25rem; }

.vps-breadcrumb { background: var(--vps-navy); border-bottom: 1px solid rgba(255,255,255,.15); color: #c8d2e0; font-family: "IBM Plex Mono", monospace; font-size: .7rem; }
.vps-breadcrumb ol { display: flex; gap: .6rem; list-style: none; margin: 0; padding: .85rem 0; }
.vps-breadcrumb li + li::before { color: var(--vps-mint); content: "/"; margin-right: .6rem; }
.vps-breadcrumb a { text-decoration: none; }
.vps-breadcrumb a:hover { color: var(--vps-white); }

.vps-hero { background: var(--vps-ivory); border-bottom: 1px solid #ddd7c9; padding: clamp(4.8rem, 8.5vw, 8rem) 0; position: relative; }
.vps-rule { background: #d8d1c2; height: 1px; position: absolute; right: 0; width: 42%; }
.vps-rule-one { top: 33%; }
.vps-rule-two { top: 66%; }
.vps-hero::before { background: var(--vps-mint); content: ""; height: 100%; left: 0; position: absolute; top: 0; width: 9px; }
.vps-hero-grid { align-items: center; display: grid; gap: clamp(3rem, 6.5vw, 6.5rem); grid-template-columns: 1.18fr .82fr; position: relative; }
.vps-hero-copy h1 { margin-bottom: 1.7rem; }
.vps-lead { color: #445369; font-size: clamp(1.05rem, 1.55vw, 1.3rem); max-width: 760px; }
.vps-actions { display: flex; flex-wrap: wrap; gap: .8rem; margin: 2.3rem 0; }
.vps-button { align-items: center; border: 1px solid transparent; border-radius: .4rem; display: inline-flex; font-size: .88rem; font-weight: 700; gap: .55rem; justify-content: center; min-height: 3.35rem; padding: .75rem 1.3rem; text-decoration: none; transition: background-color .2s ease, color .2s ease, transform .2s ease; }
.vps-button:hover { transform: translateY(-2px); }
.vps-button-primary { background: var(--vps-blue); color: var(--vps-white) !important; }
.vps-button-primary:hover { background: var(--vps-navy); }
.vps-button-line { border-color: #9da8b6; }
.vps-button-line:hover { border-color: var(--vps-navy); }
.vps-hero-notes { display: flex; flex-wrap: wrap; gap: .7rem 1.4rem; list-style: none; padding: 0; }
.vps-hero-notes li { font-family: "IBM Plex Mono", monospace; font-size: .66rem; }
.vps-hero-notes li::before { color: var(--vps-green); content: "✓"; margin-right: .4rem; }

.vps-client-brief { background: var(--vps-white); border: 1px solid #b9c2ce; box-shadow: var(--vps-shadow); padding: 1rem; transform: rotate(1deg); }
.vps-brief-head { align-items: end; background: var(--vps-navy); color: var(--vps-white); display: flex; justify-content: space-between; padding: .9rem; }
.vps-brief-head span { font-family: "IBM Plex Mono", monospace; font-size: .62rem; }
.vps-brief-head b { color: var(--vps-mint); font-family: "Fraunces", serif; font-size: 1.2rem; }
.vps-brief-question { background: var(--vps-mint); padding: 1.25rem; }
.vps-brief-question small { display: block; font-family: "IBM Plex Mono", monospace; font-size: .62rem; margin-bottom: .3rem; text-transform: uppercase; }
.vps-brief-question strong { display: block; font-family: "Fraunces", serif; font-size: 1.55rem; line-height: 1.2; }
.vps-client-brief ol { list-style: none; margin-bottom: 0; padding: 0; }
.vps-client-brief li { align-items: center; border-bottom: 1px solid var(--vps-line); display: grid; gap: .6rem; grid-template-columns: 76px 1fr 28px; padding: .8rem; }
.vps-client-brief li span { font-weight: 700; }
.vps-client-brief li p { color: var(--vps-muted); font-size: .72rem; margin-bottom: 0; }
.vps-client-brief li b { color: var(--vps-blue); font-family: "IBM Plex Mono", monospace; font-size: .65rem; }
.vps-brief-note { color: var(--vps-muted); font-size: .69rem; margin: .9rem .8rem .2rem; }

.vps-context { background: var(--vps-navy); color: #d6dfeb; padding: clamp(5rem, 8vw, 7.5rem) 0; }
.vps-context-grid { display: grid; gap: clamp(3rem, 8vw, 8rem); grid-template-columns: .9fr 1.1fr; }
.vps-context h2 { color: var(--vps-white); margin-bottom: 0; }
.vps-context .vps-eyebrow { color: var(--vps-mint); }
.vps-context-copy { border-left: 1px solid rgba(255,255,255,.25); font-size: 1.06rem; padding-left: clamp(1.5rem, 4vw, 3.5rem); }
.vps-context-copy p:last-child { margin-bottom: 0; }

.vps-models { background: var(--vps-white); }
.vps-model-grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.vps-model-grid article { border: 1px solid var(--vps-line); margin-right: -1px; min-height: 300px; padding: 1.6rem; }
.vps-model-grid span { color: var(--vps-blue); font-family: "IBM Plex Mono", monospace; font-size: .62rem; }
.vps-model-grid h3 { font-family: "Fraunces", serif; font-size: 1.45rem; margin: 2.2rem 0 1rem; }
.vps-model-grid p { color: var(--vps-muted); font-size: .86rem; }
.vps-model-grid small { color: var(--vps-green); font-size: .69rem; font-weight: 700; }

.vps-scope { background: var(--vps-ivory); }
.vps-scope-grid { display: grid; gap: 1rem; grid-template-columns: repeat(3, 1fr); }
.vps-scope-grid article { background: var(--vps-white); border: 1px solid #d9d2c4; min-height: 235px; padding: 1.65rem; }
.vps-scope-grid .vps-scope-featured { background: var(--vps-blue); color: var(--vps-white); grid-row: span 2; }
.vps-scope-featured h3 { color: var(--vps-white); font-family: "Fraunces", serif; font-size: 1.7rem; }
.vps-scope-featured .vps-card-label { color: var(--vps-mint); }
.vps-scope-featured ul { padding-left: 1.15rem; }
.vps-scope-featured li { margin-bottom: .55rem; }
.vps-scope-grid article h3 { margin: 2rem 0 .8rem; }
.vps-scope-grid article p { color: var(--vps-muted); font-size: .88rem; margin-bottom: 0; }
.vps-scope-grid .vps-scope-featured p { color: #e7ecfb; }

.vps-trust { background: var(--vps-white); }
.vps-trust-grid { align-items: start; display: grid; gap: clamp(3rem, 8vw, 8rem); grid-template-columns: .85fr 1.15fr; }
.vps-trust-copy { position: sticky; top: 2rem; }
.vps-trust-copy > p:not(.vps-eyebrow) { color: var(--vps-muted); }
.vps-trust-formula { background: var(--vps-navy); color: var(--vps-white); display: flex; flex-wrap: wrap; font-family: "IBM Plex Mono", monospace; font-size: .65rem; gap: .65rem; justify-content: space-between; margin-top: 2rem; padding: 1rem; text-transform: uppercase; }
.vps-trust-formula b { color: var(--vps-mint); }
.vps-evidence-board { border-left: 7px solid var(--vps-mint); box-shadow: var(--vps-shadow); padding: clamp(1.6rem, 4vw, 3rem); }
.vps-evidence-board h3 { font-family: "Fraunces", serif; font-size: 1.75rem; }
.vps-evidence-board ul { list-style: none; padding: 0; }
.vps-evidence-board li { border-top: 1px solid var(--vps-line); padding: .9rem 0 .9rem 1.7rem; position: relative; }
.vps-evidence-board li::before { color: var(--vps-green); content: "✓"; font-weight: 700; left: 0; position: absolute; }
.vps-note { background: var(--vps-ivory); color: var(--vps-muted); font-size: .74rem; margin-bottom: 0; padding: .9rem; }

.vps-service-page { background: #e9f5f0; }
.vps-service-grid { display: grid; gap: clamp(3rem, 8vw, 8rem); grid-template-columns: .8fr 1.2fr; }
.vps-service-grid > div:first-child > p:not(.vps-eyebrow) { color: var(--vps-muted); }
.vps-anatomy { border-top: 1px solid #a9c9bd; list-style: none; padding: 0; }
.vps-anatomy li { border-bottom: 1px solid #a9c9bd; display: grid; gap: 1.2rem; grid-template-columns: 42px 1fr; padding: 1.1rem 0; }
.vps-anatomy > li > span { color: var(--vps-green); font-family: "IBM Plex Mono", monospace; font-size: .68rem; }
.vps-anatomy h3 { margin-bottom: .25rem; }
.vps-anatomy p { color: var(--vps-muted); font-size: .86rem; margin-bottom: 0; }

.vps-seo { background: #edf2ff; }
.vps-intent-grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.vps-intent-grid article { background: var(--vps-white); border: 1px solid #cbd4e8; margin-right: -1px; min-height: 260px; padding: 1.45rem; }
.vps-intent-grid span { color: var(--vps-blue); font-family: "IBM Plex Mono", monospace; font-size: .62rem; }
.vps-intent-grid h3 { margin: 2rem 0 .8rem; }
.vps-intent-grid p { color: var(--vps-muted); font-size: .84rem; }
.vps-intent-grid code { background: var(--vps-ivory); display: block; font-size: .67rem; overflow-wrap: anywhere; padding: .65rem; }
.vps-seo-detail { border-top: 1px solid #c2cce1; display: grid; gap: 2.5rem; grid-template-columns: repeat(3, 1fr); margin-top: 3rem; padding-top: 2.5rem; }
.vps-seo-detail ul { color: var(--vps-muted); padding-left: 1.15rem; }

.vps-local { background: var(--vps-navy); color: #d7e0ec; }
.vps-local-grid { align-items: center; display: grid; gap: clamp(3rem, 8vw, 8rem); grid-template-columns: .8fr 1.2fr; }
.vps-local h2 { color: var(--vps-white); }
.vps-local .vps-eyebrow { color: var(--vps-mint); }
.vps-local-card { background: var(--vps-white); color: var(--vps-ink); padding: 1rem; }
.vps-local-card > .vps-card-label { background: var(--vps-blue); color: var(--vps-white); display: block; padding: .8rem; }
.vps-local-card dl { margin-bottom: 0; }
.vps-local-card dl div { border-bottom: 1px solid var(--vps-line); display: grid; gap: 1rem; grid-template-columns: 110px 1fr; padding: .9rem .8rem; }
.vps-local-card dt { color: var(--vps-muted); font-family: "IBM Plex Mono", monospace; font-size: .62rem; text-transform: uppercase; }
.vps-local-card dd { font-size: .82rem; font-weight: 700; margin: 0; }
.vps-local-card > p { color: var(--vps-muted); font-size: .7rem; margin: .9rem .8rem .2rem; }

.vps-conversion { background: var(--vps-white); }
.vps-conversion-grid { display: grid; gap: 1rem; grid-template-columns: repeat(4, 1fr); }
.vps-conversion-grid article { border: 1px solid var(--vps-line); min-height: 255px; padding: 1.5rem; }
.vps-conversion-grid article > span { color: var(--vps-coral); font-size: 1.7rem; }
.vps-conversion-grid h3 { margin: 1.6rem 0 .8rem; }
.vps-conversion-grid p { color: var(--vps-muted); font-size: .85rem; }
.vps-conversion-grid small { color: var(--vps-green); font-family: "IBM Plex Mono", monospace; font-size: .61rem; }
.vps-privacy-strip { align-items: start; background: var(--vps-mint); display: grid; gap: 1.5rem; grid-template-columns: 190px 1fr; margin-top: 1rem; padding: 1.25rem; }
.vps-privacy-strip strong { font-family: "IBM Plex Mono", monospace; font-size: .7rem; text-transform: uppercase; }
.vps-privacy-strip p { font-size: .84rem; margin-bottom: 0; }

.vps-governance { background: var(--vps-ivory); }
.vps-governance-grid { align-items: center; display: grid; gap: clamp(3rem, 8vw, 7rem); grid-template-columns: .8fr 1.2fr; }
.vps-governance-grid > div:first-child > p:not(.vps-eyebrow) { color: var(--vps-muted); }
.vps-text-link { color: var(--vps-blue) !important; font-weight: 700; text-decoration-thickness: 2px; text-underline-offset: 4px; }
.vps-table-wrap { background: var(--vps-white); border: 1px solid var(--vps-line); overflow-x: auto; }
.vps-table-wrap table { border-collapse: collapse; min-width: 620px; width: 100%; }
.vps-table-wrap th { background: var(--vps-navy); color: var(--vps-white); font-family: "IBM Plex Mono", monospace; font-size: .64rem; padding: 1rem; text-align: left; text-transform: uppercase; }
.vps-table-wrap td { border-bottom: 1px solid var(--vps-line); padding: 1rem; }
.vps-table-wrap tr:last-child td { border-bottom: 0; }
.vps-table-wrap tr:nth-child(even) td { background: #f4f8f6; }

.vps-process { background: var(--vps-white); }
.vps-process-list { border-top: 1px solid var(--vps-line); list-style: none; padding: 0; }
.vps-process-list li { border-bottom: 1px solid var(--vps-line); display: grid; gap: 2rem; grid-template-columns: 70px 1fr; padding: 1.55rem 0; }
.vps-process-list > li > span { color: var(--vps-blue); font-family: "IBM Plex Mono", monospace; font-size: .7rem; }
.vps-process-list h3 { margin-bottom: .35rem; }
.vps-process-list p { color: var(--vps-muted); margin-bottom: 0; max-width: 880px; }

.vps-cost { background: var(--vps-blue); color: #e6ebfa; }
.vps-cost-grid { display: grid; gap: clamp(3rem, 8vw, 8rem); grid-template-columns: .85fr 1.15fr; }
.vps-cost h2,
.vps-cost h3 { color: var(--vps-white); }
.vps-cost .vps-eyebrow { color: var(--vps-mint); }
.vps-cost-list { list-style: none; padding: 0; }
.vps-cost-list li { border-top: 1px solid rgba(255,255,255,.27); display: grid; gap: 1rem; grid-template-columns: 78px 1fr; padding: .9rem 0; }
.vps-cost-list span { color: var(--vps-mint); font-family: "IBM Plex Mono", monospace; font-size: .62rem; }

.vps-faq { background: #edf2ff; }
.vps-faq-grid { align-items: start; display: grid; gap: clamp(3rem, 8vw, 8rem); grid-template-columns: .7fr 1.3fr; }
.vps-faq-intro { position: sticky; top: 2rem; }
.vps-faq-intro > p:not(.vps-eyebrow) { color: var(--vps-muted); }
.vps-button-dark { background: var(--vps-navy); color: var(--vps-white) !important; margin-top: 1rem; }
.vps-button-dark:hover { background: var(--vps-green); }
.vps-faq-list details { background: var(--vps-white); border-bottom: 1px solid var(--vps-line); }
.vps-faq-list summary { cursor: pointer; font-weight: 700; list-style: none; padding: 1.3rem 3.3rem 1.3rem 1.25rem; position: relative; }
.vps-faq-list summary::-webkit-details-marker { display: none; }
.vps-faq-list summary::after { color: var(--vps-blue); content: "+"; font-family: "IBM Plex Mono", monospace; font-size: 1.35rem; position: absolute; right: 1.25rem; top: 1rem; }
.vps-faq-list details[open] summary::after { content: "−"; }
.vps-faq-list details p { color: var(--vps-muted); padding: 0 3.3rem 1.35rem 1.25rem; }

.vps-cta { background: var(--vps-navy); color: #d8e1ed; padding: clamp(4.8rem, 8vw, 7rem) 0; position: relative; }
.vps-cta::after { background: var(--vps-mint); bottom: 0; content: ""; height: 9px; position: absolute; right: 0; width: 38%; }
.vps-cta-grid { align-items: end; display: grid; gap: 3rem; grid-template-columns: 1.2fr .8fr; }
.vps-cta h2 { color: var(--vps-white); }
.vps-kicker-light { color: var(--vps-mint); }
.vps-cta-actions { align-items: flex-end; display: flex; flex-direction: column; gap: 1rem; }
.vps-button-accent { background: var(--vps-coral); color: var(--vps-white) !important; }
.vps-button-accent:hover { background: var(--vps-white); color: var(--vps-navy) !important; }
.vps-whatsapp { color: var(--vps-white) !important; font-size: .84rem; text-underline-offset: 4px; }

@media (max-width: 1020px) {
  .vps-hero-grid,
  .vps-context-grid,
  .vps-trust-grid,
  .vps-service-grid,
  .vps-local-grid,
  .vps-governance-grid,
  .vps-cost-grid,
  .vps-faq-grid,
  .vps-cta-grid { grid-template-columns: 1fr; }
  .vps-model-grid,
  .vps-intent-grid,
  .vps-conversion-grid { grid-template-columns: repeat(2, 1fr); }
  .vps-scope-grid { grid-template-columns: repeat(2, 1fr); }
  .vps-trust-copy,
  .vps-faq-intro { position: static; }
  .vps-client-brief { max-width: 620px; transform: none; }
  .vps-cta-actions { align-items: flex-start; }
}

@media (max-width: 720px) {
  .vy-pro h1 { font-size: clamp(2.8rem, 14vw, 4.2rem); }
  .vps-shell { width: min(100% - 28px, 1180px); }
  .vps-section-head-split,
  .vps-model-grid,
  .vps-scope-grid,
  .vps-intent-grid,
  .vps-seo-detail,
  .vps-conversion-grid { grid-template-columns: 1fr; }
  .vps-scope-grid .vps-scope-featured { grid-row: auto; }
  .vps-context-copy { border-left: 0; border-top: 1px solid rgba(255,255,255,.25); padding: 2rem 0 0; }
  .vps-actions .vps-button { width: 100%; }
  .vps-privacy-strip { grid-template-columns: 1fr; }
  .vps-process-list li { gap: 1rem; grid-template-columns: 44px 1fr; }
}

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

@media (forced-colors: active) {
  .vps-button,
  .vps-client-brief,
  .vps-model-grid article,
  .vps-scope-grid article,
  .vps-evidence-board,
  .vps-intent-grid article,
  .vps-conversion-grid article,
  .vps-faq-list details { border: 1px solid CanvasText; }
  .vps-hero::before,
  .vps-cta::after { background: CanvasText; }
  .vps-rule { display: none; }
}

@media print {
  .vy-pro { color: #000; }
  .vps-breadcrumb,
  .vps-actions,
  .vps-cta-actions { display: none; }
  .vps-hero,
  .vps-context,
  .vps-section,
  .vps-cta { background: #fff !important; color: #000 !important; padding: 2rem 0; }
  .vy-pro h1,
  .vy-pro h2,
  .vy-pro h3 { color: #000 !important; }
  .vps-trust-copy,
  .vps-faq-intro { position: static; }
}/* End custom CSS */