/* Fresh bridge for the clean Tilda source.
   IMPORTANT: no top/left/width/height or artboard geometry overrides live here. */
@font-face{font-family:WeddingCormorant;src:url('../../fonts/CormorantInfant-Regu.woff') format('woff');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:WeddingBitter;src:url('../../fonts/BitterRegular.woff') format('woff');font-weight:400;font-style:normal;font-display:swap}

:root{--w-brown:#8d6b52;--w-blue:#8ea9c5;--w-paper:#fffcf8;--w-border:rgba(141,107,82,.45)}

/* The export contains a generic English coming-soon block after the real invitation. */
#rec1936339001{display:none!important}

/* Text is drawn over the original image slot. The invisible image remains in place,
   so Tilda keeps its exact original element dimensions on every breakpoint. */
.mary-overlay-atom{position:relative!important;overflow:visible!important}
.mary-overlay-atom>.tn-atom__img,.mary-overlay-atom>img{opacity:0!important;visibility:hidden!important}
.mary-overlay{position:absolute;inset:0;z-index:4;display:flex;align-items:center;justify-content:center;text-align:center;box-sizing:border-box;color:var(--w-brown);pointer-events:none;line-height:1.02}
.mary-script{font-family:WeddingCormorant,'Cormorant',Georgia,serif;font-weight:400}
.mary-body-font{font-family:WeddingBitter,'Bitter',Georgia,serif;font-weight:400}

.mary-hero-names{font-size:46px;color:#7598ba;letter-spacing:.015em;white-space:nowrap}
.mary-hero-date{font-size:38px;color:var(--w-brown);letter-spacing:.03em}
.mary-heading{font-size:48px;color:var(--w-brown)}
.mary-location-kicker{font-size:22px;letter-spacing:.08em;text-transform:uppercase}
.mary-location-heading{font-size:44px}
.mary-venue-heading{font-size:28px}
.mary-section-title{font-size:32px;white-space:nowrap}
.mary-wishes-title{font-size:36px;white-space:nowrap}
.mary-dress-title{font-size:30px;white-space:nowrap}
.mary-form-title{font-size:30px;white-space:nowrap}
.mary-organizer-label{font-size:17px;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.mary-organizer-name{font-size:24px;white-space:nowrap}
.mary-organizer-phone{font-family:WeddingBitter,'Bitter',Georgia,serif;font-size:17px;white-space:nowrap;pointer-events:auto;text-decoration:none;color:var(--w-brown)}

.mary-event-card{flex-direction:column;gap:1px;padding:1px 2px;font-family:WeddingCormorant,'Cormorant',Georgia,serif;color:var(--w-brown)}
.mary-event-card__title{font-size:20px;line-height:.92;white-space:nowrap}
.mary-event-card__time{font-family:WeddingBitter,'Bitter',Georgia,serif;font-size:14px;line-height:1;font-weight:400;letter-spacing:.08em}

/* Editable dress-code swatches keep the original stone image as an invisible size anchor. */
.mary-color-swatch{position:relative!important;border-radius:50%;overflow:hidden!important;box-shadow:0 2px 8px rgba(77,61,50,.10)}
.mary-color-swatch>.tn-atom__img,.mary-color-swatch>img{opacity:0!important;visibility:hidden!important}

/* RSVP rendered inside the original Tilda form element. */
.mary-rsvp{font-family:WeddingBitter,'Bitter',Georgia,serif;color:var(--w-brown);width:100%;box-sizing:border-box}
.mary-rsvp *{box-sizing:border-box}
.mary-rsvp__grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px}
.mary-rsvp__field{display:flex;flex-direction:column;gap:5px;min-width:0}
.mary-rsvp__field--wide{grid-column:1/-1}
.mary-rsvp__label{font-size:14px;line-height:1.2}
.mary-rsvp input[type="text"],.mary-rsvp textarea{width:100%;border:1px solid var(--w-border);background:rgba(255,252,248,.88);color:var(--w-brown);border-radius:6px;padding:9px 11px;font:inherit;font-size:14px;outline:none;transition:border-color .15s,box-shadow .15s}
.mary-rsvp input[type="text"]{height:40px}
.mary-rsvp textarea{min-height:62px;resize:vertical;line-height:1.35}
.mary-rsvp input:focus,.mary-rsvp textarea:focus{border-color:#7999b9;box-shadow:0 0 0 2px rgba(121,153,185,.12)}
.mary-rsvp__options{display:flex;flex-wrap:wrap;gap:6px}
.mary-rsvp__choice{position:relative;display:inline-flex;flex:1 1 auto;min-width:110px}
.mary-rsvp__choice input{position:absolute;opacity:0;pointer-events:none}
.mary-rsvp__choice span{display:flex;align-items:center;justify-content:center;width:100%;min-height:34px;padding:6px 8px;border:1px solid var(--w-border);border-radius:6px;background:rgba(255,252,248,.86);font-size:12px;line-height:1.15;text-align:center;cursor:pointer;transition:.15s}
.mary-rsvp__choice input:checked+span{background:#8ea9c5;border-color:#8ea9c5;color:#fff}
.mary-rsvp__conditional[hidden]{display:none!important}
.mary-rsvp__submit{display:block;margin:12px auto 0;min-width:180px;height:42px;border:0;border-radius:6px;background:#96b2d4;color:#fff;font-family:WeddingBitter,'Bitter',Georgia,serif;font-size:14px;cursor:pointer;padding:0 18px;transition:opacity .15s,transform .15s}
.mary-rsvp__submit:active{transform:translateY(1px)}
.mary-rsvp__submit:disabled{opacity:.55;cursor:wait}
.mary-rsvp__status{min-height:19px;margin-top:8px;text-align:center;font-size:12px;line-height:1.35}
.mary-rsvp__status.is-error{color:#a44343}.mary-rsvp__status.is-success{color:#4f765c}
.mary-rsvp__honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}

/* Small fixed music control does not participate in the Tilda layout. */
.mary-music-button{position:fixed;right:14px;bottom:14px;z-index:9999;width:42px;height:42px;border-radius:50%;border:1px solid rgba(141,107,82,.35);background:rgba(255,252,248,.92);color:#7899ba;display:flex;align-items:center;justify-content:center;font-size:21px;line-height:1;cursor:pointer;box-shadow:0 3px 14px rgba(70,55,45,.12);backdrop-filter:blur(6px)}
.mary-music-button.is-playing{color:#8d6b52}

@media(max-width:639px){
  .mary-rsvp__grid{grid-template-columns:1fr;gap:8px}
  .mary-rsvp__field--wide{grid-column:auto}
  .mary-rsvp__label{font-size:12px}
  .mary-rsvp input[type="text"],.mary-rsvp textarea{font-size:12px;padding:7px 9px}
  .mary-rsvp input[type="text"]{height:34px}
  .mary-rsvp textarea{min-height:48px}
  .mary-rsvp__choice{min-width:88px}
  .mary-rsvp__choice span{min-height:30px;font-size:10.5px;padding:5px 6px}
  .mary-rsvp__submit{height:36px;min-width:150px;font-size:12px;margin-top:8px}
  .mary-rsvp__status{font-size:10.5px;margin-top:5px}
}

@media(max-width:479px){
  .mary-hero-names{font-size:24px}
  .mary-hero-date{font-size:20px}
  .mary-heading{font-size:31px}
  .mary-location-kicker{font-size:12px}
  .mary-location-heading{font-size:27px}
  .mary-venue-heading{font-size:17px}
  .mary-section-title{font-size:20px}
  .mary-wishes-title{font-size:23px}
  .mary-dress-title{font-size:20px}
  .mary-form-title{font-size:19px}
  .mary-organizer-label{font-size:10px}
  .mary-organizer-name{font-size:15px}
  .mary-organizer-phone{font-size:11px}
  .mary-event-card__title{font-size:12px}
  .mary-event-card__time{font-size:9px}
  .mary-music-button{right:10px;bottom:10px;width:38px;height:38px;font-size:18px}
}


/* v2: stable countdown. Fixed numeral cells prevent the line from changing width
   every second, and all Tilda animation/transition effects are disabled on it. */
#rec1936338991 [data-elem-id="1770532108064"],
#rec1936338991 [data-elem-id="1770532108064"] .tn-atom{animation:none!important;transition:none!important}
.mary-countdown-stable{display:grid!important;grid-template-columns:minmax(3ch,1fr) .65ch minmax(2ch,1fr) .65ch minmax(2ch,1fr) .65ch minmax(2ch,1fr);align-items:center;justify-items:center;column-gap:.12em;font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1,"lnum" 1;letter-spacing:0!important;white-space:nowrap!important;contain:layout paint;will-change:auto}
.mary-countdown-stable__digit{display:block;min-width:2ch;text-align:center;line-height:1.2}
.mary-countdown-stable__digit--days{min-width:3ch}
.mary-countdown-stable__sep{display:block;width:.65ch;text-align:center;opacity:.9}

/* v2: the custom RSVP form is much shorter than the original Tilda form.
   JS measures its real height on mobile and removes the obsolete empty canvas. */
#rec1936338981.mary-rsvp-compact .t396__artboard,
#rec1936338981.mary-rsvp-compact .t396__carrier,
#rec1936338981.mary-rsvp-compact .t396__filter{overflow:hidden!important}
#rec1936338981.mary-rsvp-compact [data-elem-id="1770535087381"]{height:auto!important;min-height:0!important}
#rec1936338981.mary-rsvp-compact [data-elem-id="1770535087381"] .tn-atom,
#rec1936338981.mary-rsvp-compact [data-elem-id="1770535087381"] .tn-atom__form{height:auto!important;min-height:0!important}

@media(max-width:639px){
  .mary-countdown-stable{width:100%!important;min-width:0!important}
}
@media(max-width:479px){
  #rec1936338991 [data-elem-id="1770532108064"]{width:259px!important}
  #rec1936338991 [data-elem-id="1770532108064"] .tn-atom{width:259px!important;max-width:259px!important}
}


/* v3: reliable countdown built as one independent overlay.
   The original Tilda count elements contain broken responsive width declarations,
   so they are hidden without changing the artboard geometry. */
#rec1936338991 .mary-countdown-source-hidden{visibility:hidden!important;opacity:0!important;pointer-events:none!important}
#rec1936338991 .mary-countdown{position:absolute;z-index:40;top:136px;left:50%;transform:translateX(-50%);width:560px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;color:#8d6b52;font-family:'Bitter',WeddingBitter,Georgia,serif;font-weight:100;text-align:center;pointer-events:none;box-sizing:border-box;font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1,"lnum" 1;contain:layout style}
#rec1936338991 .mary-countdown__item{position:relative;display:grid;grid-template-rows:auto auto;justify-items:center;align-items:start;min-width:0}
#rec1936338991 .mary-countdown__number{display:block;min-width:3ch;font-size:32px;line-height:1.2;letter-spacing:0;white-space:nowrap}
#rec1936338991 .mary-countdown__label{display:block;margin-top:5px;font-size:18px;line-height:1.2;white-space:nowrap}
#rec1936338991 .mary-countdown__separator{position:absolute;top:0;right:-.13em;font-size:32px;line-height:1.2}
#rec1936338991 .mary-countdown,#rec1936338991 .mary-countdown *{animation:none!important;transition:none!important}

/* Only the original Tilda music control is used. Old bridge button is suppressed
   as an extra safety net for browsers restoring stale DOM from back/forward cache. */
.mary-music-button,#mary-wedding-audio{display:none!important}

@media(max-width:1199px){
  #rec1936338991 .mary-countdown{width:560px}
}
@media(max-width:959px){
  #rec1936338991 .mary-countdown{width:560px}
}
@media(max-width:639px){
  #rec1936338991 .mary-countdown{width:478px}
}
@media(max-width:479px){
  #rec1936338991 .mary-countdown{top:111px;width:286px}
  #rec1936338991 .mary-countdown__number{font-size:24px;min-width:2.5ch}
  #rec1936338991 .mary-countdown__label{margin-top:4px;font-size:12px}
  #rec1936338991 .mary-countdown__separator{font-size:24px;right:-.14em}
}


/* v4: RSVP section follows the real visible form height on every breakpoint.
   This removes the large empty lower half visible on tablet/desktop before a
   guest selects attendance, while still growing automatically for extra fields. */
#rec1936338981.mary-rsvp-compact,
#rec1936338981.mary-rsvp-compact .t396,
#rec1936338981.mary-rsvp-compact .t396__artboard,
#rec1936338981.mary-rsvp-compact .t396__carrier,
#rec1936338981.mary-rsvp-compact .t396__filter{overflow:hidden!important}
#rec1936338981.mary-rsvp-compact [data-elem-id="1770535087381"],
#rec1936338981.mary-rsvp-compact [data-elem-id="1770535087381"] .tn-atom,
#rec1936338981.mary-rsvp-compact [data-elem-id="1770535087381"] .tn-atom__form{height:auto!important;min-height:0!important;max-height:none!important}
#rec1936338981 .mary-rsvp-paper-fit,
#rec1936338981 .mary-rsvp-paper-fit .tn-atom{overflow:hidden!important}
#rec1936338981 .mary-rsvp-paper-fit .tn-atom__img{display:block!important;object-fit:fill!important;object-position:center top!important}
