Skip to content
Search products

Term of Service

.vy-legal, .vy-legal * { box-sizing: border-box; } .vy-legal { –vy-ink: #17352e; –vy-ink-soft: #4d675f; –vy-forest: #245f4f; –vy-forest-deep: #173f36; –vy-sage: #dceae1; –vy-sage-light: #edf5ef; –vy-cream: #fbfaf4; –vy-white: #ffffff; –vy-peach: #efd7c8; –vy-gold: #d2aa61; –vy-line: rgba(23, 53, 46, 0.13); –vy-line-strong: rgba(23, 53, 46, 0.22); –vy-shadow: 0 28px 80px rgba(31, 72, 60, 0.13); position: relative; isolation: isolate; width: 100vw; margin-left: calc(50% – 50vw); overflow: hidden; color: var(–vy-ink); background: radial-gradient(circle at 7% 6%, rgba(239, 215, 200, 0.70), transparent 28rem), radial-gradient(circle at 94% 12%, rgba(220, 234, 225, 0.95), transparent 32rem), var(–vy-cream); font-family: “Avenir Next”, Avenir, “Segoe UI”, Inter, Helvetica, Arial, sans-serif; font-size: 16px; line-height: 1.72; } .vy-legal a { color: var(–vy-forest); text-underline-offset: 0.16em; } .vy-legal a:hover { color: var(–vy-forest-deep); } .vy-legal strong { color: var(–vy-ink); } .vy-legal__shell { width: min(1180px, calc(100% – 40px)); margin: 0 auto; } .vy-legal__ornament { position: absolute; z-index: -1; pointer-events: none; } .vy-legal__ornament–top { top: -120px; right: -120px; width: min(500px, 56vw); opacity: .48; } .vy-legal__ornament–side { top: 900px; left: -155px; width: 330px; opacity: .22; } .vy-legal__hero { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(320px, .58fr); gap: clamp(34px, 6vw, 82px); align-items: end; padding: 92px 0 68px; } .vy-legal__eyebrow { display: inline-flex; align-items: center; gap: 10px; margin: 0 0 18px; color: var(–vy-forest); font-size: .74rem; font-weight: 850; letter-spacing: .17em; line-height: 1.2; text-transform: uppercase; } .vy-legal__eyebrow::before { width: 34px; height: 1px; background: currentColor; content: “”; } .vy-legal__hero h1 { max-width: 850px; margin: 0; color: var(–vy-ink); font-family: Georgia, “Times New Roman”, serif; font-size: clamp(3.5rem, 7.4vw, 7.25rem); font-weight: 500; letter-spacing: -.052em; line-height: .92; text-wrap: balance; } .vy-legal__hero h1 em { color: var(–vy-forest); font-weight: inherit; } .vy-legal__lede { max-width: 770px; margin: 28px 0 0; color: var(–vy-ink-soft); font-size: clamp(1.08rem, 1.8vw, 1.28rem); } .vy-legal__plain-note { max-width: 760px; margin: 18px 0 0; padding: 18px 20px; border-left: 3px solid var(–vy-gold); border-radius: 0 16px 16px 0; color: var(–vy-ink-soft); background: rgba(255,255,255,.58); } .vy-legal__meta { display: grid; gap: 12px; } .vy-legal__meta-card { padding: 18px 20px; border: 1px solid rgba(255,255,255,.75); border-radius: 20px; background: rgba(255,255,255,.72); box-shadow: 0 14px 38px rgba(31,72,60,.08); backdrop-filter: blur(12px); } .vy-legal__meta-card span, .vy-legal__meta-card strong { display: block; } .vy-legal__meta-card span { color: var(–vy-ink-soft); font-size: .68rem; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; } .vy-legal__meta-card strong { margin-top: 5px; font-size: .94rem; line-height: 1.5; } .vy-legal__summary { margin-bottom: 54px; padding: 28px; border: 1px solid var(–vy-line); border-radius: 28px; background: rgba(255,255,255,.68); box-shadow: var(–vy-shadow); } .vy-legal__summary h2 { margin: 0; font-family: Georgia, “Times New Roman”, serif; font-size: clamp(1.9rem, 3vw, 2.75rem); font-weight: 500; letter-spacing: -.03em; } .vy-legal__summary-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-top: 22px; } .vy-legal__summary-item { min-height: 150px; padding: 20px; border-radius: 20px; background: var(–vy-sage-light); } .vy-legal__summary-item strong { display: block; color: var(–vy-forest); font-size: .95rem; } .vy-legal__summary-item p { margin: 9px 0 0; color: var(–vy-ink-soft); font-size: .9rem; line-height: 1.6; } .vy-legal__layout { display: grid; grid-template-columns: 270px minmax(0, 1fr); gap: 28px; align-items: start; padding-bottom: 108px; } .vy-legal__toc { position: sticky; top: 110px; max-height: calc(100vh – 135px); padding: 22px; border: 1px solid var(–vy-line); border-radius: 24px; overflow: auto; background: rgba(255,255,255,.78); box-shadow: 0 18px 44px rgba(31,72,60,.08); scrollbar-width: thin; } .vy-legal__toc-title { margin: 0 0 14px; color: var(–vy-forest); font-size: .72rem; font-weight: 850; letter-spacing: .14em; text-transform: uppercase; } .vy-legal__toc ol { display: grid; gap: 3px; margin: 0; padding: 0; list-style: none; counter-reset: vy-toc; } .vy-legal__toc li { counter-increment: vy-toc; } .vy-legal__toc a { display: grid; grid-template-columns: 26px minmax(0, 1fr); gap: 8px; align-items: start; padding: 8px 9px; border-radius: 11px; color: var(–vy-ink-soft); font-size: .82rem; line-height: 1.35; text-decoration: none; } .vy-legal__toc a::before { content: counter(vy-toc, decimal-leading-zero); color: var(–vy-gold); font-size: .68rem; font-weight: 850; } .vy-legal__toc a:hover, .vy-legal__toc a:focus-visible { color: var(–vy-ink); background: var(–vy-sage-light); } .vy-legal__content { display: grid; gap: 16px; } .vy-legal__card { scroll-margin-top: 110px; padding: clamp(25px, 4vw, 42px); border: 1px solid var(–vy-line); border-radius: 28px; background: rgba(255,255,255,.77); box-shadow: 0 12px 34px rgba(31,72,60,.055); } .vy-legal__card–accent { color: var(–vy-white); border-color: transparent; background: var(–vy-forest); box-shadow: 0 24px 62px rgba(36,95,79,.18); } .vy-legal__card h2 { display: flex; gap: 13px; align-items: baseline; margin: 0; color: var(–vy-ink); font-family: Georgia, “Times New Roman”, serif; font-size: clamp(1.65rem, 3vw, 2.45rem); font-weight: 500; letter-spacing: -.028em; line-height: 1.18; } .vy-legal__card–accent h2, .vy-legal__card–accent strong { color: var(–vy-white); } .vy-legal__section-number { flex: 0 0 auto; color: var(–vy-gold); font-family: “Avenir Next”, Avenir, “Segoe UI”, sans-serif; font-size: .7rem; font-weight: 900; letter-spacing: .13em; } .vy-legal__card p { margin: 17px 0 0; color: var(–vy-ink-soft); } .vy-legal__card–accent p, .vy-legal__card–accent li { color: rgba(255,255,255,.78); } .vy-legal__card ul, .vy-legal__card ol { margin: 17px 0 0; padding-left: 1.25rem; color: var(–vy-ink-soft); } .vy-legal__card li + li { margin-top: 8px; } .vy-legal__card h3 { margin: 28px 0 0; color: var(–vy-ink); font-size: 1rem; font-weight: 850; letter-spacing: -.01em; } .vy-legal__card–accent h3 { color: var(–vy-white); } .vy-legal__callout { margin-top: 22px; padding: 18px 20px; border: 1px solid rgba(36,95,79,.16); border-radius: 17px; color: var(–vy-ink-soft); background: var(–vy-sage-light); } .vy-legal__callout–warm { border-color: rgba(210,170,97,.28); background: #fff8e9; } .vy-legal__card–accent .vy-legal__callout { border-color: rgba(255,255,255,.18); color: rgba(255,255,255,.82); background: rgba(255,255,255,.09); } .vy-legal__table-wrap { margin-top: 22px; border: 1px solid var(–vy-line); border-radius: 18px; overflow-x: auto; } .vy-legal table { width: 100%; min-width: 650px; border-collapse: collapse; background: rgba(255,255,255,.68); } .vy-legal th, .vy-legal td { padding: 15px 16px; border-bottom: 1px solid var(–vy-line); text-align: left; vertical-align: top; font-size: .88rem; line-height: 1.55; } .vy-legal th { color: var(–vy-forest); background: var(–vy-sage-light); font-size: .7rem; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; } .vy-legal tr:last-child td { border-bottom: 0; } .vy-legal__footer { position: relative; padding: 86px 0; color: var(–vy-white); background: var(–vy-forest-deep); overflow: hidden; } .vy-legal__footer-grid { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 36px; align-items: center; } .vy-legal__footer h2 { max-width: 760px; margin: 0; color: var(–vy-white); font-family: Georgia, “Times New Roman”, serif; font-size: clamp(2.5rem, 5vw, 5rem); font-weight: 500; letter-spacing: -.045em; line-height: 1; } .vy-legal__footer p { max-width: 690px; margin: 20px 0 0; color: rgba(255,255,255,.7); } .vy-legal__footer-links { display: grid; gap: 10px; min-width: 220px; } .vy-legal__button { display: inline-flex; align-items: center; justify-content: center; min-height: 51px; padding: 0 21px; border: 1px solid rgba(255,255,255,.27); border-radius: 999px; color: var(–vy-white) !important; font-size: .88rem; font-weight: 850; text-decoration: none !important; transition: transform 180ms ease, background 180ms ease; } .vy-legal__button:hover, .vy-legal__button:focus-visible { transform: translateY(-2px); background: rgba(255,255,255,.1); } .vy-legal__button–light { color: var(–vy-forest-deep) !important; border-color: var(–vy-white); background: var(–vy-white); } .vy-legal__footer-art { position: absolute; right: -170px; bottom: -260px; width: 610px; opacity: .09; } .vy-legal__fine-print { margin: 22px 0 0; color: var(–vy-ink-soft); font-size: .78rem; text-align: center; } @media (max-width: 960px) { .vy-legal__hero { grid-template-columns: 1fr; } .vy-legal__meta { grid-template-columns: repeat(3, minmax(0, 1fr)); } .vy-legal__layout { grid-template-columns: 1fr; } .vy-legal__toc { position: static; max-height: none; } .vy-legal__toc ol { grid-template-columns: repeat(2, minmax(0, 1fr)); } .vy-legal__summary-grid { grid-template-columns: 1fr; } .vy-legal__summary-item { min-height: 0; } .vy-legal__footer-grid { grid-template-columns: 1fr; } .vy-legal__footer-links { display: flex; flex-wrap: wrap; min-width: 0; } } @media (max-width: 680px) { .vy-legal__shell { width: min(100% – 28px, 1180px); } .vy-legal__hero { padding: 70px 0 52px; } .vy-legal__hero h1 { font-size: clamp(3.2rem, 16vw, 5rem); } .vy-legal__meta { grid-template-columns: 1fr; } .vy-legal__summary { padding: 22px 18px; border-radius: 22px; } .vy-legal__layout { padding-bottom: 76px; } .vy-legal__toc { padding: 18px; border-radius: 20px; } .vy-legal__toc ol { grid-template-columns: 1fr; } .vy-legal__card { padding: 25px 20px; border-radius: 22px; } .vy-legal__card h2 { display: grid; gap: 8px; } .vy-legal__footer { padding: 72px 0; } .vy-legal__footer-links { display: grid; width: 100%; } .vy-legal__button { width: 100%; } } @media (prefers-reduced-motion: reduce) { .vy-legal *, .vy-legal *::before, .vy-legal *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; } }