/* Azul Botanico v1: all component rules are scoped to its versioned renderer. */
.site-template--botanical-v1 {
  --botanical-line: color-mix(in srgb, var(--site-secondary) 52%, transparent);
  --editorial-content: 66rem;
  --editorial-ink-soft: var(--site-text);
  color: var(--site-text);
  background: var(--site-background);
  font-size: .9375rem;
}

.site-template--botanical-v1 a { color: var(--site-primary); }
.site-template--botanical-v1 :focus-visible { outline: 2px solid var(--site-primary); outline-offset: 5px; }
.site-template--botanical-v1 #site-content:focus { outline: none; }
.site-template--botanical-v1 .botanical-header {
  position: relative;
  z-index: 10;
  display: flex;
  min-height: 5rem;
  padding: 1rem clamp(1.25rem, 4vw, 4rem);
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  border-bottom: 1px solid var(--botanical-line);
  background: var(--site-surface);
}
.site-template--botanical-v1 .botanical-wordmark {
  flex-shrink: 0;
  font: 400 1.45rem/1 var(--site-heading-font);
  text-decoration: none;
}
.site-template--botanical-v1 .botanical-wordmark span { margin-left: .4rem; font-size: 1rem; }
.site-template--botanical-v1 .botanical-navigation ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: .75rem 1.6rem;
  padding: 0;
  margin: 0;
  list-style: none;
}
.site-template--botanical-v1 .botanical-navigation a {
  display: inline-block;
  padding: .6rem 0;
  font-size: .65rem;
  font-weight: 600;
  letter-spacing: .1em;
  text-transform: uppercase;
  text-decoration: none;
  border-bottom: 1px solid transparent;
}
.site-template--botanical-v1 .botanical-navigation a:hover { border-color: currentcolor; }
.site-template--botanical-v1 .botanical-navigation--mobile { display: none; }

.site-template--botanical-v1 .botanical-section {
  display: block;
  min-height: 0;
  padding: clamp(4rem, 8vw, 7rem) clamp(1.5rem, 5vw, 4rem);
  background: var(--site-background);
  text-align: center;
  overflow-wrap: anywhere;
}
.site-template--botanical-v1 .botanical-section--hero {
  isolation: isolate;
  display: grid;
  min-height: min(53rem, calc(100svh - 5rem));
  padding: clamp(3rem, 6vw, 5rem) 2rem;
  align-content: center;
  background: var(--site-background);
}
.site-template--botanical-v1 .botanical-section--hero::before,
.site-template--botanical-v1 .botanical-section--hero::after {
  position: absolute;
  z-index: -1;
  width: clamp(16rem, 33vw, 34rem);
  aspect-ratio: 1;
  background: url("botanical/blue-floral-corner-v1.8a0b9e6aba21.png") top left / contain no-repeat;
  content: "";
  pointer-events: none;
}
.site-template--botanical-v1 .botanical-section--hero::before { top: 0; left: 0; }
.site-template--botanical-v1 .botanical-section--hero::after { right: 0; bottom: 0; transform: rotate(180deg); }
.site-template--botanical-v1 .botanical-invitation {
  width: min(56rem, 100%);
  margin: auto;
  padding: 1.75rem 1rem 2rem;
}
.site-template--botanical-v1 .botanical-invitation::before {
  position: absolute;
  z-index: -2;
  inset: 1.3rem;
  border: 1px solid var(--botanical-line);
  outline: 1px solid var(--botanical-line);
  outline-offset: .35rem;
  content: "";
  pointer-events: none;
}
.site-template--botanical-v1 .botanical-eyebrow {
  margin: 0 0 1.75rem;
  color: var(--site-primary);
  font-size: .65rem;
  font-weight: 600;
  letter-spacing: .24em;
  line-height: 1.7;
  text-transform: uppercase;
}
.site-template--botanical-v1 .botanical-monogram {
  display: block;
  width: clamp(7.5rem, 12vw, 11rem);
  height: clamp(7.5rem, 12vw, 11rem);
  margin: 0 auto 1.25rem;
  object-fit: contain;
  mix-blend-mode: multiply;
}
.site-template--botanical-v1 .botanical-heart { display: block; margin: 0 auto 1.5rem; color: var(--site-primary); font-size: 4rem; }
.site-preview .site-template--botanical-v1 h1,
.site-preview .site-template--botanical-v1 .botanical-section--hero h2 {
  margin: 0;
  color: var(--site-primary);
  font: 400 clamp(3rem, 6.2vw, 6rem)/1.08 var(--site-heading-font);
  letter-spacing: .025em;
  text-wrap: balance;
}
.site-template--botanical-v1 .botanical-divider {
  display: flex;
  width: min(16rem, 65%);
  margin: 1.75rem auto;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  color: var(--site-primary);
}
.site-template--botanical-v1 .botanical-divider::before,
.site-template--botanical-v1 .botanical-divider::after { flex: 1; height: 1px; background: var(--botanical-line); content: ""; }
.site-template--botanical-v1 .botanical-divider span { font-size: 1.2rem; line-height: 1; }
.site-template--botanical-v1 .botanical-date {
  margin: 0;
  color: var(--site-primary);
  font: 400 clamp(1.15rem, 2.5vw, 1.65rem)/1.4 var(--site-heading-font);
  letter-spacing: .18em;
  text-transform: uppercase;
}
.site-template--botanical-v1 .botanical-subtitle { max-width: 33rem; margin: .7rem auto 0; font-size: .85rem; letter-spacing: .06em; text-wrap: balance; }
.site-template--botanical-v1 .botanical-welcome { margin: 1.7rem 0 0; color: var(--site-primary); font: italic 400 1.55rem/1.3 var(--site-heading-font); }

