/* =============================================
   RESPONSIVE — Tablet & Desktop Breakpoints
   ============================================= */

/* ===== TABLET (600px+) ===== */
@media (min-width: 600px) {
  .envelope {
    width: 360px;
    height: 260px;
  }

  .envelope-flap-wrapper {
    height: 120px;
  }

  .envelope-text {
    height: 100px;
  }

  .envelope-names {
    font-size: 2.2rem;
  }

  .envelope-card {
    width: 300px;
    height: 180px;
  }

  .hero-names {
    font-size: 5rem;
  }

  .hero-ampersand {
    font-size: 3rem;
  }

  .section {
    padding: 100px 40px;
  }

  .section-title {
    font-size: 2.8rem;
  }

  .rsvp-form {
    max-width: 460px;
  }

  .dresscode-colors {
    gap: 18px;
  }

  .color-swatch {
    width: 44px;
    height: 44px;
  }

  .section-split .section-image {
    height: 380px;
  }

  .section.section-ceremony .section-split {
    gap: 0px;
  }

  .menu-frame {
    padding: 48px 36px;
  }

  .detail-row {
    flex-direction: row;
    gap: 20px;
  }

  .detail-card {
    flex: 1;
  }
}

/* ===== DESKTOP (900px+) ===== */
@media (min-width: 900px) {
  .envelope {
    width: 420px;
    height: 300px;
  }

  .envelope-flap-wrapper {
    height: 140px;
  }

  .wax-seal {
    width: 72px;
    height: 72px;
  }

  .wax-seal::before {
    width: 84px;
    height: 84px;
  }

  .wax-seal-pulse {
    width: 72px;
    height: 72px;
  }

  .envelope-card {
    width: 350px;
    height: 200px;
  }

  .envelope-card-names {
    font-size: 2rem;
  }

  .hero-names {
    font-size: 6rem;
  }

  .hero-ampersand {
    font-size: 3.5rem;
  }

  .hero-date {
    font-size: 1.3rem;
    letter-spacing: 7px;
  }

  .section {
    padding: 120px 60px;
  }

  .section-inner {
    max-width: 960px;
  }

  .section-title {
    font-size: 3.2rem;
  }

  .section-text {
    font-size: 0.95rem;
    max-width: 560px;
  }

  /* Split layout — side by side */
  .section-split {
    flex-direction: row;
    gap: 48px;
    align-items: center;
  }

  .section.section-ceremony .section-split {
    gap: 0px;
  }

  .section-split .section-image {
    flex: 1;
    min-width: 0;
    height: 420px;
    margin-bottom: 0;
  }

  .section-split .primirea-photos {
    flex: 1.4;
    height: auto;
  }

  .section-split .section-content {
    flex: 1;
    min-width: 0;
    text-align: left;
  }

  .section-split .section-content .section-label,
  .section-split .section-content .section-title {
    text-align: left;
  }

  .section-split .section-content .section-text {
    margin: 0;
  }

  .section-split .section-content .section-line {
    margin-left: 0;
  }

  .section-split .section-content .floral-divider {
    justify-content: flex-start;
  }

  .section-split .section-content .ceremony-icon,
  .section-split .section-content .menu-icon {
    margin-left: 0;
  }

  .section-split .section-content .detail-card {
    text-align: left;
  }

  .section-split .section-content .detail-card-icon {
    margin-left: 0;
  }

  /* Reverse for alternating layout */
  .section-split.split-reverse {
    flex-direction: row-reverse;
  }

  .section-split.split-reverse .section-content {
    text-align: right;
  }

  .section-split.split-reverse .section-content .section-label,
  .section-split.split-reverse .section-content .section-title {
    text-align: right;
  }

  .section-split.split-reverse .section-content .section-text {
    margin-left: auto;
  }

  .section-split.split-reverse .section-content .section-line {
    margin-left: auto;
    margin-right: 0;
  }

  .section-split.split-reverse .section-content .floral-divider {
    justify-content: flex-end;
  }

  .section-split.split-reverse .section-content .ceremony-icon,
  .section-split.split-reverse .section-content .menu-icon {
    margin-left: auto;
    margin-right: 0;
  }

  .section-split.split-reverse .section-content .detail-card {
    text-align: right;
  }

  .section-split.split-reverse .section-content .detail-card-icon {
    margin-left: auto;
    margin-right: 0;
  }

  .menu-frame {
    padding: 56px 48px;
    max-width: 650px;
  }

  .rsvp-form {
    max-width: 500px;
  }

  .footer {
    padding: 60px 40px;
  }

  /* Botanical sizes on desktop */
  .botanical-top-right { width: 200px; height: 200px; }
  .botanical-top-left  { width: 180px; height: 180px; }
  .botanical-bottom-right { width: 190px; height: 190px; }
  .botanical-bottom-left  { width: 170px; height: 170px; }
}

/* ===== LARGE DESKTOP (1200px+) ===== */
@media (min-width: 1200px) {
  .hero-names {
    font-size: 7rem;
  }

  .section-inner {
    max-width: 1060px;
  }

  .section-split {
    gap: 64px;
  }

  .section.section-ceremony .section-split {
    gap: 0px;
  }

  .section-split .section-image {
    height: 480px;
    border-radius: 8px;
  }

  .menu-frame {
    max-width: 700px;
    padding: 64px 56px;
  }

  .botanical-top-right { width: 240px; height: 240px; }
  .botanical-top-left  { width: 220px; height: 220px; }
  .botanical-bottom-right { width: 230px; height: 230px; }
  .botanical-bottom-left  { width: 200px; height: 200px; }
}
