/* Phone layout: retain the selected fonts, colours and separate phone-size controls. */
@media (max-width:760px) {
  .invitation-details {--mobile-gutter:clamp(20px,6vw,28px)}
  .invitation-details .wi-wrap {padding-inline:var(--mobile-gutter)}
  .invitation-details > .wi-section-divider {width:calc(100% - 2 * var(--mobile-gutter))}
  .invitation-details section {scroll-margin-top:18px}
  .invitation-details [data-text-role="heading"] {text-wrap:balance;line-height:1.2!important}
  .invitation-details .wedding-nav {padding:10px 20px;min-height:66px;gap:18px}
  .invitation-details .wi-nav-rsvp {min-height:44px}
  .invitation-details .wi-nav-links {padding-inline:20px}

  .invitation-details .wi-invitation {padding-block:40px 48px}
  .invitation-details #invitation .wi-family-invitation.wi-raised-invitation {
    width:calc(100% - 32px);min-height:0;padding:36px 26px 40px;
  }
  .invitation-details .wi-family-invitation {padding-inline:24px;gap:min(var(--inv-name-gap,18px),24px)}
  .invitation-details .wi-family-invitation .wi-hosts {row-gap:min(var(--inv-name-gap,18px),24px)}
  .invitation-details .wi-family-invitation .wi-family-wording {gap:min(var(--inv-guest-gap,24px),28px)}
  .invitation-details .wi-family-names {font-size:26px!important;text-wrap:balance;line-height:1.25!important}
  .invitation-details .wi-welcome-symbol {width:min(var(--punkalasa-size,130px),104px);margin-bottom:14px}
  .invitation-details .wi-family-invitation [data-text-role] > .wi-connecting-line[class] {
    font-size:max(14px,calc(var(--type-mobile-size) * var(--connector-scale,.8)))!important;
  }

  .invitation-details .wi-story.wi-love-story {padding:48px var(--mobile-gutter) 32px}
  .invitation-details .wi-love-story-body {max-width:36em}
  .invitation-details .wi-love-story-body p {line-height:1.7!important;margin-bottom:20px}
  .invitation-details .wi-love-story-body .wi-love-story-opening {margin-bottom:28px}
  .invitation-details .wi-love-story-body .wi-love-story-closing {margin-top:28px}
  .invitation-details .wi-particle-anchor[data-particle-shape="heart"] {height:calc(min(var(--heart-size,180px),140px) * .914 + 32px);margin-top:20px}
  .wi-particle-anchor[data-particle-shape="heart"] .wi-symbol-image {width:min(var(--heart-size,180px),140px)}
  .invitation-details.has-scroll-particles .wi-countdown {padding-block:40px 48px;gap:22px}
  .invitation-details .wi-countdown > .wi-particle-anchor {height:calc(min(var(--infinity-size,170px),150px) * .375 + 28px)}
  .wi-particle-anchor[data-particle-shape="infinity"] .wi-symbol-image {width:min(var(--infinity-size,170px),150px)}
  .invitation-details .wi-countdown-intro {max-width:290px}
  .invitation-details .wi-countdown-numbers {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;max-width:360px;gap:8px}
  .invitation-details .wi-countdown-numbers > div {width:auto;min-width:0}
  .invitation-details .wi-countdown-numbers > i {display:none}
  .invitation-details .wi-countdown-numbers strong {font-size:clamp(34px,10vw,44px)}
  .invitation-details .wi-countdown-numbers span {font-size:11px;letter-spacing:.08em;margin-top:8px}

  .invitation-details .wi-event-section {padding-block:48px}
  .invitation-details .wi-event-heading {margin-bottom:32px}
  .invitation-details .wi-section-icon.wi-gold-section-art {width:min(var(--section-art-size,132px),96px);height:auto;margin-bottom:18px}
  .invitation-details .wi-event-layout {gap:32px;max-width:460px}
  .invitation-details .wi-event-detail {grid-template-columns:24px minmax(0,1fr);gap:14px}
  .wi-event-detail > svg {width:23px;height:23px;margin-top:2px}
  .invitation-details .wi-event-detail + .wi-event-detail {padding-top:22px;margin-top:22px}
  .invitation-details .wi-event-label {margin-bottom:7px}
  .invitation-details #wedding-date-display {font-size:clamp(14px,4.1vw,var(--type-mobile-size))!important;letter-spacing:0!important;white-space:normal;text-wrap:pretty}
  .invitation-details .wi-event-address[data-text-role] {font-size:min(var(--type-mobile-size),14px)!important;line-height:1.6!important;white-space:normal;text-wrap:pretty}
  .wi-event-actions {width:calc(100% - 38px);margin-inline:auto;margin-top:35px;gap:8px}
  .invitation-details .wi-event-actions .wi-button {min-height:46px;min-width:0;padding:11px 5px;font-size:min(var(--type-mobile-size,15px),15px)!important;letter-spacing:0!important;border-radius:25px}
  .wi-event-photo-frame {aspect-ratio:4/3;border-radius:18px}
  .invitation-details .wi-event-dot {width:44px;height:44px}
  .wi-event-gallery-controls {margin-top:6px}

  .invitation-details .wi-rsvp-compact {padding:48px var(--mobile-gutter)}
  .invitation-details #rsvp[data-rsvp-theme] {padding:40px 16px}
  #rsvp[data-rsvp-theme] .wi-rsvp-inner {padding:36px 22px}
  .invitation-details .wi-rsvp-heading .wi-small-rule {margin:20px auto 26px}
  .invitation-details #rsvp-allocation {padding:16px 8px;margin-bottom:24px}
  .invitation-details #rsvp-form .wi-rsvp-choices {display:grid;grid-template-columns:1fr;gap:10px;margin:22px 0}
  .invitation-details #rsvp-form .wi-rsvp-choices label {justify-content:flex-start;min-height:48px;padding:12px 16px;font-family:var(--type-font,Georgia,serif);font-size:16px;gap:12px}
  .wi-rsvp-choices input {width:18px;height:18px;flex:none;margin:0}
  .invitation-details .wi-rsvp-compact .wi-button {min-height:50px;min-width:0;width:100%;padding-inline:14px;gap:16px}
  .invitation-details .wi-rsvp-decline {min-height:44px}
  .invitation-details #rsvp-form > label,.invitation-details #rsvp-count-fields > label {font-size:16px}
  .invitation-details .wi-footer {padding-inline:var(--mobile-gutter)}
  .invitation-details .wi-footer-content {padding-block:44px}
  .invitation-details .wi-footer-bottom {font-size:14px!important;line-height:1.6!important;padding:22px 0 32px;gap:10px;text-wrap:balance}
  .invitation-details .wi-footer-bottom a {display:inline-flex;align-items:center;min-height:44px}
}
@media (max-width:700px) {
  /* Editor shortcuts stay clear of the sticky navigation and reply controls. */
  body[data-main-invitation]:not(.invitation-closed) .variant-tools {top:auto;bottom:max(8px,env(safe-area-inset-bottom));right:8px}
  body[data-main-invitation]:not(.invitation-closed) .variant-tools nav div {top:auto;bottom:50px}
  .invitation-details .wi-footer-bottom {padding-bottom:76px}
}

