/* Veskis / an editorial wedding experience. */
.vp-shell {
  --vk-green: #302b26;
  --vk-green-deep: #24211e;
  --vk-green-mid: #453d35;
  --vk-cream: #f6f3ed;
  --vk-paper: #fffcf7;
  --vk-text: #302b26;
  --vk-soft: #756655;
  --vk-muted: #756655;
  --vk-line: #ded8ce;
  --vl-page-pad: clamp(24px, 5.5vw, 96px);
  background: #f6f3ed;
  color: #302b26;
}
.vp-shell.vk-home { background: #f6f3ed !important; color: #302b26; }
.vp-shell :focus-visible { outline-color: #ae9474; }
.vp-nav { background: #f6f3ed; border-color: #ded8ce; }
.vp-nav__inner { max-width: 1800px; height: 100px; padding-inline: var(--vl-page-pad); }
.vp-wordmark { color: #302b26; font-size: 52px; font-weight: 400; letter-spacing: -3.5px; }
.vp-wordmark span { color: inherit; }
.vp-nav__links { gap: 38px; }
.vp-nav__links a, .vp-nav__quiet { color: #302b26; font-size: 12px; font-weight: 400; letter-spacing: .02em; }
.vp-nav__links a:hover, .vp-nav__quiet:hover { color: #9a7e5f; }
.vp-shell .vp-button {
  background: #24211e;
  border-color: #24211e;
  border-radius: 2px;
  color: #fffcf7;
  font-size: 13px;
  font-weight: 400;
  letter-spacing: .025em;
  min-height: 48px;
  padding: 15px 22px;
  transform: none;
}
.vp-shell .vp-button:hover { background: #4b4035; border-color: #4b4035; transform: none; }
.vp-shell .vp-button--outline { background: transparent; color: #302b26; border-color: #c9bfb1; }
.vp-shell .vp-button--outline:hover { background: #e9e2d8; }
.vp-text-link { color: #302b26; text-decoration-color: #c9bbae; font-weight: 400; }
.vl-home .vp-nav {
  position: fixed;
  inset: 0 0 auto;
  color: #fffcf7;
  background: transparent;
  border-bottom: 1px solid #fff5e52e;
  transition: background .35s, border-color .35s, color .35s;
}
.vl-home .vp-nav:not(.is-scrolled) :is(.vp-wordmark, .vp-nav__links a, .vp-nav__quiet, .vp-nav__toggle) { color: #fffcf7; }
.vl-home .vp-nav:not(.is-scrolled) .vp-button { background: transparent; color: #fffcf7; border-color: #fffcf780; }
.vl-home .vp-nav:not(.is-scrolled) .vp-button:hover { background: #fffcf7; color: #302b26; }
.vl-home .vp-nav.is-scrolled { background: #f6f3edf5; color: #302b26; border-color: #ded8ce; backdrop-filter: blur(14px); }
.vl-home .vp-nav.is-scrolled .vp-nav__inner { height: 80px; }
.vl-home .vp-flashes { position: absolute; inset: 115px var(--vl-page-pad) auto; z-index: 65; width: auto; max-width: 600px; margin: 0; padding: 0; }
.vp-shell .vk-flash--success, .vp-shell .vk-flash--info { background: #eee7dc; border-color: #cbbba5; color: #60513f; }
.vl-home .vh { color: #302b26; --green: #302b26; --deep: #24211e; --ink: #302b26; --line: #ded8ce; }
.vl-eyebrow { font: 400 10px/1.5 var(--ui-sans); text-transform: uppercase; letter-spacing: .2em; }
.vl-button {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 44px;
  min-height: 56px;
  padding: 18px 24px;
  background: #24211e;
  border: 1px solid #24211e;
  color: #fffcf7 !important;
  text-decoration: none;
  font: 400 13px/1.4 var(--ui-sans);
  letter-spacing: .025em;
  border-radius: 1px;
  transition: background .25s, border-color .25s;
}
.vl-button span { font-size: 18px; transition: transform .25s; }
.vl-button:hover { background: #4b4035; border-color: #4b4035; }
.vl-button:hover span { transform: translate(2px, -2px); }
.vl-button--ivory { background: #f6f3ed; color: #302b26 !important; border-color: #f6f3ed; }
.vl-button--ivory:hover { background: #e5d7c4; border-color: #e5d7c4; }
.vl-link { display: inline-flex; min-height: 44px; align-items: center; justify-content: space-between; gap: 32px; color: #302b26; text-decoration: none; font-size: 12px; border-bottom: 1px solid #c7b6a2; padding: 8px 0; }
.vl-link--light { color: #fffcf7 !important; border-color: #fff5e560; }
.vl-link span { font-size: 17px; transition: transform .25s; }
.vl-link:hover span { transform: translate(2px, -2px); }

/* The photograph carries the atmosphere; type remains real, selectable HTML. */
.vl-hero { position: relative; display: flex; align-items: center; height: 100svh; min-height: 760px; max-height: 1100px; background: #292720; color: #fffcf7; overflow: hidden; }
.vl-hero__image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.vl-hero__shade { position: absolute; inset: 0; background: linear-gradient(90deg, #100e0cc7 0%, #100e0c60 48%, #100e0c0a 100%); }
.vl-hero__content { position: relative; z-index: 1; width: 100%; max-width: 1800px; padding: 150px var(--vl-page-pad) 140px; margin: 0 auto; }
.vl-hero .vl-eyebrow { display: flex; align-items: center; gap: 15px; color: #eee2d1; }
.vl-hero .vl-eyebrow span { display: block; width: 32px; height: 1px; background: #c6ab87; }
.vl-hero h1 { font: 400 clamp(84px, 8.5vw, 150px)/.93 var(--ui-serif); letter-spacing: -.055em; margin: 32px 0 40px; max-width: 1250px; color: #fffcf7; }
.vl-hero h1 em { color: #e1c7a5; font-weight: 400; }
.vl-hero__lower { max-width: 870px; display: flex; align-items: flex-end; justify-content: space-between; gap: 50px; }
.vl-hero__lower > p { font-size: 14px; line-height: 1.85; color: #e0d8cb; font-weight: 300; max-width: 330px; padding-bottom: 4px; }
.vl-hero__actions { display: flex; flex-direction: column; align-items: flex-start; gap: 16px; }
.vl-hero__actions .vl-link { min-height: 35px; font-size: 11px; gap: 48px; }
.vl-hero__foot { position: absolute; bottom: 0; inset-inline: var(--vl-page-pad); z-index: 1; display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 30px; border-top: 1px solid #fff5e540; align-items: center; min-height: 88px; color: #e6ded1; font-size: 10px; letter-spacing: .03em; }
.vl-hero__foot > a { justify-self: center; display: flex; align-items: center; gap: 22px; color: inherit; text-decoration: none; min-height: 44px; }
.vl-hero__foot > a span { font-size: 20px; }
.vl-hero__edition { justify-self: end; }
.vl-hero__image { animation: vl-image-arrive 1.8s cubic-bezier(.2,.65,.3,1) both; }
.vl-hero__content .vl-eyebrow { animation: vl-type-arrive .9s .1s both; }
.vl-hero__content h1 { animation: vl-type-arrive 1.1s .2s both; }
.vl-hero__lower { animation: vl-type-arrive 1s .4s both; }
.vl-hero__foot { animation: vl-type-arrive 1s .6s both; }
@keyframes vl-image-arrive { from { transform: scale(1.035); opacity: .75; } to { transform: scale(1); opacity: 1; } }
@keyframes vl-type-arrive { from { transform: translateY(18px); opacity: 0; } to { transform: translateY(0); opacity: 1; } }

.vl-intro { display: grid; grid-template-columns: 1fr 3fr; gap: 7%; max-width: 1600px; margin: auto; padding: 150px var(--vl-page-pad) 130px; }
.vl-intro__aside { display: flex; flex-direction: column; justify-content: space-between; gap: 50px; padding: 8px 0; }
.vl-intro .vl-eyebrow { color: #756655; }
.vl-intro__index { font: italic 30px/1 var(--ui-serif); color: #b4a38e; }
.vl-intro h2 { font: 400 clamp(52px, 5.1vw, 84px)/1.05 var(--ui-serif); letter-spacing: -.04em; }
.vl-intro h2 em { color: #a18b72; }
.vl-intro__bottom { display: flex; align-items: flex-end; gap: 70px; justify-content: space-between; margin-top: 45px; }
.vl-intro__bottom p { font-size: 14px; line-height: 1.9; color: #756655; max-width: 410px; }
.vl-intro__bottom .vl-link { flex-shrink: 0; }

/* A tactile invitation demonstrates the product, rather than decorating it. */
.vl-invitation { display: grid; grid-template-columns: 1.06fr .94fr; max-width: 1800px; margin: 0 auto 150px; min-height: 670px; }
.vl-invitation__art { background: #d6cbbb; position: relative; display: flex; align-items: center; justify-content: center; overflow: hidden; padding: 70px 40px 90px; }
.vl-invitation__envelope { position: absolute; width: 340px; height: 440px; background: #b6a18b; transform: rotate(-12deg) translate(-32px, 12px); box-shadow: 10px 20px 35px #52413526; }
.vl-invitation__paper { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; width: 330px; min-height: 475px; padding: 40px 25px; background: #faf7f0; color: #4d4439; box-shadow: 12px 24px 45px #52413526; transform: rotate(5deg); border: 1px solid #e8dfd3; }
.vl-invitation__paper > p { font: 400 8px/1.5 var(--ui-sans); letter-spacing: .18em; text-transform: uppercase; }
.vl-invitation__monogram { font: italic 42px/1 var(--ui-serif); color: #b09b7e; margin: 42px 0 30px; }
.vl-invitation__paper h3 { font: 400 54px/.9 var(--ui-serif); letter-spacing: -.045em; display: flex; flex-direction: column; align-items: center; gap: 10px; }
.vl-invitation__paper h3 i { font: italic 25px/1 var(--ui-serif); color: #aa9275; }
.vl-invitation__date { font-size: 9px; letter-spacing: .2em; margin-top: 32px; }
.vl-invitation__rule { width: 30px; height: 1px; background: #bcaa91; margin: 20px 0; }
.vl-invitation__paper > em { font: italic 16px/1.5 var(--ui-serif); }
.vl-invitation__sample { font: 400 9px/1 var(--ui-sans); text-transform: uppercase; letter-spacing: .12em; color: #756655; margin-top: 30px; }
.vl-invitation__caption { position: absolute; bottom: 30px; left: 40px; font: italic 17px/1.2 var(--ui-serif); color: #7b6956; }
.vl-invitation__copy { padding: 70px clamp(32px, 5vw, 90px); display: flex; flex-direction: column; align-items: flex-start; justify-content: center; }
.vl-invitation__copy .vl-eyebrow { color: #756655; }
.vl-invitation h2 { font: 400 clamp(54px, 5vw, 80px)/1 var(--ui-serif); letter-spacing: -.045em; margin: 28px 0; }
.vl-invitation h2 em { color: #a18b72; }
.vl-invitation__copy > p:not(.vl-eyebrow) { max-width: 365px; color: #756655; font-size: 14px; line-height: 1.9; }
.vl-invitation__features { margin: 30px 0; width: 100%; max-width: 390px; }
.vl-invitation__features > div { display: flex; gap: 22px; font-size: 12px; padding: 17px 0; border-top: 1px solid #ded8ce; }
.vl-invitation__features span { color: #756655; font-size: 9px; }

/* The live illustrative planner is a precision object within the editorial page. */
.vl-home .vh-demo { padding-inline: var(--vl-page-pad); padding-bottom: 150px; max-width: 1800px; }
.vl-home .vh-section-head { margin-bottom: 50px; gap: 80px; }
.vl-home .vh-section-head h2 { font-size: clamp(50px, 5vw, 78px); line-height: 1.02; }
.vl-home .vh-section-head h2 em { color: #a18b72; }
.vl-home .vh-kicker { color: #756655; font-size: 9px; font-weight: 400; letter-spacing: .17em; }
.vl-home .vh-section-head > p { font-size: 13px; line-height: 1.9; color: #756655; flex-shrink: 0; }
.vl-home .vh-app { border-radius: 2px; border: 1px solid #d2c9bc; box-shadow: 0 30px 80px -40px #4a362626; }
.vl-home .vh-app__nav { background: #ece6dc; color: #302b26; border-right: 1px solid #d8cfc1; }
.vl-home .vh-app__brand { color: #302b26; font-size: 29px; }
.vl-home .vh-app__brand small { color: #756655; font-size: 10px; }
.vl-home .vh-app__tabs button { color: #7b7062; border-radius: 1px; min-height: 48px; }
.vl-home .vh-app__tabs button span { color: #756655; }
.vl-home .vh-app__tabs button:hover { background: #dcd2c4; }
.vl-home .vh-app__tabs button[aria-pressed=true] { background: #302b26; color: #fffaf0; }
.vl-home .vh-app__tabs button[aria-pressed=true] span { color: #c7b69f; }
.vl-home .vh-app__open { border-color: #d0c3b1; color: #6e6254 !important; }
.vl-home .vh-app__workspace { background: #fffcf7; }
.vl-home .vh-app__topline { color: #756655; border-color: #e4ddd2; }
.vl-home .vh-demo-label { background: transparent; border-color: #ded4c5; border-radius: 1px; color: #756655; }
.vl-home .vh-demo-stats strong { font-family: var(--ui-sans); font-size: 35px; letter-spacing: -.05em; font-weight: 300; }
.vl-home .vh-demo-stats { padding-block: 8px 30px; }
.vl-home .vh-demo-stats > div + div { border-color: #e1d8cb; }
.vl-home .vh-demo-table th { background: #f3eee6; color: #756655; font-size: 10px; }
.vl-home .vh-demo-table td { padding-block: 16px; border-color: #e9e1d5; }
.vl-home .vh-status { border-radius: 2px; font-size: 10px; padding: 5px 8px; }
.vl-home .vh-status--yes { background: #e7e8de; color: #66705b; }
.vl-home .vh-status--wait { background: #eee2cc; color: #8d6a38; }
.vl-home .vh-status--no { background: #eee0d9; color: #9b6d5e; }
.vl-home .vh-details { background: #eae4da; padding: 100px var(--vl-page-pad); gap: 12%; }
.vl-home .vh-details__heading h2 { font-size: clamp(56px, 5.2vw, 84px); }
.vl-home .vh-details__heading h2 em { color: #a18b72; }
.vl-home .vh-details__list article { border-color: #cfc3b2; padding-block: 35px; }
.vl-home .vh-details__list h3 { font-size: 35px; color: #302b26; }
.vl-home .vh-details__list p { color: #80715f; font-size: 13px; }
.vl-home :is(.vh-details__number,.vh-details__aside) { color: #a18b72; }
.vl-home .vh-how { max-width: 1500px; padding: 140px var(--vl-page-pad); }
.vl-home .vh-how h2 { font-size: clamp(56px, 5.2vw, 84px); }
.vl-home .vh-how h2 em { color: #a18b72; }
.vl-home .vh-steps li { border-color: #ded4c5; padding: 30px 0; }
.vl-home .vh-steps li > span { color: #aa9070; }
.vl-close { text-align: center; padding: 110px 24px 125px; border-top: 1px solid #ded8ce; background: #f1ece4; }
.vl-close .vl-eyebrow { color: #756655; }
.vl-close h2 { font: 400 clamp(65px, 6vw, 100px)/.98 var(--ui-serif); letter-spacing: -.045em; margin: 30px 0 45px; }
.vl-close h2 em { color: #a18b72; }
.vl-close__actions { display: flex; justify-content: center; align-items: center; gap: 40px; }
.vp-footer { background: #24211e; color: #c9c0b3; border: 0; padding: 70px var(--vl-page-pad) 25px; }
.vp-footer__main { grid-template-columns: 2fr 1fr 1fr; padding-bottom: 20px; max-width: 1600px; }
.vp-footer__brand .vp-wordmark { color: #f6f0e6; font-size: 44px; }
.vp-footer__brand p { font-size: 12px; color: #a69a89; line-height: 1.8; }
.vp-footer__links { font-size: 12px; gap: 12px; }
.vp-footer__links span { color: #948675; font-size: 9px; letter-spacing: .16em; margin-bottom: 16px; }
.vp-footer__links a { color: #c9c0b3; }
.vp-footer__signature { font: 400 clamp(120px, 25vw, 400px)/.8 var(--ui-serif); letter-spacing: -.075em; color: #e8e0d2; max-width: 1600px; margin: 60px auto 40px; overflow: hidden; padding-bottom: .07em; }
.vp-footer__signature span { color: #aa9070; }
.vp-footer__bottom { max-width: 1600px; border-color: #ffffff18; color: #887c6c; font-size: 10px; }

/* Forms and supporting pages belong to the same identity. */
.vp-shell .vh-auth { padding-block: 90px 120px; width: min(520px, calc(100% - 48px)); }
.vp-shell .vh-auth--wide { width: min(720px, calc(100% - 48px)); }
.vp-shell .vh-auth__card { background: transparent; padding: 0; border: 0; border-radius: 0; }
.vp-shell .vh-auth h1 { font-size: 68px; letter-spacing: -.045em; margin-bottom: 25px; }
.vp-shell .vh-auth .vh-lead { border-bottom: 1px solid #ded8ce; padding-bottom: 30px; margin-bottom: 34px !important; }
.vp-shell .vh-field { margin-bottom: 26px; }
.vp-shell .vh-field label { font-size: 11px; letter-spacing: .025em; color: #5e5346; margin-bottom: 10px; }
.vp-shell .vh-field :is(input,select) { background: #fbf8f2; border-color: #d6ccbe; border-radius: 1px; min-height: 52px; font-size: 15px; padding-inline: 16px; }
.vp-shell .vh-field :is(input,select):focus { border-color: #9f8667; outline: 1px solid #9f8667; outline-offset: 0; }
.vp-shell .vh-field__hint { color: #756655; font-size: 11px; }
.vp-shell .vh-btn { border-radius: 1px; background: #24211e; border-color: #24211e; min-height: 54px; font-size: 13px; font-weight: 400; }
.vp-shell .vh-btn:hover { background: #453d35; }
.vp-shell .vh-auth__note { color: #756655; font-size: 12px; margin-top: 30px !important; }
.vp-shell .vh-auth__note a { color: #675642; }
.vp-shell .vk-page-head { padding: 100px 24px 70px; }
.vp-shell .vk-h1 { font-size: clamp(62px,6vw,96px); font-weight: 400; letter-spacing: -.045em; }
.vp-shell .vk-h2 { font-size: clamp(44px,4vw,66px); font-weight: 400; }
.vp-shell .vk-eyebrow { font-size: 10px; font-weight: 400; letter-spacing: .17em; color: #9b8060; }
.vp-shell .vk-lead { color: #756655; font-size: 15px; line-height: 1.8; }
.vp-shell :is(.vk-btn,.vk-btn--solid,.vk-btn--bronze) { background: #302b26; border-color: #302b26; color: #fffaf0; border-radius: 1px; font-family: var(--ui-sans); text-transform: none; font-weight: 400; letter-spacing: .02em; box-shadow: none; }
.vp-shell .vk-btn--line { background: transparent; color: #302b26; border-color: #c7b7a2; }
.vp-shell .vk-plan { background: transparent; border: 0; border-left: 1px solid #d6ccbd; border-radius: 0; padding: 45px; box-shadow: none; }
.vp-shell .vk-plan:first-child { border-left: 0; }
.vp-shell .vk-plan--hot { background: #eee7dc; border: 0; }
.vp-shell .vk-plan__crest { display: none; }
.vp-shell .vk-plan::before, .vp-shell .vk-page-head .vk-eyebrow::after { content: none; display: none; }
.vp-shell .vk-plan__price strong { font-size: 76px; letter-spacing: -.06em; }
.vp-shell .vk-plan__price span { font-size: 28px; margin-left: 6px; }
.vp-shell .vk-plan ul { gap: 14px; }
.vp-shell .vk-plan li { font-size: 13px; line-height: 1.65; }
.vp-shell .vk-plan__tag { font-size: 13px; margin-top: 10px; }
.vp-shell .vk-plan__note { margin-block: 14px 28px; }
.vp-shell .vk-plan__badge { left: 45px; transform: none; }
.vp-shell .vk-plan__name { font-size: 42px; font-weight: 400; }
.vp-shell .vk-plan__price strong { font-weight: 400; color: #302b26; }
.vp-shell .vk-plan__badge { background: #302b26; color: #f6f0e6; border-radius: 1px; box-shadow: none; font: 400 9px var(--ui-sans); letter-spacing: .12em; }
.vp-shell .vk-feat { border-radius: 0; border: 0; border-top: 1px solid #d6ccbd; background: transparent; padding-block: 30px; }
.vp-shell .vk-feat__icon { background: transparent; border: 0; box-shadow: none; color: #a18b72; }
.vp-shell .vk-feat__title { color: #302b26; }

@media (max-width: 1100px) {
  .vp-nav__links { gap: 24px; }
  .vl-hero__lower { max-width: 780px; }
  .vl-hero h1 { font-size: 105px; }
  .vl-intro { grid-template-columns: .6fr 2fr; gap: 7%; }
  .vl-intro__bottom { gap: 30px; }
  .vl-invitation { min-height: 620px; }
  .vl-invitation__copy { padding-inline: 40px; }
  .vl-invitation__paper { width: 280px; min-height: 420px; }
  .vl-invitation__envelope { width: 280px; height: 390px; }
  .vl-invitation__monogram { margin: 25px 0; }
  .vl-home .vh-section-head { gap: 40px; }
  .vl-home .vh-section-head > p { max-width: 230px; flex-shrink: 1; }
}
@media (max-width: 860px) {
  .vp-nav__inner { height: 78px; }
  .vp-wordmark { font-size: 44px; }
  .vp-nav__links { background: #f6f3ed; border-color: #ded8ce; top: 78px; }
  .vl-home .vp-nav.is-scrolled .vp-nav__inner { height: 78px; }
  .vl-home .vp-nav .vp-nav__links a { color: #302b26; border-color: #ded8ce; }
  .vl-home .vp-nav:not(.is-scrolled) .vp-nav__links a { color: #302b26; }
  .vl-hero { min-height: 800px; max-height: 1050px; }
  .vl-hero h1 { font-size: clamp(72px,10.5vw,96px); }
  .vl-hero__content { padding-top: 155px; padding-bottom: 160px; }
  .vl-hero__lower { align-items: flex-start; gap: 35px; }
  .vl-hero__lower > p { font-size: 13px; max-width: 290px; }
  .vl-button { font-size: 12px; padding-inline: 20px; gap: 25px; }
  .vl-hero__foot { grid-template-columns: 1fr 1fr; }
  .vl-hero__foot > a { justify-self: end; }
  .vl-hero__edition { display: none; }
  .vl-intro { grid-template-columns: 1fr; padding-block: 100px; gap: 35px; }
  .vl-intro__aside { flex-direction: row; align-items: center; }
  .vl-intro__index { font-size: 23px; }
  .vl-intro h2 { font-size: 65px; }
  .vl-invitation { grid-template-columns: 1fr 1fr; margin-bottom: 100px; min-height: 540px; }
  .vl-invitation__art { padding: 50px 25px 80px; }
  .vl-invitation__paper { width: 240px; min-height: 390px; padding: 30px 15px; }
  .vl-invitation__paper h3 { font-size: 44px; }
  .vl-invitation__paper > p { font-size: 7px; }
  .vl-invitation__paper > em { font-size: 13px; }
  .vl-invitation__envelope { width: 240px; height: 350px; }
  .vl-invitation__copy { padding: 40px 30px; }
  .vl-invitation h2 { font-size: 53px; }
  .vl-invitation__copy > p:not(.vl-eyebrow) { font-size: 13px; }
  .vl-invitation__features { margin: 25px 0; }
  .vl-invitation__features > div { font-size: 11px; gap: 12px; line-height: 1.6; }
  .vl-home .vh-demo { padding-bottom: 100px; }
  .vl-home .vh-section-head h2 { font-size: 55px; }
  .vl-home .vh-app__nav { border-right: 0; border-bottom: 1px solid #d8cfc1; }
  .vl-home .vh-details { gap: 7%; padding-block: 80px; }
  .vl-home .vh-how { padding-block: 100px; }
}
@media (max-width: 640px) {
  .vp-shell { --vl-page-pad: 24px; }
  .vp-nav__inner { height: 74px; padding-inline: 24px; gap: 12px; }
  .vp-wordmark { font-size: 40px; }
  .vp-nav__actions { gap: 7px; }
  .vp-nav__actions .vp-button { font-size: 10px; min-height: 38px; padding: 10px 12px; letter-spacing: 0; }
  .vp-nav__toggle { width: 36px; height: 44px; }
  .vp-nav__links { top: 74px; }
  .vl-home .vp-nav.is-scrolled .vp-nav__inner { height: 74px; }
  .vl-hero { height: 100svh; min-height: 760px; max-height: 1000px; align-items: center; }
  .vl-hero__image { object-position: 65% center; }
  .vl-hero__shade { background: #15120fe0; opacity: .72; }
  .vl-hero__content { padding: 145px 24px 135px; }
  .vl-hero .vl-eyebrow { font-size: 8px; letter-spacing: .16em; gap: 10px; }
  .vl-hero .vl-eyebrow span { width: 20px; }
  .vl-hero h1 { font-size: clamp(59px, 13.8vw, 85px); line-height: .97; letter-spacing: -.05em; margin: 30px 0; }
  .vl-hero__lower { display: block; }
  .vl-hero__lower > p { font-size: 13px; line-height: 1.8; max-width: 285px; }
  .vl-hero__actions { margin-top: 27px; gap: 14px; }
  .vl-hero__actions .vl-button { min-height: 52px; font-size: 12px; padding: 16px 20px; gap: 60px; }
  .vl-hero__actions .vl-link { font-size: 11px; gap: 42px; }
  .vl-hero__foot { min-height: 70px; gap: 15px; font-size: 9px; }
  .vl-hero__foot > span { max-width: 140px; line-height: 1.7; }
  .vl-hero__foot a { gap: 14px; }
  .vl-intro { padding: 80px 24px; gap: 30px; }
  .vl-intro h2 { font-size: clamp(44px, 10vw, 62px); line-height: 1.05; }
  .vl-intro h2 br { display: none; }
  .vl-intro__bottom { display: block; margin-top: 28px; }
  .vl-intro__bottom p { font-size: 14px; }
  .vl-intro__bottom .vl-link { margin-top: 22px; }
  .vl-intro__aside .vl-eyebrow { font-size: 9px; }
  .vl-invitation { grid-template-columns: 1fr; margin-bottom: 50px; }
  .vl-invitation__art { min-height: 530px; padding: 60px 25px 80px; }
  .vl-invitation__paper { width: 280px; min-height: 410px; }
  .vl-invitation__envelope { width: 280px; height: 390px; }
  .vl-invitation__caption { left: 24px; bottom: 25px; font-size: 16px; }
  .vl-invitation__copy { padding: 60px 24px 30px; }
  .vl-invitation h2 { font-size: 65px; margin-block: 22px; }
  .vl-invitation__copy > p:not(.vl-eyebrow) { font-size: 14px; }
  .vl-invitation__features > div { font-size: 12px; padding: 18px 0; }
  .vl-home .vh-demo { padding: 30px 16px 80px; }
  .vl-home .vh-section-head { margin-bottom: 30px; padding-inline: 8px; }
  .vl-home .vh-section-head h2 { font-size: 47px; }
  .vl-home .vh-section-head > p { font-size: 13px; max-width: none; }
  .vl-home .vh-demo-stats strong { font-size: 29px; }
  .vl-home .vh-app__workspace { padding-inline: 18px; }
  .vl-home .vh-details { padding: 70px 24px; gap: 35px; }
  .vl-home .vh-details__heading h2 { font-size: 60px; }
  .vl-home .vh-details__list article { padding-block: 28px; }
  .vl-home .vh-details__list h3 { font-size: 32px; }
  .vl-home .vh-how { padding: 80px 24px; }
  .vl-home .vh-how h2 { font-size: 60px; }
  .vl-close { padding: 75px 24px 85px; }
  .vl-close h2 { font-size: 55px; }
  .vl-close__actions { flex-direction: column; gap: 20px; }
  .vl-close .vl-button { gap: 48px; }
  .vp-footer { padding-top: 50px; }
  .vp-footer__main { grid-template-columns: 1fr 1fr; gap: 35px; }
  .vp-footer__brand { grid-column: 1/-1; }
  .vp-footer__signature { font-size: 27vw; margin-block: 40px 25px; }
  .vp-footer__bottom { font-size: 9px; }
  .vp-shell .vh-auth { padding-block: 55px 80px; }
  .vp-shell .vh-auth h1 { font-size: 55px; }
  .vp-shell .vh-field :is(input,select) { font-size: 16px; }
  .vp-shell .vk-page-head { padding: 60px 24px 45px; }
  .vp-shell .vk-h1 { font-size: 60px; }
  .vp-shell .vk-plan { border: 0; border-top: 1px solid #d6ccbd; padding: 32px 24px; }
}
@media (prefers-reduced-motion: reduce) {
  .vl-hero__image, .vl-hero__content, .vp-nav, .vl-button span, .vl-link span { animation: none; transition: none; }
}

/* The introduction to planning is deliberately quiet and explorable. */
.vl-home .vh-how { border-top: 1px solid #ded8ce; }
.vl-home .vh-steps li { display: block; padding: 0; }
.vl-home .vh-steps details { width: 100%; }
.vl-home .vh-steps summary { display: grid; grid-template-columns: 24px minmax(0,1fr) 20px; gap: 24px; align-items: center; list-style: none; min-height: 96px; padding: 26px 0; cursor: pointer; }
.vl-home .vh-steps summary::-webkit-details-marker { display: none; }
.vl-home .vh-steps summary > span { color: #aa9070; font: italic 22px/1 var(--ui-serif); }
.vl-home .vh-steps h3 { font: 400 29px/1.15 var(--ui-serif); }
.vl-home .vh-steps summary b { position: relative; width: 14px; height: 14px; color: #a18b72; }
.vl-home .vh-steps summary b::before, .vl-home .vh-steps summary b::after { content: ''; position: absolute; top: 6px; left: 1px; width: 12px; height: 1px; background: currentColor; }
.vl-home .vh-steps summary b::after { transform: rotate(90deg); transition: transform .2s; }
.vl-home .vh-steps [open] summary b::after { transform: rotate(0); }
.vl-home .vh-steps details > p { padding: 0 35px 28px 48px; margin: 0; font-size: 13px; line-height: 1.9; color: #756655; }
@media(max-width:640px) { .vl-home .vh-steps summary { min-height: 90px; gap: 18px; }.vl-home .vh-steps h3 { font-size: 28px; }.vl-home .vh-steps details > p { padding-left: 42px; } }
