.vs-re-page { --re-ink:#17212b; --re-muted:#5f6b76; --re-coral:#ff6d5d; --re-cyan:#43c6cf; overflow:hidden; color:var(--re-ink); background:#fbfaf8; }
.vs-re-page h1,.vs-re-page h2,.vs-re-page h3 { color:var(--re-ink); letter-spacing:-.035em; }
.vs-re-page p { color:var(--re-muted); line-height:1.72; }
.vs-re-page figure { margin:0; }
.vs-re-page img { width:100%; display:block; }
.vs-re-page section { position:relative; padding:100px 0; }
.vs-re-section-heading { max-width:760px; margin:0 auto 48px; text-align:center; }
.vs-re-section-heading h2,.vs-re-split h2,.vs-re-local h2,.vs-re-final h2,.vs-re-resources h2 { margin:10px 0 16px; font-size:clamp(2.1rem,4vw,3.55rem); line-height:1.03; }
.vs-re-section-heading > p { max-width:650px; margin:0 auto; font-size:1.08rem; }

.vs-re-hero { min-height:780px; display:flex; align-items:center; padding:74px 0 88px!important; background:radial-gradient(circle at 82% 18%,rgba(67,198,207,.18),transparent 27%),linear-gradient(135deg,#f8f6f2 0%,#fff 52%,#edf7f6 100%); }
.vs-re-hero:after { content:""; position:absolute; inset:auto 0 0; height:80px; background:linear-gradient(180deg,transparent,#fbfaf8); }
.vs-re-hero__grid { display:grid; grid-template-columns:minmax(0,.83fr) minmax(530px,1.17fr); align-items:center; gap:54px; }
.vs-re-hero__copy { position:relative; z-index:2; }
.vs-re-hero h1 { max-width:700px; margin:14px 0 24px; font-size:clamp(3.3rem,5.7vw,6.4rem); line-height:.91; }
.vs-re-hero__copy > p { max-width:650px; margin:0 0 14px; font-size:1.14rem; }
.vs-re-hero__support { font-size:.98rem!important; }
.vs-re-hero .vs-button-row { margin-top:28px; }
.vs-re-proof { display:flex; align-items:center; gap:10px; margin-top:26px; color:#68737c; font-size:.78rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.vs-re-proof i { color:var(--re-coral); font-style:normal; }
.vs-re-hero__visual { position:relative; z-index:1; margin-right:-12vw!important; border:1px solid rgba(23,33,43,.09); border-radius:30px 0 0 30px; box-shadow:0 30px 80px rgba(15,28,38,.18); overflow:hidden; }
.vs-re-hero__visual img { aspect-ratio:1.42; object-fit:cover; }
.vs-re-hero__visual figcaption { position:absolute; left:24px; bottom:24px; display:flex; align-items:center; gap:10px; padding:12px 16px; color:white; border:1px solid rgba(255,255,255,.22); border-radius:13px; background:rgba(12,22,31,.82); backdrop-filter:blur(12px); box-shadow:0 10px 30px rgba(0,0,0,.25); }
.vs-re-hero__visual figcaption b { color:var(--re-coral); }
.vs-re-hero__visual figcaption b:after { content:" →"; color:white; }

.vs-re-content-chips { display:flex; flex-wrap:wrap; justify-content:center; gap:10px; margin:0 auto 42px; max-width:950px; }
.vs-re-content-chips span { padding:9px 14px; border:1px solid #dfe3e2; border-radius:999px; background:white; color:#4e5962; font-size:.85rem; font-weight:700; }
.vs-re-compare { display:grid; grid-template-columns:1fr 150px 1fr; align-items:stretch; max-width:1050px; margin:auto; }
.vs-re-compare article { padding:36px; border:1px solid #dfe4e3; background:white; box-shadow:0 18px 55px rgba(25,36,44,.07); }
.vs-re-compare__without { border-radius:24px 0 0 24px; }
.vs-re-compare__with { border-radius:0 24px 24px 0; }
.vs-re-compare small { font-size:.72rem; font-weight:900; letter-spacing:.14em; color:#849097; }
.vs-re-compare h3 { margin:10px 0 20px; font-size:1.45rem; }
.vs-re-compare article p { display:flex; align-items:center; gap:10px; margin:9px 0; font-size:.93rem; }
.vs-re-compare article p i { display:grid; width:24px; height:24px; flex:0 0 auto; place-items:center; color:#a0a8ad; border-radius:50%; background:#f1f3f3; font-style:normal; font-weight:900; }
.vs-re-compare__with p i { color:#087c76; background:#e1f6f3; }
.vs-re-compare article a,.vs-re-text-link { display:inline-block; margin-top:18px; color:#0b777b; font-weight:850; text-decoration:none; }
.vs-re-compare__turn { display:flex; flex-direction:column; justify-content:center; align-items:center; gap:13px; padding:20px; text-align:center; background:#17212b; color:white; }
.vs-re-compare__turn span { display:grid; width:52px; height:52px; place-items:center; border-radius:16px; color:#17212b; background:var(--re-coral); font-weight:950; }
.vs-re-compare__turn b { font-size:.75rem; line-height:1.45; }

.vs-re-use-cases { background:#17212b!important; }
.vs-re-use-cases h2,.vs-re-use-cases h3 { color:white; }
.vs-re-use-cases .vs-eyebrow { color:#5ed7da; }
.vs-re-use-cases .vs-re-section-heading p { color:#aeb9c1; }
.vs-re-use-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.vs-re-use-grid article { min-height:230px; padding:28px; border:1px solid rgba(255,255,255,.1); border-radius:20px; background:linear-gradient(150deg,rgba(255,255,255,.08),rgba(255,255,255,.025)); transition:transform .2s ease,border-color .2s ease; }
.vs-re-use-grid article:hover { transform:translateY(-4px); border-color:rgba(67,198,207,.5); }
.vs-re-use-grid article > span { display:grid; width:46px; height:46px; place-items:center; margin-bottom:30px; border-radius:14px; color:#17212b; background:var(--re-coral); font-size:1.15rem; font-weight:900; }
.vs-re-use-grid article:nth-child(2n) > span { background:var(--re-cyan); }
.vs-re-use-grid h3 { margin:0 0 10px; font-size:1.32rem; }
.vs-re-use-grid p { margin:0; color:#aeb9c1; font-size:.94rem; }

.vs-re-workflow { background:#f1eee8; }
.vs-re-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; max-width:1100px; margin:auto; }
.vs-re-steps article { display:flex; gap:18px; padding:28px; border-radius:18px; background:white; box-shadow:0 14px 40px rgba(27,37,43,.06); }
.vs-re-steps article > b { color:var(--re-coral); font-size:1.6rem; }
.vs-re-steps h3 { margin:4px 0 9px; font-size:1.23rem; }
.vs-re-steps p { margin:0; font-size:.9rem; }
.vs-re-flowline { display:flex; align-items:center; justify-content:center; gap:18px; margin:28px auto 0; color:#52606a; font-size:.74rem; font-weight:900; letter-spacing:.12em; }
.vs-re-flowline i { color:var(--re-coral); font-size:1.5rem; font-style:normal; }

.vs-re-split { display:grid; grid-template-columns:minmax(0,.9fr) minmax(480px,1.1fr); align-items:center; gap:70px; }
.vs-re-split--reverse { grid-template-columns:minmax(480px,1.1fr) minmax(0,.9fr); }
.vs-re-split figure { overflow:hidden; border-radius:24px; box-shadow:0 24px 70px rgba(21,31,39,.17); }
.vs-re-split figure img { aspect-ratio:3/2; object-fit:cover; }
.vs-re-split > div > p { font-size:1.03rem; }
.vs-re-check-grid { display:grid; grid-template-columns:1fr 1fr; gap:9px 16px; margin:25px 0; }
.vs-re-check-grid span { color:#35424c; font-size:.88rem; font-weight:750; }
.vs-re-note { padding:13px 15px; border-left:3px solid var(--re-coral); background:#f3f2ef; font-size:.76rem!important; }
.vs-re-social .vs-button-row { margin-top:24px; }
.vs-re-video { background:#17212b!important; }
.vs-re-video h2 { color:white; }
.vs-re-video p { color:#b9c2c8; }
.vs-re-video .vs-eyebrow,.vs-re-video .vs-re-text-link { color:#5ed7da; }
.vs-re-team ul { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:24px 0 0; padding:0; list-style:none; }
.vs-re-team li { padding:12px 14px; border-radius:10px; background:#eff4f2; color:#35424c; font-size:.87rem; font-weight:750; }
.vs-re-team li:before { content:"✓"; margin-right:8px; color:#0a8a80; }

.vs-re-local { background:linear-gradient(135deg,#e8f5f3,#fbf4ed); }
.vs-re-local__intro { max-width:700px; margin:auto; text-align:center; }
.vs-re-local__orbit { position:relative; display:grid; grid-template-columns:repeat(4,1fr); gap:12px; max-width:950px; margin:48px auto 30px; }
.vs-re-local__orbit > div { position:absolute; left:50%; top:50%; z-index:2; display:grid; width:135px; height:135px; place-items:center; transform:translate(-50%,-50%); border:8px solid rgba(255,255,255,.7); border-radius:50%; background:#17212b; box-shadow:0 18px 50px rgba(23,33,43,.2); color:white; text-align:center; font-weight:900; line-height:1.15; }
.vs-re-local__orbit p { min-height:82px; display:grid; place-items:center; margin:0; padding:14px; border:1px solid rgba(23,33,43,.08); border-radius:16px; background:rgba(255,255,255,.78); text-align:center; font-size:.86rem; font-weight:800; }
.vs-re-local__orbit p:nth-of-type(2),.vs-re-local__orbit p:nth-of-type(3),.vs-re-local__orbit p:nth-of-type(6),.vs-re-local__orbit p:nth-of-type(7) { margin:0 28px; }
.vs-re-local__close { max-width:720px; margin:0 auto; text-align:center; }

.vs-re-resources { padding:70px 0!important; background:white; }
.vs-re-resources > .vs-shell { display:grid; grid-template-columns:1fr 1.2fr; align-items:end; gap:60px; }
.vs-re-resources h2 { margin-bottom:0; font-size:2.3rem; }
.vs-re-resources nav { display:grid; gap:8px; }
.vs-re-resources nav a { display:flex; justify-content:space-between; padding:14px 0; border-bottom:1px solid #dde3e1; color:#31404a; font-weight:800; text-decoration:none; }
.vs-re-resources nav span { color:var(--re-coral); }

.vs-re-final { padding:86px 0!important; background:radial-gradient(circle at 90% 20%,rgba(67,198,207,.2),transparent 25%),#17212b; }
.vs-re-final > .vs-shell { display:grid; grid-template-columns:1fr .7fr; align-items:center; gap:50px; }
.vs-re-final h2 { max-width:700px; color:white; }
.vs-re-final p { max-width:650px; color:#b9c2c8; }
.vs-re-final small { display:block; margin-top:18px; color:#929fa7; }
.vs-re-final__mark { display:flex; align-items:center; justify-content:center; gap:15px; }
.vs-re-final__mark span,.vs-re-final__mark b { display:grid; min-width:84px; height:84px; padding:0 16px; place-items:center; border:1px solid rgba(255,255,255,.12); border-radius:20px; color:white; background:rgba(255,255,255,.06); font-size:1.2rem; }
.vs-re-final__mark b { color:#17212b; border:0; background:var(--re-coral); }
.vs-re-final__mark i { color:var(--re-cyan); font-style:normal; font-size:1.5rem; }

@media (max-width:1050px) {
  .vs-re-page section { padding:82px 0; }
  .vs-re-hero { min-height:0; }
  .vs-re-hero__grid { grid-template-columns:1fr 1fr; gap:35px; }
  .vs-re-hero h1 { font-size:clamp(3rem,6.5vw,4.7rem); }
  .vs-re-hero__visual { margin-right:-18vw!important; }
  .vs-re-split,.vs-re-split--reverse { grid-template-columns:1fr 1fr; gap:38px; }
}
@media (max-width:800px) {
  .vs-re-page section { padding:68px 0; }
  .vs-re-hero { padding-top:52px!important; }
  .vs-re-hero__grid,.vs-re-split,.vs-re-split--reverse,.vs-re-final > .vs-shell,.vs-re-resources > .vs-shell { grid-template-columns:1fr; }
  .vs-re-hero__grid { gap:36px; }
  .vs-re-hero h1 { max-width:650px; }
  .vs-re-hero__visual { margin:0!important; border-radius:22px; }
  .vs-re-use-grid,.vs-re-steps { grid-template-columns:1fr 1fr; }
  .vs-re-compare { grid-template-columns:1fr; }
  .vs-re-compare__without,.vs-re-compare__with { border-radius:20px; }
  .vs-re-compare__turn { flex-direction:row; padding:18px; }
  .vs-re-split--reverse figure { order:2; }
  .vs-re-split--reverse > div { order:1; }
  .vs-re-resources > .vs-shell { gap:28px; }
  .vs-re-final__mark { justify-content:flex-start; }
}
@media (max-width:560px) {
  .vs-re-page section { padding:56px 0; }
  .vs-re-hero { padding:36px 0 52px!important; }
  .vs-re-hero h1 { margin-top:10px; font-size:2.75rem; }
  .vs-re-hero__copy > p { font-size:1rem; }
  .vs-re-hero__support { display:none; }
  .vs-re-hero .vs-button-row { margin-top:22px; }
  .vs-re-proof { flex-wrap:wrap; font-size:.64rem; }
  .vs-re-hero__visual img { aspect-ratio:1.18; }
  .vs-re-hero__visual figcaption { left:12px; bottom:12px; padding:9px 11px; font-size:.72rem; }
  .vs-re-section-heading { margin-bottom:32px; }
  .vs-re-section-heading h2,.vs-re-split h2,.vs-re-local h2,.vs-re-final h2 { font-size:2.2rem; }
  .vs-re-content-chips { justify-content:flex-start; flex-wrap:nowrap; margin-right:-20px; padding-bottom:8px; overflow-x:auto; }
  .vs-re-content-chips span { flex:0 0 auto; }
  .vs-re-use-grid,.vs-re-steps,.vs-re-team ul { grid-template-columns:1fr; }
  .vs-re-use-grid article { min-height:0; }
  .vs-re-use-grid article > span { margin-bottom:20px; }
  .vs-re-flowline { gap:8px; font-size:.55rem; letter-spacing:.06em; }
  .vs-re-flowline i { font-size:1rem; }
  .vs-re-split { gap:30px; }
  .vs-re-check-grid { grid-template-columns:1fr; }
  .vs-re-local__orbit { grid-template-columns:1fr 1fr; }
  .vs-re-local__orbit > div { position:relative; left:auto; top:auto; grid-column:1/-1; width:110px; height:110px; margin:0 auto 4px; transform:none; }
  .vs-re-local__orbit p:nth-of-type(n) { margin:0; }
  .vs-re-final__mark { gap:7px; }
  .vs-re-final__mark span,.vs-re-final__mark b { min-width:64px; height:64px; padding:0 8px; font-size:.9rem; }
}