.site-template--botanical-v1 .botanical-section__inner { width: min(66rem, 100%); margin-inline: auto; }
.site-template--botanical-v1 .botanical-copy { max-width: 46rem; margin-inline: auto; }
.site-template--botanical-v1 .botanical-section--has-media .botanical-section__inner { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); align-items: center; gap: clamp(2rem, 6vw, 5rem); text-align: left; }
.site-template--botanical-v1 .botanical-section--has-media:not(.botanical-section--hero) .botanical-divider { margin-left: 0; }
.site-template--botanical-v1 .botanical-photo { padding: .65rem; border: 1px solid var(--botanical-line); }
.site-template--botanical-v1 .botanical-photo .site-media { border-radius: 0; }
.site-preview .site-template--botanical-v1 h2 { margin: 0 0 1.5rem; color: var(--site-primary); font: 400 clamp(2.5rem, 4.5vw, 4rem)/1.1 var(--site-heading-font); text-wrap: balance; }
.site-template--botanical-v1 .site-body-copy,
.site-template--botanical-v1 .site-notes { color: var(--site-text); font-size: .93rem; line-height: 1.95 !important; }
.site-template--botanical-v1 .site-rich-copy p { margin: 0 0 1.35rem; line-height: 1.95; }
.site-template--botanical-v1 .site-rich-copy p:last-child { margin-bottom: 0; }
.site-template--botanical-v1 .site-rich-copy ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin: 2.5rem 0 0; padding: 0; list-style: none; text-align: left; }
.site-template--botanical-v1 .site-rich-copy ul li { padding: 1.5rem; border: 1px solid var(--botanical-line); background: var(--site-surface); font-size: .8rem; }
.site-template--botanical-v1 .site-rich-copy ul strong { display: block; margin-bottom: .5rem; color: var(--site-primary); font-size: .8rem; font-weight: 600; }
.site-template--botanical-v1 .site-rich-copy strong { font-weight: 600; }

