/* VPC service, scoped to the current public blue design. */
.vpc-page { --vpc-image-ink: #080f18; }
.vpc-page h1,.vpc-page h2,.vpc-page h3 { hyphens:none; }
.vpc-page .skip-link { position:fixed;left:16px;top:-100px;z-index:100;padding:12px 20px;background:var(--text);color:var(--bg); }
.vpc-page .skip-link:focus { top:16px; }
.vpc-hero { position:relative;isolation:isolate;overflow:hidden;border-bottom:1px solid var(--line);min-height:650px; }
.vpc-hero-art { position:absolute;inset:0 0 0 36%;z-index:-2;background:#061320; }
.vpc-hero-art img { width:100%;height:100%;object-fit:cover;object-position:55% 50%; }
.vpc-hero::after { content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--bg) 5%,var(--bg) 24%,#080f18ed 40%,#080f1880 59%,#080f1800 83%),linear-gradient(0deg,var(--bg),transparent 28%); }
.vpc-hero-content { padding-block:36px 64px; }
.vpc-breadcrumb { display:flex;gap:12px;color:var(--muted);font-size:12px;margin-bottom:54px; }
.vpc-breadcrumb a:hover { color:var(--accent); }
.vpc-hero h1 { font-size:clamp(40px,4.3vw,66px);line-height:1.08;max-width:750px;margin:20px 0 24px; }
.vpc-hero h1 span { color:var(--accent); }
.vpc-intro { font-size:17px;line-height:1.75;color:var(--muted);max-width:550px;margin:0; }
.vpc-hero-actions { display:flex;flex-wrap:wrap;gap:14px;margin-top:30px; }
.vpc-hero-actions .button { padding:15px 22px;font-size:14px;min-height:50px; }
.vpc-start-price { display:flex;align-items:center;gap:20px;margin-top:36px; }
.vpc-start-price strong { font-size:27px;letter-spacing:-.03em;font-weight:600;white-space:nowrap; }
.vpc-start-price span { color:var(--muted);font-size:13px;max-width:130px;line-height:1.5;border-left:1px solid var(--line-strong);padding-left:20px; }
.vpc-principles { border-bottom:1px solid var(--line); }
.vpc-principle-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding-block:30px;gap:42px; }
.vpc-principle-grid>div+div { border-left:1px solid var(--line);padding-left:42px; }
.vpc-principle-grid p { margin:10px 0 0;font-size:15px;line-height:1.6;color:var(--muted); }
.vpc-network { display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--line);border-radius:20px;overflow:hidden; }
.vpc-network-photo { position:relative;min-height:410px;background:#061320; }
.vpc-network-photo img { width:100%;height:100%;object-fit:cover;position:absolute;inset:0; }
.vpc-network-photo::after { content:"";position:absolute;inset:0;background:linear-gradient(0deg,#07101af5,transparent 90%); }
.vpc-network-photo>div { position:absolute;bottom:38px;left:38px;right:30px;z-index:1; }
.vpc-network-photo h3 { font-size:34px;line-height:1.2;margin:12px 0 0;color:#f3f7fd; }
.vpc-network-photo .kicker { color:#9ac8ff; }
.vpc-map { background:var(--surface);padding:32px;display:flex;flex-direction:column;justify-content:center; }
.vpc-map-label { color:var(--muted);font-size:12px;margin:0 0 25px; }
.vpc-map-access { display:flex;flex-direction:column;align-items:center;gap:20px;font-size:14px; }
.vpc-map-gate { position:relative;border:1px solid var(--line-strong);border-radius:8px;padding:12px 24px;color:var(--accent); }
.vpc-map-gate::before,.vpc-map-gate::after { content:"";position:absolute;width:1px;height:20px;background:var(--line-strong);left:50%; }
.vpc-map-gate::before { bottom:100%; }.vpc-map-gate::after { top:100%; }
.vpc-boundary { margin-top:20px;border:1px solid #78adff66;background:#78adff06;border-radius:12px;padding:21px; }
.vpc-boundary-title { display:flex;align-items:center;gap:9px;color:var(--accent);font-size:13px;margin-bottom:18px; }
.vpc-dot { width:6px;height:6px;border-radius:50%;background:var(--accent); }
.vpc-map-nodes { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px; }
.vpc-map-nodes>div { padding:15px 9px;background:var(--bg);border:1px solid var(--line);border-radius:8px; }
.vpc-map-nodes strong { display:block;font-size:12px;font-weight:600;line-height:1.4; }.vpc-map-nodes small { display:block;margin-top:8px;font-size:11px;line-height:1.5;color:var(--muted); }
.vpc-map-note { color:var(--muted);font-size:12px;line-height:1.65;margin:22px 0 0; }
.vpc-presets { display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px; }
.vpc-presets button { cursor:pointer;background:var(--surface);border:1px solid var(--line);border-radius:9px;color:var(--muted);padding:12px 16px;font:inherit;font-size:13px; }
.vpc-presets button[aria-pressed="true"] { color:var(--accent);border-color:var(--accent);background:#78adff0b; }
.vpc-calculator { display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px;align-items:start; }
.vpc-configurations { background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden; }
.vpc-config-head { padding:24px 26px;display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);align-items:center; }
.vpc-config-head h3 { margin:0;font-size:20px; }.vpc-config-head>span { font-size:11px;color:var(--muted); }
.vpc-config-row { display:grid;grid-template-columns:minmax(0,1fr) 100px 116px;column-gap:16px;row-gap:12px;align-items:center;padding:25px 26px;border-bottom:1px solid var(--line); }
.vpc-config-spec label { font-size:16px;font-weight:600;display:block; }.vpc-config-spec>span { display:block;margin-top:8px;color:var(--muted);font-size:12px;line-height:1.7; }.vpc-config-spec b { margin-inline:3px;font-weight:400;color:var(--faint); }
.vpc-unit-price { font-size:14px;font-weight:600; }.vpc-unit-price small { display:block;font-size:10px;color:var(--muted);margin-top:6px;font-weight:400; }
.vpc-stepper { display:flex;align-items:center;border:1px solid var(--line-strong);border-radius:9px;background:var(--bg);overflow:hidden;min-height:42px; }
.vpc-stepper button { width:34px;flex:0 0 34px;align-self:stretch;border:0;cursor:pointer;background:transparent;color:var(--accent);font-size:20px; }.vpc-stepper button:hover { background:#78adff16; }.vpc-stepper button:disabled { opacity:.4;cursor:default; }
.vpc-stepper input { min-width:0;width:46px;background:transparent!important;border:0;border-radius:0!important;padding:10px 0;text-align:center;color:var(--text);font:inherit;font-size:14px;appearance:textfield;-moz-appearance:textfield; }
.vpc-stepper input::-webkit-inner-spin-button,.vpc-stepper input::-webkit-outer-spin-button { appearance:none;margin:0; }
.vpc-stepper:focus-within { outline:2px solid var(--accent);outline-offset:3px; }.vpc-stepper input:focus-visible { outline:none; }
.vpc-line-price { grid-column:3;text-align:right;color:var(--muted);font-size:12px; }
.vpc-config-note { padding:22px 26px;margin:0;color:var(--muted);font-size:12px;line-height:1.75; }
.vpc-estimate { padding:28px;border:1px solid var(--line-strong);border-top:3px solid #367dec;border-radius:16px;background:var(--surface); }
.vpc-estimate-price { display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;margin:20px 0 26px; }.vpc-estimate-price output { font-size:36px;line-height:1.2;letter-spacing:-.04em;font-weight:600; }.vpc-estimate-price>span { font-size:12px;color:var(--muted); }
.vpc-resource-total { margin:0 0 22px; }.vpc-resource-total>div { display:flex;justify-content:space-between;gap:16px;padding:9px 0;font-size:13px; }.vpc-resource-total dt { color:var(--muted); }.vpc-resource-total dd { margin:0;text-align:right;white-space:nowrap; }
.vpc-price-breakdown { border-top:1px solid var(--line);padding-top:18px; }.vpc-price-breakdown>div { display:flex;justify-content:space-between;gap:12px;font-size:11px;color:var(--muted);line-height:1.5;margin-bottom:10px; }.vpc-price-breakdown>div>span:last-child { white-space:nowrap;color:var(--text); }
.vpc-notice:empty { display:none; }.vpc-notice { color:var(--bad);font-size:12px;line-height:1.5; }
.vpc-estimate .button { width:100%;margin-top:18px;font-size:13px;min-height:48px; }.vpc-page button:disabled { cursor:not-allowed;opacity:.55; }
.vpc-estimate-note { margin:17px 0 0;font-size:11px;line-height:1.7;color:var(--muted); }.vpc-tax { font-size:11px;color:var(--faint);margin:12px 0 0; }
.vpc-calculator-caption,.vpc-noscript { font-size:12px;line-height:1.8;color:var(--muted);max-width:920px;margin:25px 0 0; }
.vpc-scope-list { border-top:1px solid var(--line); }.vpc-scope-list article { display:grid;grid-template-columns:1fr 1.5fr .65fr;gap:36px;align-items:baseline;padding:28px 0;border-bottom:1px solid var(--line); }.vpc-scope-list h3 { font-size:22px;margin:0; }.vpc-scope-list p { font-size:15px;color:var(--muted);line-height:1.7;margin:0; }.vpc-scope-list article>span { text-align:right;color:var(--accent);font-size:12px;line-height:1.5; }
.vpc-launch { display:grid;grid-template-columns:1fr 1fr;gap:100px; }.vpc-launch h2 { font-size:clamp(28px,3vw,42px);line-height:1.15;margin:16px 0 24px; }.vpc-launch>div>p:not(.kicker) { color:var(--muted);line-height:1.8;max-width:440px; }.vpc-launch .button { margin-top:20px; }.vpc-launch-list { list-style:none;margin:0;padding:0;border-left:1px solid var(--line-strong); }.vpc-launch-list li { position:relative;padding:0 0 28px 30px; }.vpc-launch-list li:last-child { padding-bottom:0; }.vpc-launch-list li::before { content:"";position:absolute;left:-5px;top:9px;width:9px;height:9px;border-radius:50%;background:var(--accent); }.vpc-launch-list h3 { margin:0 0 9px;font-size:23px; }.vpc-launch-list p { margin:0;font-size:14px;line-height:1.7;color:var(--muted); }
.vpc-faq { border-top:1px solid var(--line);max-width:1040px; }.vpc-faq details { border-bottom:1px solid var(--line); }.vpc-faq summary { cursor:pointer;font-size:18px;font-weight:500;list-style:none;display:flex;justify-content:space-between;gap:24px;padding:24px 0; }.vpc-faq summary::-webkit-details-marker { display:none; }.vpc-faq summary::after { content:"+";color:var(--accent);font-size:23px;flex:0 0 20px;text-align:center; }.vpc-faq details[open] summary::after { content:"−"; }.vpc-faq p { margin:0;padding:0 40px 26px 0;color:var(--muted);font-size:15px;line-height:1.8;max-width:900px; }
.vpc-lead-grid { display:grid;grid-template-columns:1fr 1.2fr;gap:90px;align-items:start; }.vpc-lead-copy h2 { font-size:clamp(28px,3vw,44px);line-height:1.15;margin:16px 0 24px; }.vpc-lead-copy p:not(.kicker) { line-height:1.8;color:var(--muted);max-width:400px; }.vpc-lead-copy>a { display:inline-block;margin-top:18px;font-size:22px;color:var(--accent); }.vpc-direct { display:flex;gap:22px;margin-top:25px;font-size:14px;color:var(--accent); }.vpc-lead-grid .lead-form { background:var(--surface);padding:30px;border:1px solid var(--line); }.vpc-lead-grid .consent { font-size:12px; }.vpc-lead-grid .consent input { flex:0 0 18px;width:18px;height:18px; }.vpc-lead-grid textarea { min-height:110px; }
:root[data-theme="light"] .vpc-hero::after { background:linear-gradient(90deg,var(--bg) 12%,var(--bg) 35%,#f3f7fcdd 48%,#f3f7fc00 80%),linear-gradient(0deg,var(--bg),transparent 35%); }
:root[data-theme="light"] .vpc-hero-art { opacity:.8; }
@media(min-width:1440px){.vpc-config-row { grid-template-columns:minmax(0,1fr) 110px 124px; }.vpc-calculator { grid-template-columns:minmax(0,1fr) 365px;gap:30px; }}
@media(max-width:1100px){.vpc-calculator { grid-template-columns:minmax(0,1fr) 310px;gap:18px; }.vpc-config-row { grid-template-columns:minmax(0,1fr) 116px;padding:22px; }.vpc-config-spec { grid-column:1/-1; }.vpc-line-price { grid-column:2; }.vpc-estimate { padding:24px; }.vpc-map { padding:26px; }.vpc-map-nodes { grid-template-columns:1fr; }.vpc-map-nodes>div { display:flex;align-items:baseline;gap:10px;padding:10px; }.vpc-map-nodes small { margin:0; }.vpc-launch,.vpc-lead-grid { gap:44px; }.vpc-scope-list article { grid-template-columns:1fr 1.5fr;gap:16px 30px; }.vpc-scope-list article>span { grid-column:2;text-align:left; }}
@media(max-width:780px){.vpc-hero { min-height:0; }.vpc-hero-art { inset:0 0 0 15%;opacity:.5; }.vpc-hero::after { background:linear-gradient(90deg,var(--bg) 0%,#080f18ef 25%,#080f18aa 80%),linear-gradient(0deg,var(--bg),transparent); }.vpc-hero-content { padding-bottom:46px; }.vpc-breadcrumb { margin-bottom:40px; }.vpc-hero h1 { max-width:650px; }.vpc-intro { max-width:580px; }.vpc-principle-grid { gap:24px; }.vpc-principle-grid>div+div { padding-left:24px; }.vpc-principle-grid p { font-size:13px; }.vpc-network { grid-template-columns:1fr; }.vpc-network-photo { min-height:300px; }.vpc-network-photo img { object-position:50% 45%; }.vpc-map-nodes { grid-template-columns:repeat(3,minmax(0,1fr)); }.vpc-map-nodes>div { display:block;padding:14px; }.vpc-map-nodes small { margin-top:8px; }.vpc-calculator { grid-template-columns:1fr; }.vpc-config-row { grid-template-columns:minmax(0,1fr) 100px 116px; }.vpc-config-spec { grid-column:auto; }.vpc-line-price { grid-column:3; }.vpc-estimate { display:block; }.vpc-estimate-price output { font-size:40px; }.vpc-estimate .button { max-width:360px; }.vpc-launch,.vpc-lead-grid { grid-template-columns:1fr;gap:38px; }.vpc-launch-list { margin-left:5px; }.vpc-lead-copy p:not(.kicker) { max-width:580px; }:root[data-theme="light"] .vpc-hero::after { background:linear-gradient(90deg,var(--bg) 0%,#f3f7fcef 50%,#f3f7fcaa 100%),linear-gradient(0deg,var(--bg),transparent); }}
@media(max-width:540px){.vpc-hero-content { padding-top:24px; }.vpc-breadcrumb { font-size:11px;margin-bottom:32px; }.vpc-hero h1 { font-size:39px;line-height:1.12;letter-spacing:-.045em; }.vpc-intro { font-size:15px;line-height:1.75; }.vpc-hero-actions { display:grid;grid-template-columns:1fr;gap:10px; }.vpc-start-price { margin-top:26px;gap:14px; }.vpc-start-price strong { font-size:25px; }.vpc-start-price span { font-size:11px;padding-left:14px; }.vpc-principle-grid { grid-template-columns:1fr;gap:20px;padding-block:26px; }.vpc-principle-grid>div+div { border-left:0;border-top:1px solid var(--line);padding:20px 0 0; }.vpc-principle-grid p { margin-top:7px;font-size:14px; }.vpc-network-photo { min-height:270px; }.vpc-network-photo>div { bottom:26px;left:24px; }.vpc-network-photo h3 { font-size:30px; }.vpc-map { padding:23px 18px; }.vpc-boundary { padding:17px 13px; }.vpc-map-nodes { grid-template-columns:1fr; }.vpc-map-nodes>div { display:flex;gap:10px;padding:12px; }.vpc-map-nodes small { margin:0; }.vpc-config-head { padding:22px; }.vpc-config-head>span { display:none; }.vpc-config-row { grid-template-columns:1fr 116px;gap:15px; }.vpc-config-spec { grid-column:1/-1; }.vpc-line-price { grid-column:2; }.vpc-config-note { padding:20px 22px; }.vpc-presets { gap:8px; }.vpc-presets button { font-size:12px;padding:11px 13px; }.vpc-scope-list article { grid-template-columns:1fr;padding:24px 0;gap:12px; }.vpc-scope-list article>span { grid-column:1; }.vpc-scope-list h3 { font-size:21px; }.vpc-scope-list p { font-size:14px; }.vpc-faq summary { font-size:16px;padding:22px 0; }.vpc-faq p { padding-right:0;font-size:14px; }.vpc-lead-grid .lead-form { padding:22px; }.vpc-lead-grid .form-foot { align-items:stretch; }.vpc-lead-grid .form-foot .button { width:100%; }.vpc-page .section { padding-block:52px; }}
@media(prefers-reduced-motion:reduce){.vpc-page * { scroll-behavior:auto!important; }}
.vpc-calculator[data-vpc-valid="true"] .vpc-notice { color:var(--muted); }

/* The home promo inherits the blue palette in both themes. */
:root[data-theme="light"] #private-cloud .cta-panel {
  --ink-950: inherit; --ink-900: inherit; --paper: inherit; --paper-soft: inherit;
  --muted: inherit; --signal: inherit; --signal-2: inherit;
  --line: inherit; --line-strong: inherit;
}
