.elementor-kit-5{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#000000;--e-global-color-text:#000000;--e-global-color-accent:#61CE70;--e-global-color-c893af8:#E2F0FF;--e-global-typography-primary-font-family:"Urbanist";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Quicksand";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;--e-global-color-theme_color_bg_color:#FFFFFF;--e-global-color-theme_color_bg_color_2:#a2cffe;--e-global-color-theme_color_bd_color:#E4DDD7;--e-global-color-theme_color_title:#1F242E;--e-global-color-theme_color_text:#000000;--e-global-color-theme_color_meta:#B8B1AC;--e-global-color-theme_color_link:#800020;--e-global-color-theme_color_hover:#350511;--e-global-color-theme_color_alt_bg_color:#000000;--e-global-color-theme_color_alt_bg_color_2:#000000;--e-global-color-theme_color_alt_bd_color:#504C43;--e-global-color-theme_color_alt_title:#FFFEFE;--e-global-color-theme_color_alt_text:#C7C2B4;--e-global-color-theme_color_alt_meta:#B8B3A5;--e-global-color-theme_color_alt_link:#350511;--e-global-color-theme_color_alt_hover:#D8974F;--e-global-typography-theme_font_p-font-family:"Inter";--e-global-typography-theme_font_p-font-size:16px;--e-global-typography-theme_font_p-font-weight:400;--e-global-typography-theme_font_p-text-transform:none;--e-global-typography-theme_font_p-font-style:normal;--e-global-typography-theme_font_p-line-height:1.625em;--e-global-typography-theme_font_p-letter-spacing:0px;--e-global-typography-theme_font_post-font-family:"inherit";--e-global-typography-theme_font_post-font-weight:inherit;--e-global-typography-theme_font_post-text-transform:inherit;--e-global-typography-theme_font_post-font-style:inherit;--e-global-typography-theme_font_post-text-decoration:inherit;--e-global-typography-theme_font_h1-font-family:"Kumbh Sans";--e-global-typography-theme_font_h1-font-size:57px;--e-global-typography-theme_font_h1-font-weight:500;--e-global-typography-theme_font_h1-text-transform:none;--e-global-typography-theme_font_h1-font-style:normal;--e-global-typography-theme_font_h1-text-decoration:none;--e-global-typography-theme_font_h1-line-height:1.1052em;--e-global-typography-theme_font_h1-letter-spacing:-0.02em;--e-global-typography-theme_font_h2-font-family:"Kumbh Sans";--e-global-typography-theme_font_h2-font-size:47px;--e-global-typography-theme_font_h2-font-weight:500;--e-global-typography-theme_font_h2-text-transform:none;--e-global-typography-theme_font_h2-font-style:normal;--e-global-typography-theme_font_h2-text-decoration:none;--e-global-typography-theme_font_h2-line-height:1.1276em;--e-global-typography-theme_font_h2-letter-spacing:-0.02em;--e-global-typography-theme_font_h3-font-family:"Kumbh Sans";--e-global-typography-theme_font_h3-font-size:35px;--e-global-typography-theme_font_h3-font-weight:500;--e-global-typography-theme_font_h3-text-transform:none;--e-global-typography-theme_font_h3-font-style:normal;--e-global-typography-theme_font_h3-text-decoration:none;--e-global-typography-theme_font_h3-line-height:1.0833em;--e-global-typography-theme_font_h3-letter-spacing:0px;--e-global-typography-theme_font_h4-font-family:"Kumbh Sans";--e-global-typography-theme_font_h4-font-size:28px;--e-global-typography-theme_font_h4-font-weight:500;--e-global-typography-theme_font_h4-text-transform:none;--e-global-typography-theme_font_h4-font-style:normal;--e-global-typography-theme_font_h4-text-decoration:none;--e-global-typography-theme_font_h4-line-height:1.2143em;--e-global-typography-theme_font_h4-letter-spacing:0px;--e-global-typography-theme_font_h5-font-family:"Kumbh Sans";--e-global-typography-theme_font_h5-font-size:23px;--e-global-typography-theme_font_h5-font-weight:500;--e-global-typography-theme_font_h5-text-transform:none;--e-global-typography-theme_font_h5-font-style:normal;--e-global-typography-theme_font_h5-text-decoration:none;--e-global-typography-theme_font_h5-line-height:1.2174em;--e-global-typography-theme_font_h5-letter-spacing:0px;--e-global-typography-theme_font_h6-font-family:"Kumbh Sans";--e-global-typography-theme_font_h6-font-size:19px;--e-global-typography-theme_font_h6-font-weight:500;--e-global-typography-theme_font_h6-text-transform:none;--e-global-typography-theme_font_h6-font-style:normal;--e-global-typography-theme_font_h6-text-decoration:none;--e-global-typography-theme_font_h6-line-height:1.2632em;--e-global-typography-theme_font_h6-letter-spacing:0px;--e-global-typography-theme_font_logo-font-family:"Kumbh Sans";--e-global-typography-theme_font_logo-font-size:35px;--e-global-typography-theme_font_logo-font-weight:500;--e-global-typography-theme_font_logo-text-transform:none;--e-global-typography-theme_font_logo-font-style:normal;--e-global-typography-theme_font_logo-text-decoration:none;--e-global-typography-theme_font_logo-line-height:1.1142em;--e-global-typography-theme_font_logo-letter-spacing:0px;--e-global-typography-theme_font_button-font-family:"Kumbh Sans";--e-global-typography-theme_font_button-font-size:16px;--e-global-typography-theme_font_button-font-weight:500;--e-global-typography-theme_font_button-text-transform:none;--e-global-typography-theme_font_button-font-style:normal;--e-global-typography-theme_font_button-text-decoration:none;--e-global-typography-theme_font_button-line-height:19px;--e-global-typography-theme_font_button-letter-spacing:0px;--e-global-typography-theme_font_input-font-family:"inherit";--e-global-typography-theme_font_input-font-size:15px;--e-global-typography-theme_font_input-font-weight:400;--e-global-typography-theme_font_input-text-transform:none;--e-global-typography-theme_font_input-font-style:normal;--e-global-typography-theme_font_input-text-decoration:none;--e-global-typography-theme_font_input-line-height:1.6em;--e-global-typography-theme_font_input-letter-spacing:0px;--e-global-typography-theme_font_info-font-family:"inherit";--e-global-typography-theme_font_info-font-size:14px;--e-global-typography-theme_font_info-font-weight:400;--e-global-typography-theme_font_info-text-transform:none;--e-global-typography-theme_font_info-font-style:normal;--e-global-typography-theme_font_info-text-decoration:none;--e-global-typography-theme_font_info-line-height:1.5em;--e-global-typography-theme_font_info-letter-spacing:0px;--e-global-typography-theme_font_menu-font-family:"Kumbh Sans";--e-global-typography-theme_font_menu-font-size:16px;--e-global-typography-theme_font_menu-font-weight:500;--e-global-typography-theme_font_menu-text-transform:none;--e-global-typography-theme_font_menu-font-style:normal;--e-global-typography-theme_font_menu-text-decoration:none;--e-global-typography-theme_font_menu-line-height:1.5em;--e-global-typography-theme_font_menu-letter-spacing:0px;--e-global-typography-theme_font_submenu-font-family:"Kumbh Sans";--e-global-typography-theme_font_submenu-font-size:15px;--e-global-typography-theme_font_submenu-font-weight:500;--e-global-typography-theme_font_submenu-text-transform:none;--e-global-typography-theme_font_submenu-font-style:normal;--e-global-typography-theme_font_submenu-text-decoration:none;--e-global-typography-theme_font_submenu-line-height:1.4em;--e-global-typography-theme_font_submenu-letter-spacing:0px;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1290px;}.e-con{--container-max-width:1290px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:30px;}.elementor-element{--widgets-spacing:30px 30px;--widgets-spacing-row:30px;--widgets-spacing-column:30px;}{}.sc_layouts_title_caption{display:var(--page-title-display);}@media(max-width:1279px){.elementor-kit-5{--e-global-typography-theme_font_h1-font-size:45px;--e-global-typography-theme_font_h2-font-size:36px;--e-global-typography-theme_font_h3-font-size:28px;--e-global-typography-theme_font_h4-font-size:22px;--e-global-typography-theme_font_h5-font-size:20px;--e-global-typography-theme_font_h6-font-size:18px;--e-global-typography-theme_font_logo-font-size:28px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-5{--e-global-typography-theme_font_p-font-size:15px;--e-global-typography-theme_font_h1-font-size:36px;--e-global-typography-theme_font_h2-font-size:31px;--e-global-typography-theme_font_h3-font-size:26px;--e-global-typography-theme_font_h5-font-size:19px;--e-global-typography-theme_font_h6-font-size:17px;--e-global-typography-theme_font_logo-font-size:26px;--e-global-typography-theme_font_button-font-size:15px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:320px;}.e-con{--container-max-width:320px;}}/* Start custom CSS *//* ===== MIM-ANI-MOBILE-FIXES START (added 2026-09-22 — safe to delete this whole block) ===== */
@media (max-width: 767px){

  /* 1 — page hero titles were 75–106px on a 390px screen and broke mid-word */
  .elementor-element-601e55d .elementor-heading-title{
    font-size: clamp(28px, 10vw, 42px) !important;
    line-height: 1.12 !important;
    letter-spacing: 0 !important;
    overflow-wrap: break-word;
    word-break: normal !important;
    hyphens: none !important;
  }

  /* 2 — hamburger icon: was grey #494C4F and small; now brand teal and bigger */
  .elementor-element-d463308 .trx-addons-hamburger-toggle{
    width: auto !important; height: 40px !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 8px;
  }
  /* label beside the icon */
  .elementor-element-d463308 .trx-addons-hamburger-toggle::before{
    content: "MENU";
    color: #12505A;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1.5px;
    line-height: 1;
    white-space: nowrap;
  }
  .elementor-element-d463308 .trx-addons-toggle-text{
    color: #12505A !important;
    font-size: 24px !important;
    width: 36px !important; height: 36px !important;
  }
  .elementor-element-d463308 .trx-addons-toggle-text:before,
  .elementor-element-d463308 .trx-addons-toggle-text:after,
  .elementor-element-d463308 .trx-addons-toggle-text > span,
  .elementor-element-d463308 .trx-addons-toggle-text i{
    color: #12505A !important;
    background-color: #12505A !important;
  }

  /* 3 — slide-out menu panel: black -> brand teal */
  .elementor-element-d463308 .trx-addons-mobile-menu-outer-container{
    background-color: #12505A !important;
  }

  /* 4 — logo at the top of the menu */
  .elementor-element-d463308 .trx-addons-mobile-menu-container::before{
    content: "";
    display: block;
    width: 244px; height: 148px;
    margin: 2px auto 26px;
    background: url("https://marriedinmiami.net/wp-content/uploads/2026/09/MIM-horizontal-logo-glow-v2.png") center center / contain no-repeat;
  }

  /* 5 — consistent white uppercase labels */
  .elementor-element-d463308 ul.trx-addons-mobile-menu > li > a,
  .elementor-element-d463308 ul.trx-addons-mobile-menu > li > a .trx-addons-menu-link-text{
    text-transform: uppercase !important;
    color: #FFFFFF !important;
    font-size: 17px !important;
  }
  .elementor-element-d463308 ul.trx-addons-mobile-menu > li.current-menu-item > a,
  .elementor-element-d463308 ul.trx-addons-mobile-menu > li.current-menu-item > a .trx-addons-menu-link-text,
  .elementor-element-d463308 ul.trx-addons-mobile-menu > li > a:hover,
  .elementor-element-d463308 ul.trx-addons-mobile-menu > li > a:hover .trx-addons-menu-link-text{
    color: #E4B80D !important;
  }
  .elementor-element-d463308 .trx-addons-mobile-menu-close,
  .elementor-element-d463308 .trx-addons-mobile-menu-close svg{
    color: #FFFFFF !important; fill: #FFFFFF !important;
  }

  /* 6 — the mobile menu is its own WordPress menu now ("Main Navigation - WB - Mobile"),
        so its order comes from WordPress. No CSS ordering here on purpose: if Whilly
        reorders that menu, the page must follow him rather than fight him. */
  .elementor-element-d463308 ul.trx-addons-mobile-menu{
    display: flex !important;
    flex-direction: column !important;
  }

}
/* ===== MIM-ANI-MOBILE-FIXES END ===== */

/* ===== MIM-ANI-FOOTER-MOBILE START (added 2026-09-22 — safe to delete this whole block) ===== */
@media (max-width: 767px){
  /* stack the footer in the order from Whilly's example:
     horizontal logo -> NAVIGATION -> RESOURCES -> chapel / badge / socials */
  .elementor-element-783d149{ display:flex !important; flex-direction:column !important; }
  .elementor-element-a1b2c36{ order:0 !important; }   /* horizontal logo   */
  .elementor-element-a1b2c31{ order:1 !important; }   /* NAVIGATION block  */
  .elementor-element-a783d71{ order:2 !important; }   /* RESOURCES block   */
  .elementor-element-93b9f98{ order:3 !important; }   /* chapel / socials  */

  /* soft separators between the three blocks, like the example */
  .elementor-element-a783d71,
  .elementor-element-93b9f98{
    border-top:1px solid rgba(255,255,255,.22);
    padding-top:30px !important;
    margin-top:6px !important;
  }

  /* centre the blocks the example shows centred */
  .elementor-element-93b9f98{ align-items:center !important; text-align:center !important; }
  .elementor-element-93b9f98 .elementor-widget-text-editor{ text-align:left !important; }
  .elementor-element-a0ab2b5{ justify-items:center !important; }
  .elementor-element-b0ea400 .elementor-social-icons-wrapper{ justify-content:center !important; }
  .elementor-element-a783d71{ align-items:center !important; }
  .elementor-element-eda9860{ align-items:center !important; }

  /* the circle logo + the chapel text read better centred as a pair */
  .elementor-element-e3f5801 .elementor-widget-container,
  .elementor-element-e3f5801 figure,
  .elementor-element-e3f5801 img{ margin-left:auto !important; margin-right:auto !important; }
  .elementor-element-e3f5801{ text-align:center !important; }

  /* bottom bar: keep the copyright on ONE line */
  .elementor-element-f7510c8,
  .elementor-element-f7510c8 p{
    font-size:clamp(11px,3.35vw,14px) !important;
    line-height:1.35 !important;
    white-space:nowrap !important;
  }
  .elementor-element-5355504{ align-items:flex-start !important; }
}
/* ===== MIM-ANI-FOOTER-MOBILE END ===== */

/* ===== MIM-ANI-FOOTER-DESKTOP START (added 2026-09-22 — safe to delete this whole block) ===== */
@media (min-width: 768px){
  /* the article titles were being squeezed into a 79px box inside a 330px column,
     which is why they wrapped onto 4 lines and sat left of the RESOURCES banner */
  .elementor-element-6ca1a01 .trx-addons-posts-item-content-wrap,
  .elementor-element-6ca1a01 .trx-addons-posts-item-content{
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
  }
  .elementor-element-6ca1a01 .trx-addons-posts-item{ gap: 10px; }

  /* centre the article list under the RESOURCES banner */
  .elementor-element-eda9860{
    width: 284px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* centre the two menu columns under the NAVIGATION banner */
  .elementor-element-a1b2c32{
    width: 336px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}
/* ===== MIM-ANI-FOOTER-DESKTOP END ===== */

/* ===== MIM-ANI-PAGES START (added 2026-09-22 — safe to delete this whole block) ===== */
@media (max-width: 767px){

  /* "I DO" was splitting across two lines — keep it as one unit */
  .elementor-element-d449954 .elementor-repeater-item-0c86c46{
    white-space: nowrap !important;
    display: inline-block;
  }

  /* footer polish: centre the badges and the article list like the example */
  .elementor-element-a1b2c35,
  .elementor-element-38e0ef5{ text-align:center !important; }
  .elementor-element-a1b2c35 img,
  .elementor-element-38e0ef5 img{ margin-left:auto !important; margin-right:auto !important; }
  .elementor-element-6ca1a01 .trx-addons-posts{
    max-width: 312px; margin-left:auto !important; margin-right:auto !important;
  }
}
/* ===== MIM-ANI-PAGES END ===== */

/* ===== MIM-ANI-PAGES-2 START (added 2026-09-22 — safe to delete this whole block) ===== */
@media (max-width: 767px){
  /* Chapel gallery carried a 58px desktop side margin with no mobile override,
     so it started 78px in and ran off the right edge */
  .elementor-element-2931e73{
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  /* "ABOUT OUR HISTORY..." button: fixed 300px + fixed 45px side margins = 390px,
     so it overhangs on any phone narrower than 390 */
  .elementor-element-80d1421{
    margin-left: auto !important;
    margin-right: auto !important;
    margin-top: 26px !important;
    margin-bottom: 30px !important;
    width: auto !important;
    max-width: calc(100% - 76px) !important;
  }
  .elementor-element-0a3f1c9,
  .elementor-element-0a3f1c9 .elementor-button{
    width: 100% !important;
    max-width: 100% !important;
  }

  /* How It Works: 130px of empty space under the accordion before the next section */
  .elementor-element-2d18b0d > .e-con-inner{
    padding-top: 40px !important;
    padding-bottom: 45px !important;
  }
}
/* ===== MIM-ANI-PAGES-2 END ===== */

/* ===== MIM-ANI-FAQ START (added 2026-09-22 — safe to delete this whole block) ===== */
@media (max-width: 767px){
  /* the FAQ grid stayed 2-up on phones and the first column collapsed to 6px,
     which is why the headings printed one letter per line */
  .elementor-element-a828372{
    grid-template-columns: 1fr !important;
  }
  .elementor-element-a828372 > .elementor-element{
    grid-column: 1 / -1 !important;
    min-width: 0 !important;
  }
}
/* ===== MIM-ANI-FAQ END ===== */

/* ===== MIM-ANI-ROUND2 START (added 2026-09-22 — safe to delete this whole block) ===== */

/* the green highlight on the How It Works tabs — on EVERY screen size, not just phones */
.elementor-element-92d7e5f .e-n-tab-title[aria-selected="true"],
.elementor-element-92d7e5f .e-n-tab-title:hover{
  background-color: #12505A !important;
}
.elementor-element-92d7e5f .e-n-tab-title[aria-selected="true"] .e-n-tab-title-text,
.elementor-element-92d7e5f .e-n-tab-title[aria-selected="true"] .e-n-tab-title-text *,
.elementor-element-92d7e5f .e-n-tab-title:hover .e-n-tab-title-text,
.elementor-element-92d7e5f .e-n-tab-title:hover .e-n-tab-title-text *{
  color: #FFFFFF !important;
}
.elementor-element-92d7e5f .e-n-tab-title .e-n-tab-title-text{
  color: #12505A !important;
}
.elementor-element-92d7e5f .e-n-tab-title{
  border-bottom: 1px solid rgba(18,80,90,.18);
  padding-left: 16px !important;
  padding-right: 16px !important;
}

@media (min-width: 768px){
  /* HOME "About" section: it was split into two side-by-side columns, which put the
     introduction in the RIGHT column and left a tall blank area on the left.
     One single reading column instead — intro first, no empty column possible. */
  .elementor-element-089cf9c > .e-con-inner{
    flex-direction: column-reverse !important;
    align-items: center !important;
    row-gap: 10px !important;
  }
  .elementor-element-9c6eb3d,
  .elementor-element-51dbf51{
    width: 100% !important;
    max-width: 840px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* footer: nudge the two menu columns slightly right, under the NAVIGATION banner */
  .elementor-element-a1b2c32{
    position: relative;
    left: 54px;
  }
}
/* ===== MIM-ANI-ROUND2 END ===== */

/* ===== MIM-ANI-ROUND3 START (added 2026-09-22 — safe to delete this whole block) ===== */
@media (min-width: 768px){
  /* two clear line-spaces between the closing text and the ABOUT OUR HISTORY button */
  .elementor-element-80d1421{
    margin-top: 62px !important;
  }
}
/* ===== MIM-ANI-ROUND3 END ===== */

/* ===== MIM-ANI-ROUND4 START (added 2026-09-22 — safe to delete this whole block) ===== */

/* the hamburger is an inline SVG whose paths are filled near-white (#fffefe).
   'color' never touched it — the fill has to be set directly. */
.elementor-element-d463308 .trx-addons-toggle-text svg,
.elementor-element-d463308 .trx-addons-toggle-text svg *,
.elementor-element-d463308 .trx-addons-hamburger-toggle svg,
.elementor-element-d463308 .trx-addons-hamburger-toggle svg *{
  fill: #12505A !important;
}

@media (max-width: 767px){
  /* footer: match the gap under View All to the one under the SAY NO badge (36px) */
  .elementor-element-a783d71{
    padding-bottom: 30px !important;
  }

  /* SAY NO badge inside the page body was rendering 300px wide on a 390px screen */
  .elementor-element-e0f5435 img{
    max-width: 190px !important;
    height: auto !important;
  }
  .elementor-element-e0f5435{
    text-align: center !important;
  }
  .elementor-element-e0f5435 img{
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* "Got questions? / We have Answers." — tighten the gaps around the second line */
  .elementor-element-c553377{ margin-bottom: 2px !important; }
  .elementor-element-1d250c2{ margin-bottom: 10px !important; }

  /* FAQ boxes: titles were 30px and flush against the box edges.
     Matched by shape (a box in the FAQ grid that owns a heading) rather than by id,
     so every box is covered and any new one Whilly adds is covered too. */
  .elementor-element-a828372 > .elementor-element:has(> .elementor-widget-heading){
    padding: 26px 20px !important;
  }
  .elementor-element-a828372 > .elementor-element:has(> .elementor-widget-heading)
    > .elementor-widget-heading .elementor-heading-title{
    font-size: 22px !important;
    line-height: 1.25 !important;
    letter-spacing: 0 !important;
  }

  /* contact page: the email + phone line broke awkwardly after the "|".
     Now it stacks cleanly: email on one line, phone on the next. */
  .elementor-element-7e8032d .mim-sep{ display: none !important; }
  .elementor-element-7e8032d .mim-phone{ display: block !important; margin-top: 6px; }
  .elementor-element-7e8032d .elementor-heading-title{ line-height: 1.35 !important; }

  /* mobile menu: these two read better over two lines, as Whilly asked */
  .elementor-element-d463308 ul.trx-addons-mobile-menu > li:has(> a[href*="/weddingpackages"]) .trx-addons-menu-link-text,
  .elementor-element-d463308 ul.trx-addons-mobile-menu > li:has(> a[href*="/premarital-course"]) .trx-addons-menu-link-text{
    display: inline-block;
    width: min-content;
    line-height: 1.22;
  }
}
/* ===== MIM-ANI-ROUND4 END ===== */

/* ===== MIM-ANI-ROUND5 START (added 2026-09-23 — safe to delete this whole block) ===== */

@media (max-width: 767px){
  /* HOME: the header sits over the slider photo, so a plain teal MENU was hard to read.
     A soft light pill keeps it legible on any slide. */
  body.home .elementor-element-d463308 .trx-addons-hamburger-toggle{
    background: rgba(255,255,255,.86);
    -webkit-backdrop-filter: blur(3px);
    backdrop-filter: blur(3px);
    border-radius: 26px;
    padding: 7px 14px 7px 16px;
    box-shadow: 0 2px 10px rgba(0,0,0,.10);
  }

  /* "GET MARRIED TODAY!" at the foot of the mobile menu, styled as the header button */
  .elementor-element-d463308 ul.trx-addons-mobile-menu > li:has(> a[href*="/booking" i]){
    margin-top: 40px !important;
  }
  .elementor-element-d463308 ul.trx-addons-mobile-menu > li:has(> a[href*="/booking" i]) > a{
    display: inline-flex !important;
    align-items: center;
    background: #7A1225;
    border-radius: 8px;
    padding: 13px 22px !important;
  }
  .elementor-element-d463308 ul.trx-addons-mobile-menu > li:has(> a[href*="/booking" i]) .trx-addons-menu-link-text{
    color: #FFFFFF !important;
    letter-spacing: .5px;
  }

  /* RESOURCES (blog archive): content was starting underneath the header */
  body.blog .page_content_wrap{
    padding-top: 120px !important;
  }
}

@media (min-width: 768px){
  /* Chapel, Wedding Packages and Own a Franchise were built as two side-by-side
     columns whose content lengths are very different, which left a tall blank
     area beside the short one. One reading column instead, same as the home page.
     Scoped per page: the other pages sharing this block are balanced and stay as they are. */
  .elementor-10914 .elementor-element-88d39b8 > .e-con-inner,
  .elementor-6705  .elementor-element-88d39b8 > .e-con-inner,
  .elementor-10959 .elementor-element-88d39b8 > .e-con-inner{
    flex-direction: column !important;
    align-items: center !important;
    row-gap: 18px !important;
  }
  .elementor-10914 .elementor-element-88d39b8 > .e-con-inner > .elementor-element,
  .elementor-6705  .elementor-element-88d39b8 > .e-con-inner > .elementor-element,
  .elementor-10959 .elementor-element-88d39b8 > .e-con-inner > .elementor-element{
    width: 100% !important;
    max-width: 840px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}
/* SHOP: a Spacer widget sits after "CAPS & HATS" and nowhere else. With it, that
   gap ran ~30px longer than the gaps under the other category titles; removing it
   outright made the gap ~50px too SHORT. Sized so all five gaps match instead.
   Done in CSS, not on the page, because the Shop page has unsaved editor changes
   and I won't publish those by accident. */
.elementor-element-899e5e5 .elementor-spacer-inner{
  height: 21px !important;
}
/* ===== MIM-ANI-ROUND5 END ===== */

/* ===== MIM-ANI-ROUND6 START (added 2026-09-23 — safe to delete this whole block) ===== */
@media (min-width: 768px){
  /* House Rules is a full-width two-column block (image | text), unlike the other
     three tabs which are narrow stacked cards. Moving I'M READY after the text made
     it a squeezed third column on desktop. Let it wrap onto its own line instead,
     so desktop reads image | text, then the button underneath. */
  .elementor-element-a4c6ae0{
    flex-wrap: wrap !important;
  }
  /* pin the image and text to their original proportions so only the button wraps */
  .elementor-element-a4c6ae0 > .elementor-element-507e168{
    flex: 0 0 28% !important;
    max-width: 28% !important;
  }
  .elementor-element-a4c6ae0 > .elementor-element-a7741c1{
    flex: 0 0 62% !important;
    max-width: 62% !important;
  }
  .elementor-element-a4c6ae0 > .elementor-element-86fbac1{
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
    margin-top: 30px !important;
  }
}
/* The footer menu nudge (aligning it under the NAVIGATION banner) is a desktop
   move. At exactly tablet width the footer column is narrower and that same 54px
   pushed the second menu column 15px off the right edge. Reset it in the tablet range. */
@media (min-width: 768px) and (max-width: 1024px){
  .elementor-element-a1b2c32{
    left: 0 !important;
    width: auto !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}
/* ===== MIM-ANI-ROUND6 END ===== */

/* ===== MIM-ANI-ROUND7 START (added 2026-09-23 — safe to delete this whole block) ===== */

/* Footer: Whilly rewrote the chapel details as two paragraphs with no gap between
   the address and the opening hours. Spacing them here rather than in the text, so
   it survives him editing the wording again. */
.elementor-element-9a24b44 p + p{
  margin-top: 24px !important;
}

/* WooCommerce product pages had no top padding at all, so the breadcrumb and the
   product title ran underneath the fixed header. Cart, checkout and account pages
   already have their own padding and are left alone. */
/* The product template puts "remove_margins" on the body and zeroes this padding
   with the same specificity as mine, so source order decided it and the theme won.
   Chaining both body classes raises specificity, so this wins on merit not order. */
body.single-product.remove_margins .page_content_wrap,
body.single-product .page_content_wrap{
  padding-top: 175px !important;
}
@media (max-width: 767px){
  body.single-product.remove_margins .page_content_wrap,
  body.single-product .page_content_wrap{
    padding-top: 100px !important;
  }
}
/* ===== MIM-ANI-ROUND7 END ===== */

/* ===== MIM-ANI-PERF START (added 2026-09-24 — safe to delete this whole block) ===== */
/* The hero slides are CSS background images, which means the browser cannot pick a
   smaller file the way it does for normal <img> tags — every phone was downloading
   the full 1672px originals (about 600KB) into a 412px-wide box. These rules hand
   phones and tablets the correctly-sized copies WordPress already generated.
   Desktop is untouched and still gets the full-resolution image. */
@media (max-width: 767px){
  .slider-slide[data-image*="MARRIED-IN-MIAMI-3-1"]{background-image:url("https://marriedinmiami.net/wp-content/uploads/2026/09/MARRIED-IN-MIAMI-3-1-768x432.webp")!important}
  .slider-slide[data-image*="MARRIED-IN-MIAMI-33"]{background-image:url("https://marriedinmiami.net/wp-content/uploads/2026/09/MARRIED-IN-MIAMI-33-768x432.webp")!important}
  .slider-slide[data-image*="married-in-miami-wedding-1"]{background-image:url("https://marriedinmiami.net/wp-content/uploads/2026/09/married-in-miami-wedding-1-768x432.webp")!important}
}
@media (min-width: 768px) and (max-width: 1024px){
  .slider-slide[data-image*="MARRIED-IN-MIAMI-3-1"]{background-image:url("https://marriedinmiami.net/wp-content/uploads/2026/09/MARRIED-IN-MIAMI-3-1-1024x576.webp")!important}
  .slider-slide[data-image*="MARRIED-IN-MIAMI-33"]{background-image:url("https://marriedinmiami.net/wp-content/uploads/2026/09/MARRIED-IN-MIAMI-33-1024x576.webp")!important}
  .slider-slide[data-image*="married-in-miami-wedding-1"]{background-image:url("https://marriedinmiami.net/wp-content/uploads/2026/09/married-in-miami-wedding-1-1024x576.webp")!important}
}
/* ===== MIM-ANI-PERF END ===== */

/* ===== MIM-ANI-SHOPCAT START (added 2026-09-24 — safe to delete this whole block) ===== */
/* Product category pages (Caps & Hats, Accessories, etc).
   Same root cause as the product pages: the template puts "remove_margins" on the
   body, which strips the content wrapper's padding. That did two things —
   (a) the breadcrumb and title sat underneath the fixed header, and
   (b) the theme's product grid uses a negative right margin for its gutters, which
       needs container padding to sit in, so without it the grid hung 30px off the
       right edge and the first column was clipped. Restoring the padding fixes both. */
body.woocommerce-page.remove_margins.archive .page_content_wrap{
  padding-top: 175px !important;
  padding-bottom: 70px !important;
}
body.woocommerce-page.remove_margins.archive .list_products{
  max-width: 1290px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 30px !important;
  padding-right: 30px !important;
}
@media (max-width: 767px){
  body.woocommerce-page.remove_margins.archive .page_content_wrap{
    padding-top: 100px !important;
    padding-bottom: 40px !important;
  }
  body.woocommerce-page.remove_margins.archive .list_products{
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  /* two products per row on phones instead of one, like the WB Edition shop */
  body.woocommerce-page.archive ul.products{ margin-right: -14px !important; }
  body.woocommerce-page.archive ul.products li.product{
    width: 50% !important;
    padding-right: 14px !important;
    margin-bottom: 26px !important;
  }
}
/* ===== MIM-ANI-SHOPCAT END ===== */

/* ===== MIM-ANI-CATTILES START (added 2026-09-24 — safe to delete this whole block) ===== */
/* Shop page: the category row was a line of plain text links. Rebuilt as image
   tiles, same idea as the WB Edition shop. The photos live here in CSS rather than
   in the page, so Whilly can edit the Shop page freely without disturbing them. */
.mim-cat-tiles{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:26px;
  margin:6px 0 4px;
}
/* One clear line of breathing room under "Tap a category to see the products."
   The widget wrapper zeroes margins, hence the extra specificity. */
.elementor-widget .mim-cat-tiles,
.mim-cat-tiles{ margin-top:30px !important; }
.mim-cat-tile{
  display:block;
  text-decoration:none !important;
  border:0 !important;
}
.mim-cat-thumb{
  display:block;
  width:100%;
  aspect-ratio:1/1;
  background:#fbfaf2 center/cover no-repeat;
  border-radius:15px;
  box-shadow:0 2px 10px rgba(0,0,0,.07);
  transition:transform .25s ease, box-shadow .25s ease;
}
.mim-cat-tile:hover .mim-cat-thumb{
  transform:translateY(-3px);
  box-shadow:0 8px 20px rgba(0,0,0,.12);
}
.mim-cat-name{
  display:block;
  margin-top:12px;
  text-align:center;
  text-transform:uppercase;
  letter-spacing:.6px;
  font-size:15px;
  line-height:1.3;
  color:#12505A !important;
}
.mim-cat-tile:hover .mim-cat-name{ color:#7A1225 !important; }
@media (max-width:767px){
  .mim-cat-tiles{ grid-template-columns:repeat(2,1fr); gap:18px; }
  .elementor-widget .mim-cat-tiles,
  .mim-cat-tiles{ margin-top:24px !important; }
  .mim-cat-name{ font-size:13px; margin-top:9px; }
}

.mim-cat-caps-hats .mim-cat-thumb{background-image:url("https://marriedinmiami.net/wp-content/uploads/2026/09/classic-dad-hat-white-front-6ab55399c9a73-300x300.png")}
.mim-cat-mens .mim-cat-thumb{background-image:url("https://marriedinmiami.net/wp-content/uploads/2026/09/unisex-staple-t-shirt-white-front-6ab55be5637de-300x300.png")}
.mim-cat-women .mim-cat-thumb{background-image:url("https://marriedinmiami.net/wp-content/uploads/2026/09/womens-relaxed-t-shirt-white-front-6ab56dfd9fe3a-300x300.png")}
.mim-cat-kids .mim-cat-thumb{background-image:url("https://marriedinmiami.net/wp-content/uploads/2026/09/kids-crew-neck-sweatshirt-natural-heather-front-6ab57bb6039f1-300x300.png")}
.mim-cat-accessories .mim-cat-thumb{background-image:url("https://marriedinmiami.net/wp-content/uploads/2026/09/enhanced-matte-paper-poster-with-hanger-in-white-12x12-front-6ab59759c5022-300x300.png")}
.mim-cat-art .mim-cat-thumb{background-image:url("https://marriedinmiami.net/wp-content/uploads/2026/09/canvas-in-24x30-wall-6ab45c2e52ee9-300x300.png")}
/* ===== MIM-ANI-CATTILES END ===== */

/* ===== MIM-ANI-MEDIA START (added 2026-09-25 — safe to delete this whole block) ===== */
/* Books and Music are not WooCommerce products - they are covers that link out to
   Amazon / Spotify / SoundCloud, same as the WB Edition shop. Their two tiles jump
   down the page instead of going to a category archive. */
.mim-cat-books .mim-cat-thumb{
  background-image:url("https://marriedinmiami.net/wp-content/uploads/2026/09/Palabras-del-Sol-Whilly-Bermudez.webp");
  background-size:contain;
  background-color:#fbfaf2;
}
.mim-cat-music .mim-cat-thumb{
  background-image:url("https://marriedinmiami.net/wp-content/uploads/2026/09/Bible-Songs-Album-1-Whilly-Bermudez-1.webp");
}

/* the header is sticky, so an anchor jump must stop short of it */
#mim-books, #mim-music{ scroll-margin-top:150px; }
@media (max-width:767px){ #mim-books, #mim-music{ scroll-margin-top:110px; } }

.mim-media-grid{
  display:grid;
  gap:30px;
  align-items:stretch;   /* NOT end: bottom-aligning whole cards means a title that
                            wraps onto a second line drags its cover upwards */
}
.mim-media-books{ grid-template-columns:repeat(3,1fr); }
.mim-media-music{ grid-template-columns:repeat(4,1fr); }
.mim-media-item{
  display:flex;
  flex-direction:column;
  text-decoration:none !important;
  border:0 !important;
}
.mim-media-shot{
  display:flex;
  align-items:flex-end;
  justify-content:center;
  flex:0 0 auto;         /* fixed picture area, identical on every card, so the
                            covers sit on one shelf whatever the titles do */
}
/* covers are different shapes - contain keeps every one uncropped */
.mim-media-books .mim-media-shot{ height:330px; }
.mim-media-item img{
  max-width:100%;
  max-height:100%;
  width:auto;
  height:auto;
  border-radius:10px;
  box-shadow:0 3px 14px rgba(0,0,0,.16);
  transition:transform .25s ease, box-shadow .25s ease;
}
.mim-media-music .mim-media-item img{
  width:100%;
  border-radius:12px;
}
.mim-media-books .mim-media-item img[src*="10-Good-Things"]{
  box-shadow:none;   /* this cover is a 3D mock-up already sitting on white */
  border-radius:0;
}
.mim-media-item:hover img{
  transform:translateY(-3px);
  box-shadow:0 10px 24px rgba(0,0,0,.22);
}
.mim-media-name{
  display:block;
  margin-top:14px;
  min-height:2.7em;      /* room for a two-line title without moving anything */
  text-align:center;
  text-transform:uppercase;
  letter-spacing:.6px;
  font-size:14px;
  line-height:1.35;
  color:#12505A !important;
}
.mim-media-item:hover .mim-media-name{ color:#7A1225 !important; }

@media (max-width:1024px){
  .mim-media-music{ grid-template-columns:repeat(3,1fr); }
}
@media (max-width:767px){
  .mim-media-grid{ gap:20px; }
  .mim-media-music{ grid-template-columns:repeat(2,1fr); }
  .mim-media-books{ grid-template-columns:repeat(3,1fr); gap:14px; }
  .mim-media-books .mim-media-shot{ height:170px; }
  .mim-media-books .mim-media-name{ font-size:11px; letter-spacing:.3px; }
  .mim-media-name{ font-size:12px; margin-top:10px; }
}
/* ===== MIM-ANI-MEDIA END ===== *//* End custom CSS */