.site-template--botanical-v1 .site-guest-icons { position: absolute; width: 0; height: 0; overflow: hidden; }
.site-template--botanical-v1 .botanical-copy:has(.site-guest-tip) { max-width: 62rem; }
.site-template--botanical-v1 .site-rich-copy ul li.site-guest-tip {
  display: grid;
  grid-template-columns: 3.75rem minmax(0, 1fr);
  align-items: start;
  gap: 1.25rem;
  padding: 1.75rem 1.5rem;
}
.site-template--botanical-v1 .site-guest-tip__icon {
  display: block;
  width: 3.75rem;
  height: 3.75rem;
  margin-top: .15rem;
  color: var(--site-primary);
  fill: none;
  stroke: currentcolor;
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.site-template--botanical-v1 .site-guest-tip__copy { min-width: 0; }

.site-template--botanical-v1 .botanical-section--countdown { padding-block: 3.75rem; border-block: 1px solid var(--botanical-line); background: var(--site-surface); }
.site-preview .site-template--botanical-v1 .site-countdown__title { margin-bottom: 1.75rem; font-size: clamp(1.8rem, 3vw, 2.4rem); letter-spacing: 0; }
.site-template--botanical-v1 .site-countdown__units { max-width: 34rem; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; }
.site-template--botanical-v1 .site-countdown__unit + .site-countdown__unit { border-left: 1px solid var(--botanical-line); }
.site-template--botanical-v1 .site-countdown__unit strong { min-height: 4.5rem; background: transparent; color: var(--site-primary); font: 400 clamp(2.75rem, 5vw, 4.25rem)/1 var(--site-heading-font); box-shadow: none; }
.site-template--botanical-v1 .site-countdown__unit strong::after { display: none; }
.site-template--botanical-v1 .site-countdown__unit span { margin-top: .3rem; color: var(--site-text); font-size: .6rem; font-weight: 400; letter-spacing: .16em; }
.site-template--botanical-v1 .botanical-section--details { background: color-mix(in srgb, var(--site-secondary) 12%, var(--site-background)); }
.site-template--botanical-v1 .site-details { margin: 2.5rem 0; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem 2rem; }
.site-template--botanical-v1 .site-details div { padding-block: 1.2rem; border-top: 1px solid var(--botanical-line); }
.site-template--botanical-v1 .site-details dt { font-size: .65rem; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; }
.site-template--botanical-v1 .site-details dd { margin: .65rem 0 0; color: var(--site-primary); font: 400 1.5rem/1.35 var(--site-heading-font); }
.site-template--botanical-v1 .site-location-card { box-shadow: none; text-align: left; }
.site-template--botanical-v1 .botanical-section--quote { background: var(--site-primary); }
.site-template--botanical-v1 .site-quote-mark,
.site-template--botanical-v1 .site-attribution,
.site-template--botanical-v1 blockquote { color: var(--site-surface); }
.site-template--botanical-v1 .botanical-section--gifts { border-block: 1px solid var(--botanical-line); background: var(--site-surface); }
.site-template--botanical-v1 .site-kicker { color: var(--site-text); font-size: .65rem; font-weight: 400; letter-spacing: .2em; }
.site-template--botanical-v1 .site-gifts-link { min-height: 3.25rem; margin-top: 1.75rem; padding-inline: 2rem; border-radius: 0; background: var(--site-primary); color: var(--site-surface); font-size: .7rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }
.site-template--botanical-v1 .site-page-modules { margin-top: 3rem; text-align: left; }
.site-template--botanical-v1 .site-page-module__media .site-media { box-shadow: none; }
.site-template--botanical-v1 .botanical-footer { padding: 3rem 1.5rem 3.5rem; text-align: center; }
.site-template--botanical-v1 .botanical-footer p { margin: 0 0 1.5rem; color: var(--site-primary); font: italic 400 2rem/1.3 var(--site-heading-font); }
.site-template--botanical-v1 .botanical-footer a { font-size: .6rem; letter-spacing: .15em; text-decoration: none; text-transform: uppercase; }

@media (max-width: 64rem) {
  .site-template--botanical-v1 .botanical-navigation--desktop { display: none; }
  .site-template--botanical-v1 .botanical-navigation--mobile { position: relative; display: block; }
  .site-template--botanical-v1 .botanical-navigation--mobile summary { padding: .7rem 0 .7rem .7rem; color: var(--site-primary); font-size: .75rem; cursor: pointer; list-style: none; }
  .site-template--botanical-v1 .botanical-navigation--mobile summary::-webkit-details-marker { display: none; }
  .site-template--botanical-v1 .botanical-navigation--mobile summary span { margin-left: .5rem; }
  .site-template--botanical-v1 .botanical-navigation--mobile nav { position: absolute; top: calc(100% + 1rem); right: 0; width: min(20rem, calc(100vw - 3rem)); padding: 1rem 1.5rem; border: 1px solid var(--botanical-line); background: var(--site-surface); box-shadow: 0 1rem 2rem #10355318; }
  .site-template--botanical-v1 .botanical-navigation--mobile ul { display: block; }
  .site-template--botanical-v1 .botanical-navigation--mobile a { display: block; padding-block: .9rem; }
}
@media (max-width: 44rem) {
  .site-template--botanical-v1 .botanical-header { min-height: 4.25rem; padding-block: .65rem; }
  .site-template--botanical-v1 .botanical-section { padding: 3.5rem 1.5rem; }
  .site-template--botanical-v1 .botanical-section--hero { min-height: 42rem; padding: 7rem 1.75rem 6rem; }
  .site-template--botanical-v1 .botanical-section--hero::before,
  .site-template--botanical-v1 .botanical-section--hero::after { width: 13rem; }
  .site-template--botanical-v1 .botanical-invitation { padding: 0; }
  .site-template--botanical-v1 .botanical-invitation::before { inset: .75rem; outline-offset: .25rem; }
  .site-template--botanical-v1 .botanical-eyebrow { font-size: .55rem; letter-spacing: .15em; }
  .site-template--botanical-v1 .botanical-monogram { width: 7rem; height: 7rem; }
  .site-preview .site-template--botanical-v1 h1,
  .site-preview .site-template--botanical-v1 .botanical-section--hero h2 { font-size: clamp(2.8rem, 10vw, 4.4rem); }
  .site-template--botanical-v1 .botanical-subtitle { max-width: 17rem; font-size: .75rem; }
  .site-template--botanical-v1 .botanical-welcome { max-width: 15rem; margin-inline: auto; font-size: 1.4rem; }
  .site-template--botanical-v1 .botanical-section--has-media .botanical-section__inner { grid-template-columns: minmax(0, 1fr); text-align: center; }
  .site-template--botanical-v1 .botanical-section--has-media .botanical-divider { margin-inline: auto; }
  .site-template--botanical-v1 .site-rich-copy ul { grid-template-columns: minmax(0, 1fr); }
  .site-template--botanical-v1 .site-rich-copy ul li.site-guest-tip { grid-template-columns: 3rem minmax(0, 1fr); gap: 1rem; padding: 1.4rem 1.1rem; }
  .site-template--botanical-v1 .site-guest-tip__icon { width: 3rem; height: 3rem; }
  .site-template--botanical-v1 .site-details { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .site-template--botanical-v1 .site-countdown__unit strong { min-height: 3.5rem; }
  .site-template--botanical-v1 .site-countdown__unit span { font-size: .5rem; letter-spacing: .08em; }
}
