@charset "UTF-8";
/* ZARI — shared styles (header, footer, base, text reveals)
   Extracted verbatim from the approved pages. */
@import url("https://fonts.googleapis.com/css2?family=Italiana&family=Cormorant+Garamond:ital,wght@0,400;0,500;1,400;1,500&family=Jost:wght@300;400&display=swap");
.zari-v2 *, .zari-v2 *::before, .zari-v2 *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

.zari-v2 a {
  color: inherit;
  text-decoration: none;
}

.zari-v2 .v-italic {
  font-family: var(--accent);
  font-style: italic;
  font-weight: 500;
}

.zari-v2 .v-label {
  font-family: var(--label);
  font-weight: 400;
  font-size: calc(11 * var(--px));
  letter-spacing: 0.3em;
  text-transform: uppercase;
  color: var(--brass);
}

.zari-v2 .v-logo {
  display: inline-flex;
  width: calc(142 * var(--px));
  height: auto;
  align-items: center;
}

.zari-v2 .v-nav a:hover {
  color: var(--ivory);
}

.zari-v2 .v-footer .v-logo {
  display: block;
  margin-bottom: calc(20 * var(--px));
}

.zari-v2 .v-footer-tag {
  font-family: var(--accent);
  font-style: italic;
  font-size: calc(26 * var(--px));
  color: var(--brass);
  max-width: 24em;
}

.zari-v2 .v-footer h4 {
  font-family: var(--label);
  font-weight: 400;
  font-size: calc(11 * var(--px));
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--brass);
  margin-bottom: calc(26 * var(--px));
}

.zari-v2 .v-footer ul {
  list-style: none;
}

.zari-v2 .v-footer li {
  margin-bottom: calc(16 * var(--px));
}

.zari-v2 .v-footer li a, .zari-v2 .v-footer li span {
  font-size: calc(14 * var(--px));
  color: var(--mist);
  transition: color 0.3s ease;
}

.zari-v2 .v-footer li a:hover {
  color: var(--ivory);
}

.zari-v2 .v-footer-base {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: calc(20 * var(--px));
  flex-wrap: wrap;
  padding-top: calc(34 * var(--px));
  border-top: calc(1 * var(--px)) solid rgba(242, 238, 230, 0.1);
  font-size: calc(12.5 * var(--px));
  color: rgba(242, 238, 230, 0.4);
}

.zari-v2 .v-footer-base a {
  color: var(--mist);
}

.zari-v2 .v-footer-base a:hover {
  color: var(--ivory);
}

/* Premium text reveals */
.zari-v2 .z-premium-text {
  overflow-wrap: break-word;
}

.zari-v2 .z-text-mask {
  display: block;
  overflow: hidden;
  padding-bottom: 0.05em;
  margin-bottom: -0.05em;
}

.zari-v2 .z-text-line {
  display: block;
  will-change: transform, opacity;
}

.zari-v2 .v-label .z-text-mask,
.zari-v2 .v-link .z-text-mask,
.zari-v2 .v-footer li a .z-text-mask,
.zari-v2 .v-footer li span .z-text-mask {
  display: inline-block;
}

.zari-v2 .b-day-item .z-text-mask,
.zari-v2 .b-facts-grid .z-text-mask,
.zari-v2 .h-exp .z-text-mask,
.zari-v2 .lf-moment .z-text-mask,
.zari-v2 .r-imgchip .z-text-mask {
  display: inline;
  overflow: visible;
  padding-bottom: 0;
  margin-bottom: 0;
}

.zari-v2 .b-day-item .z-text-line,
.zari-v2 .b-facts-grid .z-text-line,
.zari-v2 .h-exp .z-text-line,
.zari-v2 .lf-moment .z-text-line,
.zari-v2 .r-imgchip .z-text-line {
  display: inline;
}

/* Footer base must remain visible; it is structural, not scroll-reveal text. */
.zari-v2 .v-footer-base,
.zari-v2 .v-footer-base span,
.zari-v2 .v-footer-base a {
  opacity: 1 !important;
  visibility: visible !important;
}

.zari-v2 .v-footer-base .z-text-mask,
.zari-v2 .v-footer-base .z-text-line {
  display: inline !important;
  overflow: visible !important;
  transform: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.zari-v2 .v-close h2 .v-italic {
  white-space: nowrap;
}

.zari-v2 .v-close h2 .v-italic {
  font-family: var(--accent);
  font-style: italic;
  font-weight: 500;
  white-space: nowrap;
}

.zari-v2 .v-close .v-cta {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  margin: 0 auto !important;
  align-self: center !important;
}

.zari-v2 .v-close h2 .v-text-mask,
.zari-v2 .v-close h2 .z-text-mask {
  display: inline-block !important;
  vertical-align: baseline;
}

.zari-v2 .v-close h2 .v-text-mask + .v-text-mask,
.zari-v2 .v-close h2 .z-text-mask + .z-text-mask {
  margin-left: 0.18em;
}

.zari-v2 .v-close h2 .v-text-line,
.zari-v2 .v-close h2 .z-text-line {
  display: inline-block !important;
}