/* Larger navigation lettering, balanced spacing and consistent touch targets. */
.invitation-details .wi-nav-links .wi-menu-rsvp {display:none}
.invitation-details .wi-nav-links a,.invitation-details .wi-nav-rsvp {
  font-size:14px;line-height:1.4;letter-spacing:.09em;min-height:44px;
}
.invitation-details .wi-nav-links {gap:clamp(20px,2.8vw,36px)}
.invitation-details .wedding-nav {column-gap:24px}
.invitation-details .nav-monogram,.invitation-details .wi-nav-rsvp {flex-shrink:0}
.invitation-details .wi-nav-rsvp .wi-arrow {margin-left:8px}
.invitation-details .wedding-nav a:focus-visible,.invitation-details .wi-menu-toggle:focus-visible {outline:2px solid var(--wi-champagne);outline-offset:4px;border-radius:3px}
@media(min-width:761px) and (max-width:1050px){
 .invitation-details .wedding-nav {padding-inline:24px;column-gap:18px}
 .invitation-details .wi-nav-links {gap:20px}
 .invitation-details .wi-nav-links a,.invitation-details .wi-nav-rsvp {font-size:13px;letter-spacing:.06em}
 .invitation-details .wi-nav-kindly {display:none}
}
@media(max-width:760px){
 .invitation-details .wedding-nav {padding:10px 22px;column-gap:24px;min-height:70px}
 .invitation-details .wi-menu-toggle {font-size:14px;letter-spacing:.08em;gap:10px}
 .invitation-details .wi-menu-toggle>span {width:18px;height:12px}
 .invitation-details .wedding-nav > .wi-nav-rsvp {display:none}
 .invitation-details .wi-nav-links .wi-menu-rsvp {display:inline-flex;color:#827043}
 .invitation-details .wi-nav-links {padding:8px 22px 16px;gap:0}
 .invitation-details .wedding-nav[data-menu-open=true] .wi-nav-links {grid-template-columns:1fr}
 .invitation-details .wi-nav-links a {font-size:15px;letter-spacing:.06em;min-height:50px}
}
