.wedding-section {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  gap: 0;
  padding: clamp(36px, 5vw, 60px) 20px 44px;
}
.wedding-section::before,
.wedding-section::after {
  content: "";
  position: absolute;
  z-index: -1;
  pointer-events: none;
}
.wedding-section::before {
  top: 56%;
  left: clamp(6px, 3vw, 44px);
  width: 68px;
  height: 92px;
  background: url("../images/branch.svg") center / contain no-repeat;
  opacity: .24;
  transform: rotate(-20deg);
}
.wedding-section::after {
  top: 70%;
  right: clamp(6px, 3vw, 44px);
  width: 94px;
  height: 40px;
  background: url("../images/autumn-leaves.svg") center / contain no-repeat;
  opacity: .3;
  transform: rotate(8deg);
}
.monastery-heading { max-width: 680px; margin: 0 auto 24px; }
.monastery-heading h2 { margin: 11px 0 5px; text-wrap: balance; }
.monastery-location { margin: 0; color: var(--color-muted); font-style: italic; font-size: 19px; }
.monastery-photo { width: min(100%, 1100px); margin: 0 auto; background: transparent; }
.monastery-photo img { display: block; width: 100%; height: auto; object-fit: contain; mix-blend-mode: multiply; }
.countdown-heading { margin-top: 48px; }
.countdown-heading h2 { margin: 18px 0 0; }
.wedding-date { margin: 24px 0 0; color: #826a54; font-size: clamp(14px, 2.5vw, 18px); line-height: 1.7; }
.wedding-date span { padding: 0 5px; }
.wedding-section .countdown { margin-top: 36px; }
.wedding-section .countdown-unit { gap: 8px; padding: 0 6px; }
.wedding-section .countdown-message { margin: 20px 0 0; }
@media (max-width: 600px) {
  .wedding-section { padding: 34px 16px 40px; }
  .wedding-section::before { top: 54%; left: 2px; width: 42px; height: 58px; opacity: .2; }
  .wedding-section::after { top: 72%; right: 2px; width: 58px; height: 25px; opacity: .24; }
  .monastery-heading { margin-bottom: 20px; }
  .monastery-heading h2 { margin-top: 9px; }
  .monastery-location { font-size: 17px; }
  .monastery-photo { width: calc(100% + 16px); margin-left: -8px; }
  .countdown-heading { margin-top: 40px; }
  .countdown-heading h2 { margin-top: 16px; }
  .wedding-date { margin-top: 20px; }
  .wedding-section .countdown { margin-top: 30px; }
}

/* Visible directions beneath the watercolor monastery illustration. */
.monastery-maps { margin: 10px 0 0; text-align: center; }
.monastery-maps a { display: inline-flex; align-items: center; gap: 8px; padding: 10px 20px; border: 1px solid #97735a55; border-radius: 999px; background: transparent; color: var(--color-ink); text-decoration: none; font: 400 14px/1.5 Georgia, 'Times New Roman', serif; box-shadow: none; transition: border-color .2s; }
.monastery-maps a:hover, .monastery-maps a:focus-visible { background: transparent; border-color: #97735aaa; color: var(--color-ink); }
.monastery-maps + .countdown-heading { margin-top: 35px; }
@media (max-width: 600px) { .monastery-maps { margin-top: 8px; } .monastery-maps + .countdown-heading { margin-top: 30px; } }
