/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Apr 16 2026 | 18:15:50 */





/* =========================================================
   EVENTS ARCHIVE — MOBILE CARD FIX
   Targets the Events archive template cards
   ========================================================= */
@media (max-width: 921px){

  /* Make the FacetWP grid behave like a clean single-column list */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]{
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  /* Card shell */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .si-event-card{
    background: #ffffff !important;
    border-radius: 18px !important;
    overflow: hidden !important;
    box-shadow: 0 10px 28px rgba(15, 23, 42, 0.14) !important;
    border: 1px solid rgba(15, 23, 42, 0.06) !important;
    position: relative !important;
  }

  /* Image */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .si-event-card__media img{
    width: 100% !important;
    height: 210px !important;
    object-fit: cover !important;
    display: block !important;
  }

  /* Badge */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .si-event-badge{
    position: absolute !important;
    top: 12px !important;
    left: 12px !important;
    z-index: 5 !important;
    background: rgba(15, 23, 42, 0.72) !important;
    color: #fff !important;
    padding: 6px 10px !important;
    border-radius: 999px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    backdrop-filter: blur(6px);
  }

  /* Body spacing */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .si-event-card__body{
    padding: 16px 16px 16px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
  }

  /* Title */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .si-event-card__title{
    margin: 0 !important;
    color: #0b1730 !important;
    font-size: 22px !important;
    line-height: 1.15 !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em !important;
  }

  /* Meta row */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .si-event-card__meta--top{
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px 14px !important;
    align-items: center !important;
    margin: 0 !important;
    color: #0f172a !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
    opacity: .92 !important;
  }

  /* Allow long location to wrap */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .si-event-location{
    white-space: normal !important;
  }

  /* CTA row — make it behave */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .si-event-card__cta{
    margin-top: 6px !important;
    display: flex !important;
    justify-content: flex-start !important;
  }

  /* CTA button — fixes the “ghost blue underline” look */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  a.si-event-card__button,
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  a.si-event-action,
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  a.si-event-btn{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 12px 16px !important;
    min-height: 44px !important;
    border-radius: 12px !important;
    background: var(--ast-global-color-0) !important; /* Share a Story blue */
    border: 1px solid var(--ast-global-color-0) !important;
    color: #fff !important;
    font-weight: 800 !important;
    font-size: 14px !important;
    line-height: 1 !important;
    text-decoration: none !important;
    box-shadow: 0 10px 22px rgba(0,0,0,.12) !important;
    -webkit-tap-highlight-color: transparent !important;
  }

  /* Kill underlines anywhere inside card (mobile Safari likes to underline links) */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  a{
    text-decoration: none !important;
  }
}


/* =========================================================
   SINGLE EVENT (sievents) — MOBILE MATCH DESKTOP LOOK
   (card, image, meta row, button row, typography)
   ========================================================= */
@media (max-width: 921px){

  /* Page padding so the card doesn't feel "stuck" to the edges */
  body.single-sievents .ast-container{
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  /* Main white card wrapper (safe: only affects single event content area) */
  body.single-sievents .entry-content > *:first-child{
    background: #ffffff !important;
    border-radius: 22px !important;
    overflow: hidden !important;
    box-shadow: 0 16px 40px rgba(15, 23, 42, 0.14) !important;
  }

  /* If your single template already has a card class, this will catch it too */
  body.single-sievents .si-event-single,
  body.single-sievents .si-event-single__wrap,
  body.single-sievents .si-event-wrap{
    background: #ffffff !important;
    border-radius: 22px !important;
    overflow: hidden !important;
    box-shadow: 0 16px 40px rgba(15, 23, 42, 0.14) !important;
  }

  /* Hero image: full width, clean crop like desktop */
  body.single-sievents .entry-content img{
    width: 100% !important;
    height: auto !important;
    display: block !important;
  }

  /* Title spacing */
  body.single-sievents h1,
  body.single-sievents .entry-title{
    margin: 18px 0 8px !important;
    line-height: 1.08 !important;
  }

  /* Meta row (date/time/location) tighten + wrap nicely */
  body.single-sievents .si-event-meta,
  body.single-sievents .si-event-details,
  body.single-sievents .si-event-card__meta,
  body.single-sievents .event-meta{
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px 14px !important;
    align-items: center !important;
    margin: 10px 0 14px !important;
  }

  /* Keep location from exploding the row on small screens */
  body.single-sievents .si-event-location,
  body.single-sievents .event-location{
    flex: 1 1 100% !important;
    margin-top: 4px !important;
  }

  /* Button row: match desktop styling, but stack cleanly on mobile */
  body.single-sievents .si-event-actions,
  body.single-sievents .event-actions,
  body.single-sievents .si-event-buttons{
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    margin: 14px 0 18px !important;
  }

  /* Buttons: same pill feel, full-width on mobile */
  body.single-sievents .si-event-actions a,
  body.single-sievents .event-actions a,
  body.single-sievents .si-event-buttons a,
  body.single-sievents a.si-btn,
  body.single-sievents .wp-block-button__link{
    width: 100% !important;
    text-align: center !important;
    border-radius: 999px !important;
    padding: 14px 16px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    text-decoration: none !important;
  }

  /* Body copy spacing like desktop */
  body.single-sievents .entry-content{
    padding: 18px 18px 22px !important;
  }

  body.single-sievents .entry-content p{
    margin: 10px 0 !important;
  }
}


/* =========================================================
   SINGLE SIEVENTS — MOBILE OVERRIDES (MATCH DESKTOP LOOK)
   Add to BOTTOM of your existing single-sievents CSS
   ========================================================= */
@media (max-width: 768px){

  /* Keep the same Apple reader background + spacing but tighter */
  body.single-sievents .site-content{
    padding: 28px 0 70px !important; /* tighter on mobile */
  }

  /* Keep container padding (already set) but ensure no extra top gap */
  body.single-sievents .site-content .ast-container{
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  /* Featured image height already handled (280px) — keep it */

  /* Ensure the "card" max-width still centers and fills nicely */
  body.single-sievents .site-content .ast-featured-image-container,
  body.single-sievents .site-content .post-thumb,
  body.single-sievents .site-content article{
    max-width: 980px !important;
    width: 100% !important;
  }

  /* Inner padding (slightly tighter for mobile) */
  body.single-sievents .site-content article .entry-header{
    padding: 18px 16px 6px !important;
  }
  body.single-sievents .site-content article .entry-content{
    padding: 6px 16px 22px !important;
  }

  /* Title size already set to 26px — keep it, just tighten spacing */
  body.single-sievents .site-content article .entry-title{
    margin: 0 0 10px !important;
  }

  /* META: allow location to wrap cleanly without breaking layout */
  body.single-sievents .si-event-card__meta--top{
    gap: 10px 14px !important;
    margin-top: 6px !important;
    margin-bottom: 12px !important;
  }

  /* If you have a dedicated location span/class, force it full width */
  body.single-sievents .si-event-location,
  body.single-sievents .si-event-card__meta--bottom{
    flex: 1 1 100% !important;
    white-space: normal !important;
  }

  /* =========================================================
     BUTTONS: match your blue pill style, stacked full width
     ========================================================= */
  body.single-sievents .site-content .si-event-actions{
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    margin: 12px 0 22px !important;
  }

  /* All buttons full width, centered */
 body.single-sievents .site-content .si-event-actions a.si-event-action{
  width: 100% !important;
  justify-content: center !important;

  /* 🔽 reduced vertical padding */
  padding: 8px 16px !important;

  border-radius: 999px !important;
  font-size: 14px !important;
  line-height: 1.1 !important;
}


  /* Keep your forced colors exactly as you set them */
  body.single-sievents .entry-content.clear .si-event-actions a.si-event-action--primary,
  body.single-sievents .entry-content.clear .si-event-actions a.si-event-action.si-event-action--primary{
    background: #0A7CFF !important;
    border-color: #0A7CFF !important;
    color: #fff !important;
  }

  body.single-sievents .entry-content.clear .si-event-actions a.si-event-action--ghost,
  body.single-sievents .entry-content.clear .si-event-actions a.si-event-action.si-event-action--ghost{
    background: #fff !important;
  }

  /* Remove hover transform on mobile (prevents weird tap “jump”) */
  body.single-sievents .si-event-actions a.si-event-action:hover{
    transform: none !important;
  }

  /* Paragraph spacing stays Apple clean */
  body.single-sievents .site-content article .entry-content p{
    margin: 0 0 12px !important;
  }
}


/* =========================================================
   SINGLE SIEVENTS — MOBILE: FORCE APPLE WHITE CARD
   (Fixes dark background + white title + image not matching card)
   Paste at VERY BOTTOM of CSS
   ========================================================= */
@media (max-width: 921px){

  /* 1) Page background (Apple off-white) */
  body.single-sievents{
    background: #f4f7fb !important;
  }

  /* 2) Make sure content area isn't being forced dark */
  body.single-sievents .site-content{
    background: transparent !important;
    padding: 28px 0 70px !important;
  }

  /* 3) Featured image wrapper = TOP of the card (white + rounded) */
  body.single-sievents .site-content .ast-featured-image-container,
  body.single-sievents .site-content .post-thumb,
  body.single-sievents .site-content .ast-single-post-featured-section,
  body.single-sievents .site-content .ast-single-post-featured-section .post-thumb{
    background: #ffffff !important;
    max-width: 980px !important;
    margin: 0 auto !important;
    border-radius: 22px 22px 0 0 !important;
    overflow: hidden !important;
    box-shadow: 0 18px 55px rgba(0,0,0,.18) !important;
  }

  /* Image itself */
  body.single-sievents .site-content .ast-featured-image-container img,
  body.single-sievents .site-content .post-thumb img{
    width: 100% !important;
    height: 280px !important;
    object-fit: cover !important;
    display: block !important;
  }

  /* 4) Article = BOTTOM of the same card (white + stitched) */
  body.single-sievents .site-content article{
    background: #ffffff !important;
    max-width: 980px !important;
    margin: 0 auto !important;
    border-radius: 0 0 22px 22px !important;
    margin-top: -16px !important; /* stitch image + article */
    box-shadow: 0 18px 55px rgba(0,0,0,.18) !important;
    overflow: hidden !important;
    padding: 0 !important;
    border-top: 1px solid rgba(15,23,42,.06) !important;
  }

  /* 5) Force Apple black text + remove any “dark mode” overrides */
  body.single-sievents .site-content article,
  body.single-sievents .site-content article .entry-content,
  body.single-sievents .site-content article .entry-content *{
    color: #0f172a !important;
  }

  /* Title = Apple black (not white) */
  body.single-sievents .site-content article .entry-title{
    color: #0b1730 !important;
    font-size: 26px !important;
    line-height: 1.15 !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em !important;
    margin: 0 0 10px !important;
  }

  /* 6) Inner padding (Apple spacing) */
  body.single-sievents .site-content article .entry-header{
    padding: 18px 16px 6px !important;
    margin: 0 !important;
    background: transparent !important;
  }
  body.single-sievents .site-content article .entry-content{
    padding: 6px 16px 22px !important;
    background: transparent !important;
  }

  /* 7) Meta row: make sure it’s readable (not faded) */
  body.single-sievents .site-content .si-event-card__meta,
  body.single-sievents .site-content .si-event-card__meta--top{
    color: #0f172a !important;
    opacity: 1 !important;
    font-size: 13.5px !important;
    line-height: 1.35 !important;
    margin: 0 0 12px !important;
  }

  /* 8) Buttons: stacked full width (keeps your nice pills) */
  body.single-sievents .site-content .si-event-actions{
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    margin: 12px 0 22px !important;
    padding-top: 0 !important;
  }

body.single-sievents .site-content .si-event-actions a.si-event-action{
  width: 100% !important;
  justify-content: center !important;
  border-radius: 999px !important;

  /* 🔽 less chunky (closer to archive) */
  padding: 9px 16px !important;
  font-size: 14px !important;
  line-height: 1.1 !important;

  text-decoration: none !important;
}


  /* Kill any mobile hover/tap jump */
  body.single-sievents .site-content .si-event-actions a.si-event-action:hover{
    transform: none !important;
  }
}

/* =========================================================
   SINGLE SIEVENTS — MOBILE: FORCE SAME APPLE LOOK
   (wins over any theme/mobile rules)
   ========================================================= */
@media (max-width: 768px){

  body.single-sievents{
    background: #f4f7fb !important;
  }

  body.single-sievents .site-content{
    padding: 28px 0 70px !important;
    background: transparent !important;
  }

  /* Ensure card stays white + text stays black on mobile */
  body.single-sievents .site-content article{
    background: #ffffff !important;
  }

  body.single-sievents .site-content article,
  body.single-sievents .site-content article .entry-header,
  body.single-sievents .site-content article .entry-content{
    color: #0f172a !important;
  }

  body.single-sievents .site-content article .entry-title{
    color: #0b1730 !important;
  }

  /* Make featured image + article read as ONE card on mobile */
  body.single-sievents .site-content .ast-featured-image-container,
  body.single-sievents .site-content .post-thumb{
    max-width: 980px !important;
    margin: 0 auto !important;
    border-radius: 22px 22px 0 0 !important;
  }

  body.single-sievents .site-content article{
    max-width: 980px !important;
    margin: -16px auto 0 !important;
    border-radius: 0 0 22px 22px !important;
    overflow: hidden !important;
  }

  /* Kill “Next Events” / navigation + the divider spacing on mobile */
  body.single-sievents .post-navigation,
  body.single-sievents .navigation.post-navigation,
  body.single-sievents .ast-post-navigation,
  body.single-sievents .nav-links,
  body.single-sievents .nav-next,
  body.single-sievents a[rel="next"]{
    display: none !important;
    border: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}


/* =========================================================
   SINGLE SIEVENTS — MOBILE: FORCE ONE CARD (NO SUB-CARDS)
   ========================================================= */
@media (max-width: 768px){

  /* Off-white page */
  body.single-sievents{ background:#f4f7fb !important; }
  body.single-sievents .site-content{
    padding: 26px 0 70px !important;
    background: transparent !important;
  }

  /* Keep container safe (header untouched) */
  body.single-sievents .site-content .ast-container{
    padding: 0 14px !important;
  }

  /* --- 1 CARD: image (top) + article (bottom) stitched --- */
  body.single-sievents .site-content .ast-featured-image-container,
  body.single-sievents .site-content .post-thumb{
    max-width: 980px !important;
    margin: 0 auto !important;
    border-radius: 22px 22px 0 0 !important;
    overflow: hidden !important;
    background: #fff !important;
    box-shadow: 0 18px 55px rgba(0,0,0,.18) !important;
  }

  body.single-sievents .site-content .ast-featured-image-container img,
  body.single-sievents .site-content .post-thumb img{
    width: 100% !important;
    height: 280px !important;
    object-fit: cover !important;
    display: block !important;
  }

  body.single-sievents .site-content article{
    max-width: 980px !important;
    margin: -16px auto 0 !important;              /* stitch */
    border-radius: 0 0 22px 22px !important;
    overflow: hidden !important;

    background: #fff !important;
    box-shadow: 0 18px 55px rgba(0,0,0,.18) !important;

    padding: 0 !important;
    border-top: 1px solid rgba(15,23,42,.06) !important;
  }

  /* Inner padding */
  body.single-sievents .site-content article .entry-header{
    padding: 18px 18px 8px !important;
    margin: 0 !important;
  }
  body.single-sievents .site-content article .entry-content{
    padding: 8px 18px 24px !important;
    color: #0f172a !important;
    background: transparent !important;           /* prevent “second card” look */
  }

  /* Title */
  body.single-sievents .site-content article .entry-title{
    color:#0b1730 !important;
    font-size: 26px !important;
    line-height: 1.15 !important;
    font-weight: 800 !important;
    margin: 0 0 10px !important;
  }

  /* =====================================================
     KILL THE “META SUB-CARD” (date/time/location pill)
     ===================================================== */
  body.single-sievents .site-content .si-event-card__meta,
  body.single-sievents .site-content .si-event-card__meta--top,
  body.single-sievents .site-content .si-event-card__meta--bottom{
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin: 0 0 12px !important;
  }

  /* Meta spacing + wrap */
  body.single-sievents .site-content .si-event-card__meta--top{
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px 14px !important;
    align-items: center !important;
    font-size: 13.5px !important;
    line-height: 1.35 !important;
    color: #0f172a !important;
    opacity: .92 !important;
  }

  /* Location can wrap */
  body.single-sievents .site-content .si-event-location{
    white-space: normal !important;
  }

  /* =====================================================
     Buttons inside the same card (no separate panels)
     ===================================================== */
  body.single-sievents .site-content .si-event-actions{
    margin: 12px 0 18px !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;

    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    align-items: stretch !important;
  }

  body.single-sievents .site-content .si-event-actions a.si-event-action{
    width: 100% !important;
    justify-content: center !important;
    border-radius: 999px !important;
    padding: 9px 18px !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
  }

  /* Back button */
  body.single-sievents .site-content .si-event-actions a.si-event-action--ghost{
    background: #ffffff !important;
    color: #0b1730 !important;
    border: 1px solid rgba(15,23,42,.20) !important;
    box-shadow: 0 8px 18px rgba(15,23,42,.08) !important;
  }

  /* Primary buttons (Share a Story blue) */
  body.single-sievents .site-content .si-event-actions a.si-event-action--primary{
    background: var(--ast-global-color-0) !important;
    border: 1px solid var(--ast-global-color-0) !important;
    color: #fff !important;
    box-shadow: 0 12px 26px rgba(0,0,0,.16) !important;
  }
	
	

/* =========================================================
   EVENTS – MOBILE CARD POLISH (SAFE REFINEMENTS)
   Page ID: 2960
   ========================================================= */
@media (max-width: 921px) {

  /* ---------- Title: stronger + tighter ---------- */
  body.page-id-2960
  .si-event-card__title {
    font-weight: 700 !important;
    line-height: 1.25 !important;
    margin-bottom: 10px !important;
  }

  /* ---------- Date / Time row alignment ---------- */
  body.page-id-2960
  .si-event-card__meta--top {
    display: flex !important;
    gap: 6px !important;
    align-items: center !important;
    font-size: 14px !important;
  }

  body.page-id-2960
  .si-event-card__meta--top span {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
  }

  /* ---------- Location: clamp to 2 lines ---------- */
  body.page-id-2960
  .si-event-location {
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    margin-top: 6px !important;
  }

  /* ---------- CTA Buttons: subtle premium feel ---------- */
  body.page-id-2960
  .si-event-card .si-btn,
  body.page-id-2960
  .si-event-card a.button {
    padding: 12px 18px !important;
    border-radius: 14px !important;
    box-shadow: 0 6px 14px rgba(15, 23, 42, 0.18) !important;
  }

}

	
  /* Remove Next/Prev + divider */
  body.single-sievents .post-navigation,
  body.single-sievents .navigation.post-navigation,
  body.single-sievents .ast-post-navigation,
  body.single-sievents .nav-links,
  body.single-sievents .nav-next,
  body.single-sievents a[rel="next"]{
    display:none !important;
    border:0 !important;
    margin:0 !important;
    padding:0 !important;
  }
}


/* =========================================================
   SINGLE EVENT (sievents) — MOBILE MICRO POLISH
   Applies to: single event pages (body.single-sievents)
   ========================================================= */
@media (max-width: 921px){

  /* 1) Breathing room above CTA buttons/links */
  body.single-sievents .entry-content a.si-btn,
  body.single-sievents .entry-content .si-btn,
  body.single-sievents .entry-content a.wp-block-button__link,
  body.single-sievents .entry-content a.button,
  body.single-sievents .entry-content .ast-button,
  body.single-sievents .entry-content button{
    margin-top: 18px !important;
  }

  /* 2) Slightly smaller description/body copy for hierarchy */
  body.single-sievents .entry-content p{
    font-size: 15px !important;
    line-height: 1.45 !important;
  }

  /* 3) Divider above the first paragraph (Apple-ish) */
  body.single-sievents .entry-content p:first-of-type{
    padding-top: 14px !important;
    border-top: 1px solid rgba(15, 23, 42, 0.06) !important;
  }

}

@media (max-width: 921px){
  body.single-sievents .entry-content a.si-btn,
  body.single-sievents .entry-content .si-btn,
  body.single-sievents .entry-content a.wp-block-button__link,
  body.single-sievents .entry-content a.button,
  body.single-sievents .entry-content .ast-button,
  body.single-sievents .entry-content button{
    padding: 12px 18px !important;   /* tighter */
    border-radius: 16px !important;  /* still premium */
  }
}

@media (max-width: 921px){
  body.single-sievents .entry-content a.si-btn + a.si-btn,
  body.single-sievents .entry-content .si-btn + .si-btn,
  body.single-sievents .entry-content a.button + a.button{
    margin-top: 12px !important;
  }
}

@media (max-width: 921px){
  body.single-sievents .entry-content p{
    color: rgba(15,23,42,0.84) !important;
  }
}


/* =========================================================
   SINGLE EVENT (sievents) — MOBILE: MATCH NEWS TOP SPACING
   (reduces the lift so it sits like News)
   ========================================================= */
@media (max-width: 921px){

  /* Give the content a consistent top cushion like News */
  body.single-sievents .site-content{
    padding-top: 18px !important;  /* adjust 12–18 if needed */
    margin-top: 0 !important;
  }

  /* Reduce the previous pull-up (was too strong) */
  body.single-sievents .ast-container{
    margin-top: 0 !important;      /* was negative before */
  }

}



/* =========================================================
   SINGLE EVENT (sievents) — MATCH NEWS SINGLE (NO CARD)
   Removes the card container look and restores Astra single layout
   ========================================================= */
body.single-sievents .ast-container #primary{
  background: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  overflow: visible !important;
}

body.single-sievents .site-content article,
body.single-sievents .ast-article-single{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Featured image: remove “card top corners” and let it behave like News */
body.single-sievents .ast-single-post-featured-section.post-thumb{
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
  margin: 0 0 22px !important;
}

body.single-sievents .ast-single-post-featured-section.post-thumb img{
  border-radius: 0 !important;
}


@media (max-width: 921px){
  body.single-sievents .ast-single-post-featured-section.post-thumb{
    margin-bottom: 14px !important;
  }
}

body.single-sievents .entry-title{
  font-weight: 800 !important;
}

@media (max-width: 921px){
  body.single-sievents
  .ast-single-post-featured-section.post-thumb{
    margin-bottom: 12px !important;
  }
}




/* SINGLE EVENT (mobile) — put the two CTAs on one line */
@media (max-width: 600px){

  /* 1) The wrapper that holds both buttons (include multiple safe targets) */
  body.single-sievents .si-event-actions,
  body.single-sievents .si-event-ctas,
  body.single-sievents .si-event-buttons{
    display: flex !important;
    flex-direction: row !important;
    gap: 12px !important;
    align-items: stretch !important;
  }

  /* 2) The buttons inside that wrapper */
  body.single-sievents .si-event-actions a,
  body.single-sievents .si-event-actions button,
  body.single-sievents .si-event-ctas a,
  body.single-sievents .si-event-ctas button,
  body.single-sievents .si-event-buttons a,
  body.single-sievents .si-event-buttons button{
    flex: 1 1 0 !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    white-space: nowrap !important; /* keeps them from wrapping weird */
  }

  /* Optional: if the labels are long, let them shrink slightly instead of wrapping */
  body.single-sievents .si-event-actions a,
  body.single-sievents .si-event-ctas a,
  body.single-sievents .si-event-buttons a{
    font-size: 15px !important;
  }
}


/* =========================================================
   FORMIDABLE — REDUCE SIDE PADDING INSIDE CARDS ONLY
   ========================================================= */

/* Reduce padding on the white card/container */
.frm_forms .frm_form_fields,
.frm_forms .frm_fields_container{
  padding-left: 0px !important;
  padding-right: 0px !important;
}

/* Reduce padding on each field wrapper */
.frm_forms .frm_form_field{
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Reduce padding inside inputs/textareas themselves */
.frm_forms input[type="text"],
.frm_forms input[type="email"],
.frm_forms input[type="tel"],
.frm_forms input[type="url"],
.frm_forms input[type="number"],
.frm_forms input[type="search"],
.frm_forms textarea,
.frm_forms select{
  padding-left: 12px !important;
  padding-right: 12px !important;
}


/* =========================================================
   FORMIDABLE — TRUE EDGE-TO-EDGE FIELDS INSIDE CARD
   ========================================================= */

/* Kill Formidable's inner row padding */
.frm_forms .frm_form_fields,
.frm_forms .frm_fields_container,
.frm_forms .frm_form_field_wrapper{
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Pull fields closer to card edges */
.frm_forms .frm_form_field{
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Inputs stretch fully */
.frm_forms input[type="text"],
.frm_forms input[type="email"],
.frm_forms input[type="tel"],
.frm_forms input[type="url"],
.frm_forms input[type="number"],
.frm_forms input[type="search"],
.frm_forms textarea,
.frm_forms select{
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  padding-left: 0px !important;
  padding-right: 0px !important;
}


/* =========================================================
   FORMIDABLE — HOUR + MINUTE DROPDOWNS (NO OVERFLOW)
   ========================================================= */
@media (max-width: 768px){

  /* wrapper for the hour/minute selects */
  .frm_forms .frm_time_wrap{
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    align-items: center !important;
    max-width: 100% !important;
  }

  /* hour + minute selects */
  .frm_forms .frm_time_wrap select{
    flex: 1 1 140px !important;   /* both can shrink & wrap */
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  /* the ":" separator */
  .frm_forms .frm_time_wrap .frm_time_sep{
    flex: 0 0 auto !important;
    margin: 0 2px !important;
  }
}


@media (max-width: 921px){
  .si-event-cta-row{
    display:flex !important;
    gap:12px !important;
    align-items:stretch !important;
  }

  .si-event-cta-row .si-event-btn{
    flex:1 1 0 !important;
    width:auto !important;
    margin:0 !important;
    white-space:nowrap;
  }
}


@media (max-width: 921px){

  /* FORCE the wrapper to be a 2-column row */
  body.single-sievents .site-content article .entry-content .si-event-actions{
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 12px !important;
    align-items: stretch !important;
    width: 100% !important;
  }

  /* FORCE each button to occupy half the row (and override any width:100%) */
  body.single-sievents .site-content article .entry-content .si-event-actions > a{
    flex: 1 1 0 !important;
    width: 50% !important;
    max-width: 50% !important;
    min-width: 0 !important;
    margin: 0 !important;
    display: inline-flex !important;
    justify-content: center !important;
    align-items: center !important;
    white-space: nowrap !important;
  }

}

/* ultra-narrow: stack instead of crushing */
@media (max-width: 360px){
  body.single-sievents .site-content article .entry-content .si-event-actions{
    flex-wrap: wrap !important;
  }
  body.single-sievents .site-content article .entry-content .si-event-actions > a{
    width: 100% !important;
    max-width: 100% !important;
    flex: 1 1 100% !important;
  }
}

@media (max-width: 768px) {
  .si-event-actions .si-btn {
    padding: 12px 18px;
    font-size: 15px;
  }
}

@media (max-width: 768px) {
  .si-event-actions {
    display: flex;
    gap: 12px;
    flex-wrap: nowrap;
  }
}

@media (max-width: 768px) {
  .si-event-actions .si-btn {
    flex: 1;
    text-align: center;
  }
}

/* =========================================================
   SINGLE EVENT — MOBILE POLISH PACK
   (visual refinement only, no layout risk)
   ========================================================= */

@media (max-width: 768px) {

  /* Tighten space between location and buttons */
  .si-event-location {
    margin-bottom: 10px !important;
  }

  /* Subtle divider above buttons (Apple-style) */
  .si-event-actions {
    padding-top: 14px !important;
    border-top: 1px solid rgba(0,0,0,0.06) !important;
  }

  /* Slight button shadow for depth */
  .si-event-actions .si-btn {
    box-shadow: 0 4px 10px rgba(0,0,0,0.08) !important;
  }

  /* Press feedback (feels native on iOS) */
  .si-event-actions .si-btn:active {
    transform: scale(0.97);
  }

  /* Make date + time visually lighter */
  .si-event-meta {
    opacity: 0.85;
    font-size: 15px;
  }

  /* Reduce body text density for readability */
  .si-event-content p {
    line-height: 1.55;
    font-size: 15px;
  }

}

/* =========================================================
   SINGLE EVENT — MOBILE FINAL POLISH
   (visual refinement only)
   ========================================================= */

@media (max-width: 768px) {

  /* Title spacing + weight */
  .si-event-title,
  .si-single-event h1 {
    margin-bottom: 10px !important;
    line-height: 1.2 !important;
  }

  /* Date + time row */
  .si-event-meta {
    margin-bottom: 6px !important;
    font-size: 15px !important;
    opacity: 0.9;
  }

  /* Location line */
  .si-event-location {
    font-size: 15px !important;
    line-height: 1.4 !important;
    margin-bottom: 14px !important;
  }

  /* Button section separation */
  .si-event-actions {
    margin-top: 14px !important;
    padding-top: 16px !important;
    padding-bottom: 10px !important;
    border-top: 1px solid rgba(0,0,0,0.06) !important;
  }

  /* Buttons – slightly softer + premium */
  .si-event-actions .si-btn {
    box-shadow: 0 6px 14px rgba(0,0,0,0.10) !important;
    letter-spacing: 0.2px;
  }

  /* Description text */
  .si-event-content,
  .si-single-event p {
    margin-top: 18px !important;
    font-size: 15.5px !important;
    line-height: 1.6 !important;
    color: #111;
  }

  /* Image polish */
  .si-single-event img,
  .si-event-hero img {
    border-radius: 14px !important;
  }

}

/* =========================================================
   SINGLE EVENT — REDUCE SPACE UNDER MENU (MOBILE)
   Match News single/archive spacing
   ========================================================= */

@media (max-width: 768px) {

  /* Reduce top padding on single event content wrapper */
  body.single-sievents .site-content,
  body.single-sievents .ast-container {
    padding-top: 0px !important;
    margin-top: 0 !important;
  }

  /* If Astra adds extra spacing above the title */
  body.single-sievents .entry-content {
    margin-top: 0 !important;
  }

  /* Pull hero image up slightly */
  body.single-sievents .si-event-hero,
  body.single-sievents .si-single-event img:first-of-type {
    margin-top: 0 !important;
  }

}


/* =========================================================
   EVENTS ARCHIVE (Page ID 2960) — TOP SPACING + CTA PILL
   ========================================================= */

/* 1) Reduce space under header (mobile only, events archive only) */
@media (max-width: 768px){
  body.page-id-2960 .site-content{
    padding-top: 0 !important;
    margin-top: 0 !important;
  }
  body.page-id-2960 .ast-container{
    padding-top: 0 !important;
  }
  body.page-id-2960 .entry-content{
    margin-top: -12px !important;
  }
}

/* 2) Make card body a column so CTA can sit at the bottom */
body.page-id-2960
.facetwp-wrapper.si-events-wrap
.facetwp-template[data-name="events"]
.si-event-card__body{
  display: flex !important;
  flex-direction: column !important;
  min-height: 100% !important;
}

/* 3) CTA row bottom centered */
body.page-id-2960
.facetwp-wrapper.si-events-wrap
.facetwp-template[data-name="events"]
.si-event-card__actions{
  margin-top: auto !important;
  display: flex !important;
  justify-content: center !important;
  padding-top: 14px !important;
}

/* 4) Real pill button */
body.page-id-2960
.facetwp-wrapper.si-events-wrap
.facetwp-template[data-name="events"]
.si-event-card__cta{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 12px 18px !important;
  border-radius: 999px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  line-height: 1 !important;

  background: var(--ast-global-color-0) !important; /* matches your theme */
  color: #fff !important;

  min-width: 170px !important;
  box-shadow: 0 8px 18px rgba(0,0,0,0.12) !important;
}

/* 5) Ensure CTA is clickable above full-card overlay link */
body.page-id-2960
.facetwp-wrapper.si-events-wrap
.facetwp-template[data-name="events"]
.si-event-card__actions,
body.page-id-2960
.facetwp-wrapper.si-events-wrap
.facetwp-template[data-name="events"]
.si-event-card__cta{
  position: relative !important;
  z-index: 5 !important;
}

/* Nice tap feedback */
body.page-id-2960
.facetwp-wrapper.si-events-wrap
.facetwp-template[data-name="events"]
.si-event-card__cta:active{
  transform: scale(0.98);
}


/* =========================================================
   EVENTS ARCHIVE (Page 2960) — DESKTOP CTA FIX (NO MOBILE CHANGES)
   Pins "View details" pill to bottom-center on desktop
   ========================================================= */

@media (min-width: 769px){

  /* Make sure the card establishes a positioning context */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .si-event-card{
    position: relative !important;
    overflow: visible !important; /* prevent clipping */
  }

  /* Give the body room at the bottom so CTA never overlaps content */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .si-event-card__body{
    position: relative !important;
    padding-bottom: 72px !important; /* space reserved for the button */
  }

  /* Force the actions row to the bottom-center (desktop only) */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .si-event-card__actions{
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 18px !important;
    display: flex !important;
    justify-content: center !important;
    z-index: 10 !important; /* above overlay link */
  }

  /* Ensure the CTA itself is clickable and visible */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .si-event-card__cta{
    position: relative !important;
    z-index: 11 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 170px !important;
    padding: 12px 18px !important;
    border-radius: 999px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    background: var(--ast-global-color-0) !important;
    color: #fff !important;
    box-shadow: 0 8px 18px rgba(0,0,0,0.12) !important;
  }
}


/* =========================================================
   EVENTS ARCHIVE (Page 2960) — DESKTOP: FORCE CTA SHOW
   (MOBILE UNTOUCHED)
   ========================================================= */

@media (min-width: 769px){

  /* Undo any desktop-only "reserve space" that shrunk cards */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .si-event-card__body{
    padding-bottom: 18px !important; /* normal */
  }

  /* FORCE the actions row to exist + be visible */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .si-event-card__actions{
    display: flex !important;
    justify-content: center !important;
    margin-top: 16px !important;
    padding-top: 0 !important;
    position: relative !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    overflow: visible !important;
    z-index: 50 !important;
    pointer-events: auto !important;
  }

  /* FORCE the button styles + visibility */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .si-event-card__cta{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 170px !important;
    padding: 12px 18px !important;
    border-radius: 999px !important;
    font-weight: 700 !important;
    text-decoration: none !important;

    background: var(--ast-global-color-0) !important;
    color: #fff !important;

    visibility: visible !important;
    opacity: 1 !important;
    z-index: 60 !important;
    pointer-events: auto !important;
  }

  /* Prevent any clipping from the card itself */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .si-event-card{
    overflow: visible !important;
  }
}

/* =========================================================
   EVENTS ARCHIVE (Page ID 2960) — DESKTOP CTA BUTTON
   Uses the existing full-card overlay link, so it works
   even if CTA HTML is missing on desktop.
   MOBILE UNTOUCHED.
   ========================================================= */

@media (min-width: 769px){

  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .si-event-card{
    position: relative !important;
  }

  /* make sure overlay link fills card */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .si-event-card__link{
    position: absolute !important;
    inset: 0 !important;
    z-index: 2 !important;
  }

  /* "View details" pill rendered on the overlay link */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .si-event-card__link::after{
    content: "View details";
    position: absolute;
    left: 50%;
    bottom: 18px;
    transform: translateX(-50%);

    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-width: 170px;
    padding: 12px 18px;
    border-radius: 999px;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;

    background: var(--ast-global-color-0);
    color: #fff;

    box-shadow: 0 8px 18px rgba(0,0,0,0.12);
    z-index: 3;
    pointer-events: none; /* keeps the whole link clickable */
  }

  /* give a little breathing room so text never sits behind the button */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .si-event-card__body{
    padding-bottom: 68px !important;
  }
}

/* =========================================================
   EVENTS ARCHIVE (Page ID 2960) — FINAL DESKTOP BUTTON + FIXED HEIGHT
   - Mobile untouched (keeps real CTA)
   - Desktop uses pseudo "View details" on overlay link (always works)
   ========================================================= */

/* =======================
   DESKTOP / TABLET
   ======================= */
@media (min-width: 769px){

  /* 1) Fixed height cards (adjust height if you want) */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .si-event-card{
    height: 520px !important;   /* <-- tweak */
    position: relative !important;
    overflow: visible !important;
  }

  /* Keep image area consistent */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .si-event-card__media{
    height: 210px !important;  /* <-- tweak */
    overflow: hidden !important;
    border-top-left-radius: inherit;
    border-top-right-radius: inherit;
  }

  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .si-event-card__media img{
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
  }

  /* 2) Hide the real CTA on desktop to prevent duplicates / randomness */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .si-event-card__actions{
    display: none !important;
  }

  /* 3) Ensure overlay link covers the card (click-anywhere behavior) */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .si-event-card__link{
    position: absolute !important;
    inset: 0 !important;
    z-index: 2 !important;
  }

  /* 4) Add the desktop pill button (always visible) */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .si-event-card__link::after{
    content: "View details" !important;
    position: absolute !important;
    left: 50% !important;
    bottom: 18px !important;
    transform: translateX(-50%) !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    min-width: 170px !important;
    padding: 12px 18px !important;
    border-radius: 999px !important;
    font-weight: 700 !important;
    line-height: 1 !important;

    background: var(--ast-global-color-0) !important;
    color: #fff !important;

    box-shadow: 0 8px 18px rgba(0,0,0,0.12) !important;

    z-index: 3 !important;
    pointer-events: none !important; /* keeps the whole card clickable */
    white-space: nowrap !important;
  }

  /* 5) Reserve space so the button never overlaps content */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .si-event-card__body{
    padding-bottom: 70px !important;
    box-sizing: border-box !important;
  }
}


/* =======================
   MOBILE (DO NOT TOUCH)
   ======================= */
@media (max-width: 768px){

  /* Make sure the mobile CTA remains visible */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .si-event-card__actions{
    display: flex !important;
  }

  /* Ensure desktop pseudo button never appears on mobile */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .si-event-card__link::after{
    content: none !important;
  }
}

/* =========================================================
   EVENTS ARCHIVE (Page ID 2960) — MOBILE: REMOVE TOP GAP
   ========================================================= */
@media (max-width: 921px){

  /* 1) Kill any Astra page header/title spacing (common culprit) */
  body.page-id-2960 .entry-header,
  body.page-id-2960 .ast-page-header,
  body.page-id-2960 .ast-archive-description,
  body.page-id-2960 header.entry-header{
    margin: 0 !important;
    padding: 0 !important;
  }

  /* 2) Pull the content area up */
  body.page-id-2960 #content.site-content,
  body.page-id-2960 .site-content,
  body.page-id-2960 .ast-container,
  body.page-id-2960 #primary.content-area,
  body.page-id-2960 main.site-main{
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  /* 3) If FacetWP wrapper/template adds spacing, remove it */
  body.page-id-2960 .facetwp-wrapper.si-events-wrap,
  body.page-id-2960 .facetwp-template[data-name="events"],
  body.page-id-2960 .facetwp-template{
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  /* 4) Last resort: reduce the first thing inside the main content */
  body.page-id-2960 main.site-main > :first-child{
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
}

/* =========================================================
   EVENTS ARCHIVE — MOBILE: TIGHTEN CARD SPACING
   Match Businesses mobile spacing
   ========================================================= */
@media (max-width: 921px){

  /* Reduce vertical gap between FacetWP rows */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .fwp-row{
    row-gap: 16px !important;   /* businesses ≈ 14–16px */
  }

  /* Remove extra bottom margin on each event card */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  .si-event-card{
    margin-bottom: 0 !important;
  }

  /* Tighten inner card padding slightly (keeps it clean, not cramped) */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .si-event-card__body{
    padding-bottom: 12px !important;
  }
}


/* =========================================================
   EVENTS — STATUS BADGES (Today / Tomorrow / Upcoming)
   ========================================================= */

/* Base badge styling */
.si-event-badge{
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 3;

  padding: 6px 12px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;

  color: #fff;
  background: #111827; /* default */
  box-shadow: 0 10px 22px rgba(0,0,0,.18);
}

/* Ensure badge sits correctly on the media area */
.si-event-card__media{
  position: relative;
}

/* TODAY */
.si-event-badge.is-today{
  background: #16a34a; /* green */
}

/* TOMORROW */
.si-event-badge.is-tomorrow{
  background: #f59e0b; /* amber */
  color: #111827;
}

/* UPCOMING */
.si-event-badge.is-upcoming{
  background: rgba(17,24,39,.88); /* dark */
}


/* =========================================================
   EVENTS — BADGE COLORS (NUCLEAR OVERRIDE)
   Put this at the very bottom of Additional CSS
   ========================================================= */

body.page-id-2960
.facetwp-wrapper.si-events-wrap
.facetwp-template[data-name="events"]
.si-event-card__media
.si-event-badge.is-today{
  background:#16a34a !important;
  color:#ffffff !important;
}

body.page-id-2960
.facetwp-wrapper.si-events-wrap
.facetwp-template[data-name="events"]
.si-event-card__media
.si-event-badge.is-tomorrow{
  background:#f5c542 !important;
  color:#ffffff !important;
}

body.page-id-2960
.facetwp-wrapper.si-events-wrap
.facetwp-template[data-name="events"]
.si-event-card__media
.si-event-badge.is-upcoming{
  background:rgba(17,24,39,.88) !important;
  color:#ffffff !important;
}


/* =========================================================
   SIJOBS — SINGLE JOB = SINGLE NEWS APPLE STYLE (NO CARD)
   Does NOT touch header/footer
   ========================================================= */

/* Off-white page background (content area only) */
body.single-sijobs .site-content{
  background: #f7f8fb;
}

/* Hide Astra default header/title for single jobs */
body.single-sijobs .entry-header{
  display: none !important;
}

/* SINGLE JOBS — constrain ONLY the content column (not header/footer) */
body.single-sijobs #primary,
body.single-sijobs .site-main{
  max-width: 980px;
  margin-left: auto;
  margin-right: auto;
}

body.single-sijobs .si-job-single,
body.single-sijobs .entry-content{
  max-width: 860px;
  margin-left: auto;
  margin-right: auto;
}


/* --- polish spacing + typography --- */
body.single-sijobs .si-job-single{
  padding-top: 8px;
}

body.single-sijobs .si-job-single__title{
  letter-spacing: -0.02em;
}

body.single-sijobs .si-job-single__sub{
  margin-bottom: 2px;
}

/* Make the image less overwhelming + more “news hero” */
body.single-sijobs .si-job-single__media{
  max-height: 520px;
}
body.single-sijobs .si-job-single__media img{
  width: 100%;
  height: 520px;
  object-fit: contain;     /* keeps logos from cropping */
  background: #fff;        /* clean frame */
}

/* Make the meta row tighter + cleaner */
body.single-sijobs .si-job-single__meta{
  margin-top: 12px;
}

/* Button matches your site CTA styling */
body.single-sijobs .si-job-single__btn{
  box-shadow: 0 12px 24px rgba(15,23,42,.14);
}

/* Add a subtle divider between header and description (news-like) */
body.single-sijobs .entry-content{
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid rgba(15,23,42,.10);
}

/* Keep paragraphs readable */
body.single-sijobs .entry-content p{
  margin: 0 0 14px;
}

/* Mobile: don’t force tall hero */
@media (max-width: 921px){
  body.single-sijobs .si-job-single__media img{
    height: auto;
    object-fit: cover;
  }
}


/* Match Share a Story button color EXACTLY */
body.single-sijobs .si-job-single__btn{
  background: var(--ast-global-color-0); /* Astra primary blue */
  color: #fff;
  box-shadow: 0 12px 24px rgba(15,23,42,.14);
}

body.single-sijobs .si-job-single__btn:hover{
  filter: brightness(1.05);
}


/* Slightly tighten the hero → title spacing */
body.single-sijobs .si-job-single__media{
  margin-bottom: 10px;
}

/* Title polish (Apple-like) */
body.single-sijobs .si-job-single__title{
  letter-spacing: -0.02em;
}

/* Meta row balance */
body.single-sijobs .si-job-single__meta{
  margin-top: 10px;
}

/* Make pills softer */
body.single-sijobs .si-job-single__pill{
  background: rgba(15,23,42,.05);
}

/* Improve readability of job body */
body.single-sijobs .entry-content{
  max-width: 860px;
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid rgba(15,23,42,.10);
}

/* Better paragraph rhythm */
body.single-sijobs .entry-content p{
  margin-bottom: 16px;
}

/* Prevent giant logos from feeling overwhelming */
body.single-sijobs .si-job-single__media img{
  max-height: 520px;
  object-fit: contain;
  background: #fff;
}

/* Mobile refinements */
@media (max-width: 921px){
  body.single-sijobs .si-job-single__media img{
    max-height: 320px;
  }

  body.single-sijobs .si-job-single__title{
    font-size: 24px;
  }
}

/* FORCE single job primary button to match Astra primary (Share a Story) */
body.single-sijobs a.si-job-single__btn.is-primary{
  background: var(--ast-global-color-0) !important;
  border-color: var(--ast-global-color-0) !important;
  color: #fff !important;
}
body.single-sijobs a.si-job-single__btn.is-primary:hover{
  filter: brightness(1.05);
}


/* Header block (no card) */
body.single-sijobs .si-job-single{
  max-width: 860px;
  margin: 26px auto 12px;
  background: transparent;
  box-shadow: none;
  border-radius: 0;
}

/* Featured image behaves like news hero */
body.single-sijobs .si-job-single__media{
  margin: 0 0 14px;
  border-radius: 14px;
  overflow: hidden;
}
body.single-sijobs .si-job-single__media img{
  width: 100%;
  height: auto;
  display: block;
}

/* Title + meta */
body.single-sijobs .si-job-single__header{
  padding: 0;
}
body.single-sijobs .si-job-single__title{
  font-size: 30px;
  line-height: 1.15;
  font-weight: 800;
  margin: 0 0 8px;
  color: #0f172a;
}
body.single-sijobs .si-job-single__company{
  font-weight: 700;
  color: #0f172a;
  margin-bottom: 2px;
}
body.single-sijobs .si-job-single__date{
  font-size: 14px;
  color: rgba(15,23,42,.65);
}

body.single-sijobs .si-job-single__meta{
  display: flex;
  flex-wrap: wrap;
  gap: 10px 14px;
  margin-top: 14px;
  align-items: center;
}
body.single-sijobs .si-job-single__pill{
  display: inline-flex;
  padding: 6px 12px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 800;
  background: rgba(15,23,42,.06);
  color: #0f172a;
}
body.single-sijobs .si-job-single__meta-item{
  font-size: 14px;
  color: rgba(15,23,42,.80);
}

/* Actions: only Company website button */
body.single-sijobs .si-job-single__actions{
  margin-top: 16px;
}
body.single-sijobs .si-job-single__btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 16px;
  border-radius: 999px;
  font-weight: 800;
  text-decoration: none;
  line-height: 1;
  background: #0ea5e9;
  color: #fff;
}

/* Job body becomes the clean "article" (no card) */
body.single-sijobs .entry-content{
  max-width: 860px;
  margin: 14px auto 34px;
  background: transparent;
  box-shadow: none;
  border-radius: 0;
  padding: 0;
  font-size: 16px;
  line-height: 1.7;
  color: rgba(15,23,42,.88);
}

/* Remove Astra separators/nav that are showing on your screenshot */
body.single-sijobs .post-navigation,
body.single-sijobs nav.navigation.post-navigation,
body.single-sijobs .ast-post-navigation,
body.single-sijobs .navigation.post-navigation{
  display: none !important;
}

/* Hide the black divider line if it’s an <hr> inserted by theme/builder */
body.single-sijobs hr{
  display: none !important;
}

/* Mobile */
@media (max-width: 921px){
  body.single-sijobs .si-job-single,
  body.single-sijobs .entry-content{
    max-width: 92vw;
  }
  body.single-sijobs .si-job-single__title{
    font-size: 24px;
  }
}


/* SINGLE JOBS — remove the thin gray divider line above content */
body.single-sijobs #content .site-content:before,
body.single-sijobs .site-content:before,
body.single-sijobs .ast-container:before,
body.single-sijobs .ast-container > .ast-row:before{
  display: none !important;
  content: none !important;
}

/* Also remove any top border that may be applied */
body.single-sijobs #primary{
  border-top: 0 !important;
}


/* SINGLE JOBS — cap hero media height so logos don't dominate */
body.single-sijobs .si-job-single__media{
  max-height: 360px !important;   /* adjust 280–420 */
}

body.single-sijobs .si-job-single__media img{
  width: 100% !important;
  height: 360px !important;       /* must match the max-height above */
  object-fit: contain !important; /* keeps logo intact */
  object-position: center center !important;
  background: #fff !important;
}

/* SINGLE JOBS — remove the divider line above the job description */
body.single-sijobs .entry-content{
  border-top: 0 !important;
  padding-top: 0 !important;   /* optional: removes the gap created for the divider */
  margin-top: 14px !important; /* optional: keeps a little breathing room */
}

/* =========================================================
   SINGLE JOB (sijobs) — APPLE STYLE + HIDE EXPIRES
   Safe: does NOT touch header or footer
   ========================================================= */

/* 1) Hide Expires (the meta item span) */
body.single-sijobs .si-job-single__meta .si-job-single__meta-item{
  display: none !important;
}

/* 2) Logo / image sizing (prevent huge logos) */
body.single-sijobs .si-job-single__media{
  max-height: 220px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  margin-bottom: 14px;
}

body.single-sijobs .si-job-single__media img{
  max-height: 200px;
  width: auto;
  object-fit: contain;
}

/* 3) Slightly reduce top heaviness */
body.single-sijobs .si-job-single{
  padding-top: 20px;
}

/* 4) Meta row polish (date + Full-time pill) */
body.single-sijobs .si-job-single__meta{
  gap: 10px;
  font-size: 14px;
}

/* 5) Button polish (Company website) */
body.single-sijobs .si-job-single__actions a,
body.single-sijobs .si-job-single__actions .ast-button,
body.single-sijobs .si-job-single__actions .wp-block-button__link{
  border-radius: 999px;
  font-weight: 600;
  padding: 12px 18px;
}

/* 6) Body text readability */
body.single-sijobs .si-job-single__content,
body.single-sijobs .si-job-single__description,
body.single-sijobs .entry-content{
  line-height: 1.7;
}

/* =========================================================
   JOBS ARCHIVE (page-id-2789) — "Full details" pill like Events
   Button class: .si-job-details-btn
   ========================================================= */

body.page-id-2789 .facetwp-template[data-name="jobs"] .si-job-card .si-job-actions .si-job-details-btn{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  padding: 14px 22px !important;
  border-radius: 999px !important;
  min-height: 48px !important;

  background: var(--ast-global-color-0) !important;
  color: #fff !important;

  font-weight: 800 !important;
  font-size: 16px !important;
  line-height: 1 !important;
  text-decoration: none !important;

  border: 0 !important;
  box-shadow: 0 10px 18px rgba(0,0,0,.12) !important;
  transition: transform .15s ease, box-shadow .15s ease, filter .15s ease !important;
}

/* Hover */
body.page-id-2789 .facetwp-template[data-name="jobs"] .si-job-card .si-job-actions .si-job-details-btn:hover{
  transform: translateY(-1px) !important;
  box-shadow: 0 16px 26px rgba(0,0,0,.16) !important;
  filter: brightness(1.02) !important;
}

/* Center the CTA row like Events */
body.page-id-2789 .facetwp-template[data-name="jobs"] .si-job-card .si-job-actions{
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}

/* Optional: keep it a nice pill on mobile too */
@media (max-width: 768px){
  body.page-id-2789 .facetwp-template[data-name="jobs"] .si-job-card .si-job-actions .si-job-details-btn{
    padding: 14px 22px !important; /* override any older 0/26px rules */
  }
}

/* =========================================================
   JOBS ARCHIVE — MATCH EVENTS PILL SIZE EXACTLY
   (tighten height + width)
   ========================================================= */

body.page-id-2789
.facetwp-template[data-name="jobs"]
.si-job-card
.si-job-actions
.si-job-details-btn{
  padding: 12px 20px !important;   /* ↓ smaller than before */
  min-height: 44px !important;     /* ↓ match Events */
  font-size: 15px !important;      /* Events uses slightly smaller text */
  font-weight: 700 !important;
}

/* Mobile parity */
@media (max-width: 768px){
  body.page-id-2789
  .facetwp-template[data-name="jobs"]
  .si-job-card
  .si-job-actions
  .si-job-details-btn{
    padding: 12px 20px !important;
    min-height: 44px !important;
  }
}


/* Stop the global 100% img rule from affecting WP emoji icons */
@media (max-width: 921px){
  body.single-sievents .site-content article .entry-content img.emoji,
  body.single-sievents .site-content article .entry-content img.wp-smiley{
    width: 1em !important;
    height: 1em !important;
    max-width: 1em !important;
    display: inline-block !important;
    vertical-align: -0.1em !important;
  }
}



/* =========================================================
   MASTER CTA PILL — EXACT MATCH (Businesses + Jobs + Events)
   Same shape • same size • same color • same text size
   ========================================================= */

:root{
  --sin-cta-bg: var(--ast-global-color-0);
  --sin-cta-fg: #fff;
  --sin-cta-radius: 999px;
  --sin-cta-minh: 44px;
  --sin-cta-pad-y: 12px;
  --sin-cta-pad-x: 22px;
  --sin-cta-font: 16px;
  --sin-cta-weight: 700;
  --sin-cta-shadow: 0 10px 18px rgba(0,0,0,.12);
  --sin-cta-shadow-hover: 0 16px 26px rgba(0,0,0,.16);
}

/* 1) JOBS archive CTA */
body.page-id-2789 .facetwp-template[data-name="jobs"] .si-job-card .si-job-actions .si-job-details-btn,

/* 2) BUSINESSES archive CTA (adjusted to button in actions area) */
body.page-id-2506 .si-biz-actions a,
body.page-id-2506 .si-business-actions a,
body.page-id-2506 .si-business-card__actions a,

/* 3) EVENTS archive CTA (button/link inside card CTA area) */
body.page-id-2960 .facetwp-template[data-name="events"] .si-event-card__cta,
body.page-id-2960 .facetwp-template[data-name="events"] .si-event-card__button,
body.page-id-2960 .facetwp-template[data-name="events"] .si-event-card .si-event-btn{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  min-height: var(--sin-cta-minh) !important;
  padding: var(--sin-cta-pad-y) var(--sin-cta-pad-x) !important;
  border-radius: var(--sin-cta-radius) !important;

  background: var(--sin-cta-bg) !important;
  color: var(--sin-cta-fg) !important;

  font-size: var(--sin-cta-font) !important;
  font-weight: var(--sin-cta-weight) !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;

  border: 0 !important;
  text-decoration: none !important;

  box-shadow: var(--sin-cta-shadow) !important;
  transition: transform .15s ease, box-shadow .15s ease, filter .15s ease !important;
}

/* Hover */
body.page-id-2789 .facetwp-template[data-name="jobs"] .si-job-card .si-job-actions .si-job-details-btn:hover,
body.page-id-2506 .si-biz-actions a:hover,
body.page-id-2506 .si-business-actions a:hover,
body.page-id-2506 .si-business-card__actions a:hover,
body.page-id-2960 .facetwp-template[data-name="events"] .si-event-card__cta:hover,
body.page-id-2960 .facetwp-template[data-name="events"] .si-event-card__button:hover,
body.page-id-2960 .facetwp-template[data-name="events"] .si-event-card .si-event-btn:hover{
  transform: translateY(-1px) !important;
  box-shadow: var(--sin-cta-shadow-hover) !important;
  filter: brightness(1.02) !important;
}

/* Ensure their containers center the button consistently */
body.page-id-2789 .facetwp-template[data-name="jobs"] .si-job-card .si-job-actions,
body.page-id-2506 .si-biz-actions,
body.page-id-2506 .si-business-actions,
body.page-id-2506 .si-business-card__actions,
body.page-id-2960 .facetwp-template[data-name="events"] .si-event-card__actions,
body.page-id-2960 .facetwp-template[data-name="events"] .si-event-card__cta-wrap{
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}

/* Safety: if any of these buttons were forced full-width elsewhere */
body.page-id-2789 .si-job-details-btn,
body.page-id-2506 .si-biz-actions a,
body.page-id-2506 .si-business-actions a,
body.page-id-2506 .si-business-card__actions a,
body.page-id-2960 .si-event-card__cta,
body.page-id-2960 .si-event-card__button,
body.page-id-2960 .si-event-btn{
  width: auto !important;
  max-width: 100% !important;
}


/* =========================================================
   BUSINESSES CTA — MATCH EVENTS BUTTON EXACTLY
   (shape, size, color, text)
   ========================================================= */

body.page-id-2506 .si-business-visit .si-visit-btn{
  /* layout */
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  /* size — EXACT match to Events */
  min-height: 44px !important;
  padding: 12px 22px !important;
  border-radius: 999px !important;

  /* typography — EXACT match */
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;

  /* color — same blue as Events */
  background: var(--ast-global-color-0) !important;
  color: #ffffff !important;

  /* reset business-specific leftovers */
  border: 0 !important;
  text-decoration: none !important;
  box-shadow: 0 10px 18px rgba(0,0,0,.12) !important;

  transition: transform .15s ease,
              box-shadow .15s ease,
              filter .15s ease !important;
}

/* Hover — identical to Events */
body.page-id-2506 .si-business-visit .si-visit-btn:hover{
  transform: translateY(-1px) !important;
  box-shadow: 0 16px 26px rgba(0,0,0,.16) !important;
  filter: brightness(1.02) !important;
}

/* Center the button like Events */
body.page-id-2506 .si-business-visit{
  display: flex !important;
  justify-content: center !important;
}

/* =========================================================
   BUSINESSES CTA — MATCH EVENTS *VISUAL* (less chunky)
   (fixed width like Events + slimmer height)
   ========================================================= */

body.page-id-2506 .si-business-visit a.si-visit-btn{
  /* Match Events pill proportions */
  min-height: 40px !important;
  padding: 10px 20px !important;

  /* Key: fixed width so short word "Visit" doesn't look fat */
  min-width: 170px !important;

  /* Text sizing closer to Events button */
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1 !important;

  border-radius: 999px !important;
  background: var(--ast-global-color-0) !important;
  color: #fff !important;

  box-shadow: 0 10px 18px rgba(0,0,0,.12) !important;
}


/* =========================================================
   JOBS CTA — MATCH EVENTS / BUSINESSES (FINAL)
   ========================================================= */

body.page-id-2789 .si-job-card a.si-job-details-btn{
  /* Same proportions as Events */
  min-height: 40px !important;
  padding: 10px 20px !important;

  /* Fixed width so text length doesn't change pill shape */
  min-width: 170px !important;

  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1 !important;

  border-radius: 999px !important;
  background: var(--ast-global-color-0) !important;
  color: #fff !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  box-shadow: 0 10px 18px rgba(0,0,0,.12) !important;
  text-decoration: none !important;
}


/* =========================================================
   JOBS (Page ID 2789) — Match Events archive CTA button
   Targets ONLY the Jobs archive CTA (.si-job-details-btn)
   ========================================================= */

body.page-id-2789 .facetwp-template[data-name="jobs"] a.si-job-details-btn{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  background: var(--ast-global-color-0) !important; /* same blue */
  color: #fff !important;
  text-decoration: none !important;

  border: 0 !important;
  border-radius: 9999px !important;

  font-weight: 700 !important;
  font-size: 14px !important;
  line-height: 1 !important;

  padding: 14px 30px !important;   /* pill size */
  min-height: 48px !important;     /* consistent height */
  min-width: 170px !important;     /* consistent width */

  box-shadow: 0 10px 18px rgba(0,0,0,.12) !important;
  transition: transform .12s ease, box-shadow .12s ease, filter .12s ease !important;
}

/* Hover (desktop only feel) */
@media (hover:hover){
  body.page-id-2789 .facetwp-template[data-name="jobs"] a.si-job-details-btn:hover{
    transform: translateY(-1px) !important;
    box-shadow: 0 14px 22px rgba(0,0,0,.16) !important;
    filter: brightness(1.03) !important;
  }
}

/* Keep text crisp / no underline anywhere */
body.page-id-2789 .facetwp-template[data-name="jobs"] a.si-job-details-btn:visited,
body.page-id-2789 .facetwp-template[data-name="jobs"] a.si-job-details-btn:focus{
  color: #fff !important;
  text-decoration: none !important;
  outline: none !important;
}


/* =========================================================
   GLOBAL CTA NORMALIZATION — EVENTS / JOBS / BUSINESSES
   Matches Events button exactly
   ========================================================= */

/* EVENTS (baseline – already correct, listed for clarity) */
.si-event-card .si-event-card__cta,
.si-event-card .si-event-card__cta a{
  padding: 12px 26px !important;
  font-size: 15px !important;
  line-height: 1 !important;
  border-radius: 999px !important;
  font-weight: 700 !important;
}

/* BUSINESSES */
.si-business-card .si-visit-btn{
  padding: 12px 26px !important;
  font-size: 15px !important;
  line-height: 1 !important;
  border-radius: 999px !important;
  font-weight: 700 !important;
}

/* JOBS */
.si-job-card .si-job-cta,
.si-job-card .si-job-cta a{
  padding: 12px 26px !important;
  font-size: 15px !important;
  line-height: 1 !important;
  border-radius: 999px !important;
  font-weight: 700 !important;
}

/* =========================================================
   JOBS — make ONLY the "Full details" CTA match Events pill
   (scoped to FacetWP template data-name="jobs")
   ========================================================= */

.facetwp-template[data-name="jobs"]{
  /* Events-style pill specs */
  --sin-cta-pad-y: 14px;
  --sin-cta-pad-x: 40px;
  --sin-cta-min-h: 52px;
  --sin-cta-font: 16px;
  --sin-cta-radius: 999px;
  --sin-cta-shadow: 0 14px 28px rgba(0,0,0,.12);
}

/* Target the actual CTA */
.facetwp-template[data-name="jobs"] .si-job-card .si-job-actions .si-job-details-btn{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  padding: var(--sin-cta-pad-y) var(--sin-cta-pad-x) !important;
  min-height: var(--sin-cta-min-h) !important;
  min-width: 190px !important;

  border-radius: var(--sin-cta-radius) !important;
  background: var(--ast-global-color-0) !important;
  color: #fff !important;
  border: 0 !important;

  font-size: var(--sin-cta-font) !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  text-decoration: none !important;

  box-shadow: var(--sin-cta-shadow) !important;
}

/* Hover polish (desktop only) */
@media (hover:hover){
  .facetwp-template[data-name="jobs"] .si-job-card .si-job-actions .si-job-details-btn:hover{
    transform: translateY(-1px) !important;
    box-shadow: 0 18px 34px rgba(0,0,0,.16) !important;
  }
}

/* =========================================================
   MATCH CTA TO EVENTS (DO NOT TOUCH EVENTS)
   Targets: Businesses (2506) + Jobs (2789)
   ========================================================= */

/* ---------- JOBS CTA (match Events: 44px tall, pill, same blue) ---------- */
body.page-id-2789
.facetwp-template[data-name="jobs"]
.si-job-card
.si-job-actions
a.si-job-details-btn{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  min-height: 44px !important;
  padding: 0 26px !important;

  background: #0b7cff !important;
  color: #fff !important;

  border-radius: 999px !important;
  border: 0 !important;

  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-decoration: none !important;

  box-shadow: 0 10px 18px rgba(0,0,0,.12) !important;
}



/* JOBS — CTA: same thickness as Events, just less wide */
body.page-id-2789
.facetwp-template[data-name="jobs"]
.si-job-card
a.si-job-details-btn{
  padding: 10px 18px !important;   /* SAME vertical thickness as Events */
  font-size: 13px !important;
  line-height: 1 !important;
  border-radius: 999px !important;

  width: auto !important;
  min-width: 0 !important;
  max-width: 140px !important;    /* 👈 this is the key */
}

/* Mobile tightening */
@media (max-width: 768px){
  body.page-id-2789
  .facetwp-template[data-name="jobs"]
  .si-job-card
  a.si-job-details-btn{
    max-width: 132px !important;
    padding: 10px 16px !important;
  }
}


/* =========================================================
   SINGLE EVENTS (DESKTOP ONLY) — REMOVE CARD, MATCH MOBILE
   (does NOT affect header/footer or mobile)
   ========================================================= */
@media (min-width: 922px){

  /* 1) Kill the “card” wrapper styling (use multiple fallbacks) */
  body.single-sievents .entry-content :is(
    .si-event-single-card,
    .si-event-card,
    .si-event-detail-card,
    .si-single-event,
    .si-event-single,
    .si-event-wrap,
    .si-event-container
  ){
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    padding: 0 !important;
  }

  /* 2) If your snippet uses a top-level wrapper inside entry-content, remove its margins too */
  body.single-sievents .entry-content :is(
    .si-event-single-card,
    .si-single-event,
    .si-event-single
  ){
    margin: 0 auto !important;
  }

  /* 3) Make sure nothing is clipping / rounding the outer area */
  body.single-sievents .entry-content{
    overflow: visible !important;
  }

  /* 4) Keep the IMAGE looking like mobile (image is “its own block”, not inside a card) */
  body.single-sievents .entry-content :is(
    .si-event-card__media,
    .si-event-media,
    .si-single-event__media,
    .si-event-single__media
  ){
    border-radius: 18px !important;   /* nice soft corners like mobile */
    overflow: hidden !important;
    box-shadow: none !important;
  }

  /* 5) Reduce the big empty gap under the header on desktop single events */
  body.single-sievents #content .ast-container{
    padding-top: 26px !important;
  }
}

@media (max-width: 921px){
  body.single-sijobs .si-job-single__media{
    max-height: 180px !important;
  }

  body.single-sijobs .si-job-single__media img{
    max-height: 150px !important;
  }
}

body.single-sijobs .entry-content p:first-of-type{
  padding-top: 14px;
  border-top: 1px solid rgba(15,23,42,.08);
}

body.single-sijobs .si-job-single__meta{
  margin-top: 10px;
  margin-bottom: 6px;
}

body.single-sijobs .si-job-single__btn:active{
  transform: scale(0.97);
}

body.single-sijobs .si-job-single__pill{
  background: rgba(15,23,42,.08);
  font-weight: 700;
}


/* =========================================================
   COUPONS — SEARCH BAR (CENTERED + PREMIUM)
   ========================================================= */



/* Input field — premium Apple-style */
body .si-coupons-search input,
body .coupons-search input,
body .coupon-search input,
body .facetwp-search,
body input[type="search"] {
  width: 100% !important;
  height: 54px !important;

  border-radius: 14px !important;
  border: 1px solid #e5e7eb !important;
  background: #ffffff !important;

  font-size: 15px !important;
  color: #111827 !important;

  padding: 0 18px 0 46px !important;

  box-shadow: 0 10px 24px rgba(0,0,0,0.05) !important;

  transition: border-color .2s ease, box-shadow .2s ease !important;
}



/* Mobile tightening */
@media (max-width: 768px){
  body .si-coupons-search,
  body .coupons-search,
  body .coupon-search,
  body .facetwp-search-wrap {
    margin-bottom: 20px !important;
  }
}

/* =========================================================
   COUPONS — SEARCH BAR (FINAL HARD OVERRIDE)
   ========================================================= */

/* Center the entire search area */
body .facetwp-search-wrap,
body .si-coupons-search,
body .coupons-search {
  display: flex !important;
  justify-content: center !important;
  padding: 0 16px 26px !important;
}

/* Constrain + center the input itself */
body .facetwp-search,
body .facetwp-search-wrap input,
body input[placeholder*="Search coupons"] {
  max-width: 620px !important;
  width: 100% !important;

  height: 56px !important;
  margin: 0 auto !important;

  border-radius: 16px !important;
  border: 1px solid #e5e7eb !important;
  background: #ffffff !important;

  font-size: 15px !important;
  color: #111827 !important;

  padding: 0 20px 0 48px !important;

  box-shadow:
    0 8px 20px rgba(0,0,0,0.06),
    0 1px 2px rgba(0,0,0,0.04) !important;

  transition: all .2s ease !important;
}

/* Focus = premium Apple-style */
body .facetwp-search:focus,
body .facetwp-search-wrap input:focus {
  border-color: #3b82f6 !important;
  box-shadow:
    0 12px 30px rgba(59,130,246,0.18),
    0 2px 6px rgba(59,130,246,0.12) !important;
  outline: none !important;
}

/* Search icon positioning */
body .facetwp-search-wrap svg,
body .facetwp-search-wrap .search-icon {
  position: absolute !important;
  left: calc(50% - 320px + 18px) !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  opacity: 0.55 !important;
  pointer-events: none !important;
}

/* Mobile polish */
@media (max-width: 768px) {
  body .facetwp-search,
  body .facetwp-search-wrap input {
    max-width: 100% !important;
  }

  body .facetwp-search-wrap svg,
  body .facetwp-search-wrap .search-icon {
    left: 22px !important;
  }
}


/* =========================================================
   PREMIUM SEARCH (Businesses + Jobs + Coupons)
   - Centered container
   - Max width
   - Apple-style input polish
   ========================================================= */

/* 1) Center any search area wrapper (FacetWP + common theme wrappers) */
body .facetwp-search-wrap,
body .si-search-wrap,
body .si-businesses-search,
body .si-jobs-search,
body .businesses-search,
body .jobs-search,
body .search-wrap{
  display: flex !important;
  justify-content: center !important;
  padding: 0 16px 26px !important;
}

/* 2) Premium input styling (targets FacetWP + common inputs + placeholder matches) */
body .facetwp-search,
body .facetwp-search-wrap input,
body .si-businesses-search input,
body .si-jobs-search input,
body input[placeholder*="Search businesses"],
body input[placeholder*="Search jobs"],
body input[placeholder*="Search coupons"]{
  max-width: 680px !important;
  width: 100% !important;

  height: 56px !important;
  margin: 0 auto !important;

  border-radius: 16px !important;
  border: 1px solid #e5e7eb !important;
  background: #ffffff !important;

  font-size: 15px !important;
  color: #111827 !important;

  padding: 0 20px 0 48px !important;

  box-shadow:
    0 8px 20px rgba(0,0,0,0.06),
    0 1px 2px rgba(0,0,0,0.04) !important;

  transition: border-color .2s ease, box-shadow .2s ease !important;
}


/* 4) Icon positioning (only if your search wraps an svg icon) */
body .facetwp-search-wrap{
  position: relative !important;
}

/* Desktop: place icon inside the centered input */
@media (min-width: 769px){
  body .facetwp-search-wrap svg,
  body .facetwp-search-wrap .search-icon{
    position: absolute !important;
    left: calc(50% - 340px + 18px) !important; /* aligns to input left */
    top: 50% !important;
    transform: translateY(-50%) !important;
    opacity: .55 !important;
    pointer-events: none !important;
  }
}

/* Mobile: simpler icon alignment */
@media (max-width: 768px){
  body .facetwp-search-wrap svg,
  body .facetwp-search-wrap .search-icon{
    position: absolute !important;
    right: 22px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    opacity: .55 !important;
    pointer-events: none !important;
  }

  body .facetwp-search,
  body .facetwp-search-wrap input{
    max-width: 100% !important;
  }
}


/* =========================================================
   FORCE-CENTER SEARCH INPUTS (Jobs / Coupons / Businesses)
   - Centers the actual input element
   - Constrains width so it LOOKS centered
   - Does NOT move your right-side icon
   ========================================================= */

/* 1) Force the INPUT itself to be a centered block with a max width */
body .facetwp-search,
body .facetwp-search-wrap input.facetwp-search,
body input[placeholder*="Search jobs"],
body input[placeholder*="Search coupons"],
body input[placeholder*="Search businesses"]{
  display: block !important;
  width: min(720px, calc(100% - 32px)) !important; /* always leaves equal side space */
  max-width: 720px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* 2) Make sure NO parent is pushing it left/right */
body .facetwp-search-wrap,
body form:has(input[placeholder*="Search jobs"]),
body form:has(input[placeholder*="Search coupons"]),
body form:has(input[placeholder*="Search businesses"]),
body .si-jobs-search,
body .si-coupons-search,
body .si-businesses-search{
  width: 100% !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important; /* prevents odd inline alignment */
}

/* 3) Premium look (applies to the same fields) */
body .facetwp-search,
body .facetwp-search-wrap input.facetwp-search,
body input[placeholder*="Search jobs"],
body input[placeholder*="Search coupons"],
body input[placeholder*="Search businesses"]{
  height: 56px !important;
  border-radius: 18px !important;
  border: 1px solid #e5e7eb !important;
  background: #fff !important;

  font-size: 15px !important;
  color: #111827 !important;

  padding: 0 52px 0 18px !important; /* keeps space for right icon */
  box-shadow: 0 10px 24px rgba(0,0,0,0.06), 0 1px 2px rgba(0,0,0,0.04) !important;

  transition: border-color .2s ease, box-shadow .2s ease !important;
}

body .facetwp-search:focus,
body .facetwp-search-wrap input.facetwp-search:focus,
body input[placeholder*="Search jobs"]:focus,
body input[placeholder*="Search coupons"]:focus,
body input[placeholder*="Search businesses"]:focus{
  border-color: #3b82f6 !important;
  box-shadow: 0 14px 34px rgba(59,130,246,0.18), 0 2px 6px rgba(59,130,246,0.12) !important;
  outline: none !important;
}

/* 4) Mobile tweak */
@media (max-width: 768px){
  body .facetwp-search,
  body .facetwp-search-wrap input.facetwp-search,
  body input[placeholder*="Search jobs"],
  body input[placeholder*="Search coupons"],
  body input[placeholder*="Search businesses"]{
    height: 54px !important;
    border-radius: 16px !important;
  }
}

/* =========================================================
   MOBILE ONLY — FORCE CENTER SEARCH (Jobs/Coupons/Businesses)
   ========================================================= */
@media (max-width: 768px){

  /* Center the whole search region */
  body .facetwp-search-wrap,
  body .si-jobs-search,
  body .si-coupons-search,
  body .si-businesses-search{
    display: block !important;
    width: 100% !important;
  }

  /* Force the INPUT to be visually centered (not edge-to-edge) */
  body .facetwp-search,
  body .facetwp-search-wrap input.facetwp-search,
  body input[placeholder*="Search jobs"],
  body input[placeholder*="Search coupons"],
  body input[placeholder*="Search businesses"]{
    display: block !important;

    /* This is the key: equal space left/right on mobile */
    width: calc(100% - 32px) !important;   /* 16px left + 16px right */
    max-width: 520px !important;           /* prevents looking too wide on large phones */

    margin-left: auto !important;
    margin-right: auto !important;

    /* Keep your premium look */
    height: 54px !important;
    border-radius: 16px !important;

    padding-left: 18px !important;
    padding-right: 52px !important; /* room for right icon */
  }
}


/* =========================================================
   FACETWP SEARCH — MOBILE TRUE CENTER (Coupons/Jobs/Businesses)
   ========================================================= */
@media (max-width: 768px){

  /* 1) Make the wrapper a centered row */
  body .facetwp-facet.facetwp-type-search .facetwp-input-wrap{
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
    position: relative !important;
  }

  /* 2) Constrain the input so it VISUALLY centers (beats width:100%) */
  body .facetwp-facet.facetwp-type-search input.facetwp-search{
    width: calc(100% - 32px) !important;   /* equal 16px left/right space */
    max-width: 100% !important;           /* keeps it from feeling too wide */
    margin: 0 auto !important;
    display: block !important;

    height: 60px !important;
    border-radius: 16px !important;

    padding-left: 42px !important;         /* room for icon */
    padding-right: 18px !important;
  }

  /* 3) Keep the FacetWP icon correctly placed */
  body .facetwp-facet.facetwp-type-search .facetwp-icon{
    position: absolute !important;
    left: 32px !important;                 /* aligns with the input's left padding space */
    top: 50% !important;
    transform: translateY(-50%) !important;
    opacity: .55 !important;
    pointer-events: none !important;
  }
}





/* =========================================================
   BUSINESS CARD — COMMUNITY PARTNER BADGE (FLOATING GOLD)
   ========================================================= */

/* Make sure the business card is the positioning context */
.si-business-card{
  position: relative;
}

/* Badge container */
.si-community-badge{
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 6;

  background: linear-gradient(135deg, #F5C76A, #E3A93B);
  color: #1f2937;

  padding: 8px 14px;
  border-radius: 999px;

  font-size: 11px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  text-align: center;
  line-height: 1.15;

  box-shadow: 0 10px 22px rgba(0,0,0,.18);
}

/* Force clean 2-line stack */
.si-community-badge span{
  display: block;
}

/* Mobile polish */
@media (max-width: 768px){
  .si-community-badge{
    font-size: 10.5px;
    padding: 7px 12px;
  }
}


/* =========================================================
   BUSINESS DIRECTORY — COMMUNITY PARTNER BADGE (DESKTOP + MOBILE)
   ========================================================= */

/* Anchor badge to the card (IMPORTANT) */
.facetwp-template .si-business-card,
.facetwp-template .si-business-card *{
  /* no change */
}
.facetwp-template .si-business-card{
  position: relative !important;
}

/* The badge */
.facetwp-template .si-business-card .si-community-badge{
  position: absolute !important;
  top: 14px !important;
  right: 14px !important;
  z-index: 10 !important;

  /* Prevent the “full-width bar” problem */
  width: auto !important;
  max-width: none !important;
  display: inline-flex !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0 !important;

  background: linear-gradient(135deg, #F5C76A, #E3A93B) !important;
  color: #1f2937 !important;

  padding: 8px 14px !important;
  border-radius: 999px !important;

  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  text-align: center !important;
  line-height: 1.1 !important;

  box-shadow: 0 10px 22px rgba(0,0,0,.18) !important;
}

/* Force 2 lines */
.facetwp-template .si-business-card .si-community-badge span{
  display: block !important;
}

/* Slightly tighter on phones */
@media (max-width: 768px){
  .facetwp-template .si-business-card .si-community-badge{
    top: 12px !important;
    right: 12px !important;
    padding: 7px 12px !important;
    font-size: 10.5px !important;
  }
}


/* =========================================================
   BUSINESS DIRECTORY — COMMUNITY PARTNER BADGE (DESKTOP + MOBILE)
   ========================================================= */

/* Anchor badge to the card (IMPORTANT) */
.facetwp-template .si-business-card,
.facetwp-template .si-business-card *{
  /* no change */
}
.facetwp-template .si-business-card{
  position: relative !important;
}

/* The badge */
.facetwp-template .si-business-card .si-community-badge{
  position: absolute !important;
  top: 14px !important;
  right: 14px !important;
  z-index: 10 !important;

  /* Prevent the “full-width bar” problem */
  width: auto !important;
  max-width: none !important;
  display: inline-flex !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0 !important;

  background: linear-gradient(135deg, #F5C76A, #E3A93B) !important;
  color: #1f2937 !important;

  padding: 8px 14px !important;
  border-radius: 999px !important;

  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  text-align: center !important;
  line-height: 1.1 !important;

  box-shadow: 0 10px 22px rgba(0,0,0,.18) !important;
}

/* Force 2 lines */
.facetwp-template .si-business-card .si-community-badge span{
  display: block !important;
}

/* Slightly tighter on phones */
@media (max-width: 768px){
  .facetwp-template .si-business-card .si-community-badge{
    top: 12px !important;
    right: 12px !important;
    padding: 7px 12px !important;
    font-size: 10.5px !important;
  }
}


/* =========================================================
   COMMUNITY PARTNER BADGE — FORCE 2 LINES
   ========================================================= */

.si-community-badge{
  position: absolute !important;
  top: 14px !important;
  right: 14px !important;
  z-index: 10 !important;

  background: linear-gradient(135deg, #F5C76A, #E3A93B) !important;
  color: #1f2937 !important;

  padding: 8px 14px !important;
  border-radius: 999px !important;

  /* 🔑 Force vertical layout */
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;

  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  line-height: 1.05 !important;
  text-align: center !important;

  width: auto !important;
  white-space: nowrap !important;

  box-shadow: 0 10px 22px rgba(0,0,0,.18) !important;
}

/* Each word on its own line */
.si-community-badge span{
  display: block !important;
}

/* Mobile tuning */
@media (max-width: 768px){
  .si-community-badge{
    font-size: 10.5px !important;
    padding: 7px 12px !important;
    top: 12px !important;
    right: 12px !important;
  }
}

/* =========================================================
   COMMUNITY PARTNER BADGE — DESKTOP NUCLEAR FIX
   Stops the giant oval overlay issue
   ========================================================= */

@media (min-width: 769px){

  /* Make sure the card is the positioning context */
  .facetwp-template .si-business-card{
    position: relative !important;
  }

  /* Badge: force shrink + cap size */
  .facetwp-template .si-business-card .si-community-badge{
    position: absolute !important;
    z-index: 999 !important;

    /* bottom-left */
    left: 16px !important;
    bottom: 16px !important;
    right: auto !important;
    top: auto !important;

    /* 🔥 STOP STRETCHING */
    flex: 0 0 auto !important;
    align-self: flex-start !important;
    justify-self: start !important;

    width: auto !important;
    height: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;

    /* HARD CAPS so it can never blow up */
    max-width: 140px !important;
    max-height: 60px !important;
    overflow: hidden !important;

    display: inline-flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;

    padding: 8px 14px !important;
    border-radius: 999px !important;

    background: linear-gradient(135deg, #F5C76A, #E3A93B) !important;
    color: #1f2937 !important;

    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    line-height: 1.05 !important;
    text-align: center !important;

    box-shadow: 0 10px 22px rgba(0,0,0,.18) !important;
  }

  .facetwp-template .si-business-card .si-community-badge span{
    display: block !important;
    white-space: nowrap !important;
  }
}

@media (min-width: 769px){
  .si-community-badge{
    opacity: .96;
  }
}

@media (max-width: 921px){

  /* COUPONS */
  body.page-id-1645
  .facetwp-facet[data-name="coupon_search"]{
    transform: translateX(10px) !important;
  }

  /* BUSINESSES */
  body.page-id-2506
  .facetwp-facet[data-name="business_search"]{
    transform: translateX(-10px) !important;
  }

  /* JOBS */
  body.page-id-2789
  .facetwp-facet[data-name="job_search"]{
    transform: translateX(10px) !important;
  }

}


/* =========================================
   FACETWP SEARCH — REMOVE FOCUS GLOW (ALL)
   ========================================= */

/* Kill browser glow + box shadow */
body .facetwp-facet.facetwp-type-search input.facetwp-search:focus,
body .facetwp-facet.facetwp-type-search input.facetwp-search:focus-visible{
  outline: none !important;
  box-shadow: none !important;
}

/* Prevent wrapper glow */
body .facetwp-facet.facetwp-type-search .facetwp-input-wrap:focus-within{
  box-shadow: none !important;
}

/* Magnifier reacts, not the whole input */
body .facetwp-facet.facetwp-type-search .facetwp-input-wrap:focus-within .facetwp-icon{
  color: #0ea5e9 !important;
  opacity: 1 !important;
}


/* =========================================================
   FACETWP SEARCH — REMOVE BLUE OUTLINE/GLOW (DESKTOP + iOS)
   ========================================================= */

/* Kill browser focus ring + theme glow */
body .facetwp-facet.facetwp-type-search input.facetwp-search:focus,
body .facetwp-facet.facetwp-type-search input.facetwp-search:focus-visible{
  outline: none !important;
  box-shadow: none !important;
  border-color: #e5e7eb !important; /* keep it clean */
}

/* If the theme applies focus styling to the wrapper */
body .facetwp-facet.facetwp-type-search .facetwp-input-wrap:focus-within{
  outline: none !important;
  box-shadow: none !important;
  border-color: #e5e7eb !important;
}

/* Optional: prevent any blue “tap highlight” */
body .facetwp-facet.facetwp-type-search,
body .facetwp-facet.facetwp-type-search *{
  -webkit-tap-highlight-color: transparent !important;
}



/* =========================================================
   COUPONS (Page ID 1645) — MOBILE: MAKE CARDS BIGGER
   (Does NOT affect desktop)
   ========================================================= */
@media (max-width: 921px){

  /* Give the content area a little less side padding so cards can breathe */
  body.page-id-1645 .site-content .ast-container{
    padding-left: 2px !important;
    padding-right: 2px !important;
  }

  /* Force the FacetWP template + FWPL grid to behave like a true single-column */
  body.page-id-1645 .facetwp-template[data-name="coupons"] .fwp-row{
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  /* Kill any column width constraints that keep the card “small” */
  body.page-id-1645 .facetwp-template[data-name="coupons"] .fwp-col,
  body.page-id-1645 .facetwp-template[data-name="coupons"] .fwp-item{
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }

  /* Let the coupon card fill the available width */
  body.page-id-1645 .facetwp-template[data-name="coupons"] .si-coupon-card{
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
  }
}

/* COUPONS — Mobile micro polish (more header breathing room + slightly stronger pill) */
@media (max-width: 921px){
  body.page-id-1645 .si-coupon-header{
    padding-top: 20px !important;     /* +4px */
    padding-bottom: 20px !important;  /* +4px */
  }

  body.page-id-1645 .si-coupon-header .si-coupon-title{
    font-weight: 700 !important;      /* slightly stronger */
    letter-spacing: .2px !important;
  }
}

@media (max-width: 921px){
  body.page-id-1645 .si-coupon-header .si-coupon-title{
    text-shadow: 0 1px 0 rgba(0,0,0,.10) !important;
  }
}



/* =========================================================
   DEALS ARCHIVE — FORCE 2 COLUMNS ON DESKTOP
   Page ID 1645
   ========================================================= */

body.page-id-1645 .facetwp-template[data-name="coupons"]{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:24px !important;
  align-items:stretch !important;
}

/* flatten FWPL wrappers so each item can sit in the grid */
body.page-id-1645 .facetwp-template[data-name="coupons"] .fwpl-layout,
body.page-id-1645 .facetwp-template[data-name="coupons"] .fwpl-result,
body.page-id-1645 .facetwp-template[data-name="coupons"] .fwpl-row{
  display:contents !important;
}

/* make each coupon item behave like a real grid item */
body.page-id-1645 .facetwp-template[data-name="coupons"] .fwpl-col,
body.page-id-1645 .facetwp-template[data-name="coupons"] .fwpl-item,
body.page-id-1645 .facetwp-template[data-name="coupons"] .fwpl-item-wrap{
  width:auto !important;
  max-width:none !important;
  min-width:0 !important;
  margin:0 !important;
}

/* tablet/mobile */
@media (max-width: 1024px){
  body.page-id-1645 .facetwp-template[data-name="coupons"]{
    grid-template-columns:1fr !important;
  }
}



/* =========================================================
   COUPONS (Page ID 1645) — DESKTOP 2-COLUMN GRID (FWPL SAFE)
   Mirrors single business deals layout
   ========================================================= */

@media (min-width: 922px){

  /* Make sure the FacetWP output area is allowed to be full width */
  body.page-id-1645 .facetwp-template[data-name="coupons"],
  body.page-id-1645 .facetwp-template[data-name="coupons"] .fwpl-layout{
    width:100% !important;
    max-width:none !important;
  }

  /* Put the GRID on the template itself */
  body.page-id-1645 .facetwp-template[data-name="coupons"]{
    display:grid !important;
    grid-template-columns:repeat(2, minmax(320px, 1fr)) !important;
    gap:24px !important;
    align-items:start !important;
    justify-content:start !important;
  }

  /* Flatten FWPL wrappers so each coupon becomes a direct grid item */
  body.page-id-1645 .facetwp-template[data-name="coupons"] .fwpl-layout,
  body.page-id-1645 .facetwp-template[data-name="coupons"] .fwpl-result,
  body.page-id-1645 .facetwp-template[data-name="coupons"] .fwpl-row,
  body.page-id-1645 .facetwp-template[data-name="coupons"] .fwpl-col{
    display:contents !important;
  }

  /* Each card should fill its grid cell */
  body.page-id-1645 .facetwp-template[data-name="coupons"] .fwpl-item,
  body.page-id-1645 .facetwp-template[data-name="coupons"] .fwpl-item-wrap,
  body.page-id-1645 .facetwp-template[data-name="coupons"] .si-coupon-archive-card,
  body.page-id-1645 .facetwp-template[data-name="coupons"] .si-coupon-card{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 !important;
  }
}

/* TABLET + MOBILE */
@media (max-width: 921px){
  body.page-id-1645 .facetwp-template[data-name="coupons"]{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:18px !important;
  }

  body.page-id-1645 .facetwp-template[data-name="coupons"] .fwpl-layout,
  body.page-id-1645 .facetwp-template[data-name="coupons"] .fwpl-result,
  body.page-id-1645 .facetwp-template[data-name="coupons"] .fwpl-row,
  body.page-id-1645 .facetwp-template[data-name="coupons"] .fwpl-col{
    display:contents !important;
  }
}







/* SINGLE BUSINESS — spacing above business name */
body.single-sibusinesses .si-coupon-archive-meta{
  margin-top: 6px !important;
  margin-bottom: 10px !important;
}


/* SINGLE BUSINESS — match archive title size EXACTLY */
body.single-sibusinesses .si-coupon-archive-title{
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1.18 !important;
  margin: 0 !important;
}

/* mobile */
@media (max-width: 768px){
  body.single-sibusinesses .si-coupon-archive-title{
    font-size: 15px !important;
  }
}

letter-spacing: -0.01em;


/* =========================================================
   COUPONS (DEALS ARCHIVE) — MATCH SINGLE BUSINESS TITLES
   ========================================================= */

/* desktop */
body.page-id-1645 .si-coupon-archive-title{
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1.18 !important;
  margin: 0 !important;
  letter-spacing: -0.01em !important;
}

/* mobile */
@media (max-width: 768px){
  body.page-id-1645 .si-coupon-archive-title{
    font-size: 16px !important;
    line-height: 1.18 !important;
    margin: 0 !important;
  }
}



/* =========================================================
   DEALS ARCHIVE — MATCH SINGLE BUSINESS TEXT EXACTLY
   ========================================================= */

/* Business Name */
body.page-id-1645 .si-coupon-archive-biz{
  font-size: 16px !important;
  font-weight: 500 !important;
  color: #334155 !important;
  line-height: 1.25 !important;
  margin: 6px 0 6px 0 !important;
  display: block !important;
}

/* Expiry Row Container */
body.page-id-1645 .si-coupon-archive-expiry{
  font-size: 14px !important;
  line-height: 1.3 !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
}

/* "Valid through" label */
body.page-id-1645 .si-coupon-archive-exp-label{
  font-size: 14px !important;
  color: #64748b !important;
  font-weight: 400 !important;
}

/* Date */
body.page-id-1645 .si-coupon-archive-exp{
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #0f172a !important;
}

/* MOBILE (keep proportions clean) */
@media (max-width: 768px){
  body.page-id-1645 .si-coupon-archive-biz{
    font-size: 15px !important;
  }
  
  body.page-id-1645 .si-coupon-archive-expiry,
  body.page-id-1645 .si-coupon-archive-exp-label,
  body.page-id-1645 .si-coupon-archive-exp{
    font-size: 13px !important;
  }
}



/* =========================================================
   DEALS — MOBILE TITLE CLIPPING FIX
   ========================================================= */
@media (max-width: 768px){

  body.page-id-1645 .si-coupon-archive-title,
  body.single-sibusinesses .si-coupon-archive-title{
    font-size: 15px !important;
    line-height: 1.18 !important;
    margin: 0 !important;

    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;

    min-height: unset !important;
    max-height: none !important;
  }

  body.page-id-1645 .si-coupon-archive-content,
  body.single-sibusinesses .si-coupon-archive-content{
    min-width: 0 !important;
  }
}



/* =========================================================
   DEAL LOGO FRAME — FIX CROPPING + INCREASE HEIGHT
   (archive + single business)
   ========================================================= */

/* Logo container */
body.page-id-1645 .si-coupon-archive-media,
body.single-sibusinesses .si-coupon-archive-media{
  height: 120px !important;        /* ⬅️ increased from ~70 */
  width: 120px !important;
  min-width: 120px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  background: #fff !important;
  border-radius: 12px !important;
  padding: 10px !important;       /* ⬅️ gives logos breathing room */
  overflow: hidden !important;
}

/* Image itself */
body.page-id-1645 .si-coupon-archive-media img,
body.page-id-1645 .si-coupon-archive-media picture img,
body.single-sibusinesses .si-coupon-archive-media img,
body.single-sibusinesses .si-coupon-archive-media picture img{
  width: 100% !important;
  height: 100% !important;

  object-fit: contain !important;   /* never crop */
  object-position: center !important;

  display: block !important;
}












/* =========================================================
   SINGLE BUSINESS — FIX EXTRA GAP UNDER BUSINESS NAME
   ========================================================= */
@media (max-width: 768px){

  body.single-sibusinesses .si-coupon-archive-meta{
    margin-bottom: 2px !important;   /* tighten space under business name */
  }

  body.single-sibusinesses .si-coupon-archive-expiry{
    margin-top: 0 !important;
  }

  body.single-sibusinesses .si-coupon-archive-exp{
    margin-top: 2px !important;      /* small clean spacing */
  }
}


















/* =========================================================
   SHARE AN EVENT — Desktop time field overflow fix
   Keeps time inputs inside the form column
   ========================================================= */
@media (min-width: 922px){

  /* Make sure the field container can shrink */
  body .frm_form_field,
  body .frm_form_fields{
    min-width: 0 !important;
  }

  /* Wrap the time inputs instead of overflowing */
  body .frm_form_field .frm_time_wrap,
  body .frm_form_field .frm_time,
  body .frm_form_field .frm_time_container{
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 10px !important;
    max-width: 100% !important;
  }

  /* Any direct inputs/selects inside the time wrapper should be allowed to shrink */
  body .frm_form_field .frm_time_wrap input,
  body .frm_form_field .frm_time_wrap select{
    max-width: 100% !important;
    min-width: 0 !important;
  }

  /* If Formidable is using separate hour/min/ampm pieces */
  body .frm_form_field .frm_time_wrap .frm_time_sep{
    flex: 0 0 auto !important;
  }
}

/* =========================================================
   SHARE AN EVENT — Event Time stays on one line (desktop)
   Fixes AM/PM dropdown taking 100% width
   ========================================================= */
@media (min-width: 922px){

  /* Make the time field wrapper behave like a row */
  body .frm_form_field .frm_time_wrap,
  body .frm_form_field .frm_time_container,
  body .frm_form_field .frm_time{
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;
    max-width: 100% !important;
  }

  /* Prevent any of the time selects from becoming full-width */
  body .frm_form_field .frm_time_wrap select{
    width: auto !important;
    max-width: none !important;
    flex: 0 0 auto !important;
  }

  /* Specifically keep AM/PM compact */
  body .frm_form_field .frm_time_wrap select:last-of-type{
    width: 110px !important; /* adjust 96–120 if you want */
  }

  /* Let hour/min stay compact too */
  body .frm_form_field .frm_time_wrap select:not(:last-of-type){
    width: 90px !important;
  }
}


/* =========================================================
   MOBILE — FORMIDABLE TIME FIELD (POLISH)
   - Keep HH : MM + AM/PM on ONE LINE
   - Fix “cut off” look on left
   - Slightly roomier controls
   ========================================================= */
@media (max-width: 768px){

  /* Keep the 3 controls on one line */
  .frm_forms.with_frm_style .frm_time_wrap{
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;      /* <-- key fix */
    padding-left: 2px !important;      /* tiny safety for iOS crop */
    box-sizing: border-box !important;
  }

  /* Base select behavior (beat mobile 100% width rules) */
  .frm_forms.with_frm_style select.frm_time_select{
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    flex: 0 0 auto !important;
    display: inline-block !important;

    padding-left: 14px !important;     /* <-- fixes “cut off” feel */
    padding-right: 14px !important;
    box-sizing: border-box !important;
  }

  /* Sizes: HH + MM (slightly wider than before) */
  .frm_forms.with_frm_style select.frm_time_select[id*="_H"],
  .frm_forms.with_frm_style select.frm_time_select[name*="[H]"],
  .frm_forms.with_frm_style select.frm_time_select[id*="_m"],
  .frm_forms.with_frm_style select.frm_time_select[name*="[m]"]{
    width: 86px !important;
  }

  /* Size: AM/PM (match visual weight) */
  .frm_forms.with_frm_style select.frm_time_select[id*="_A"],
  .frm_forms.with_frm_style select.frm_time_select[name*="[A]"]{
    width: 86px !important;
  }

}






/* =========================================
   EVENTS ARCHIVE (Page 2960) — MOBILE: remove blank top space
   Cause: empty .fwpl-layout inside .facetwp-template
   ========================================= */
@media (max-width: 921px){

  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  > .fwpl-layout{
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Also remove any forced margin on the first visible item */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]
  > *:first-child{
    margin-top: 0 !important;
  }

  /* Ensure no extra padding at the top of the template */
  body.page-id-2960
  .facetwp-wrapper.si-events-wrap
  .facetwp-template[data-name="events"]{
    padding-top: 0 !important;
  }
}


/* =========================================
   EVENTS ARCHIVE (2960) — MOBILE: add breathing room under header
   Uses pseudo-element so spacing cannot collapse
   ========================================= */
@media (max-width: 921px){

  body.page-id-2960 .site-content::before{
    content: "";
    display: block;
    height: 16px; /* 👈 breathing room */
  }

}



/* =========================================
   EVENTS ARCHIVE (2960) — MOBILE: add breathing room under header
   Most reliable: padding on the FacetWP wrapper that holds the cards
   ========================================= */
@media (max-width: 921px){

  body.page-id-2960
  .facetwp-wrapper.si-events-wrap{
    padding-top: 30px !important; /* adjust 12–24px */
    margin-top: 0 !important;
  }

  /* Safety: make sure nothing else is forcing “no top space” */
  body.page-id-2960
  #content.site-content,
  body.page-id-2960
  .entry-content{
    padding-top: 0 !important;
    margin-top: 0 !important;
  }
}



/* SINGLE EVENTS — reduce button height (winner selector) */
body.single-sievents .site-content .si-event-actions a.si-event-action-primary{
  padding: 10px 20px !important;   /* 👈 reduces height */
  line-height: 1.1 !important;     /* prevents extra vertical thickness */
}

body.single-sievents .site-content .si-event-actions a.si-event-action-primary{
  padding: 9px 18px !important;
  line-height: 1.1 !important;
  min-height: 0 !important;
}


/* =========================================================
   SINGLE JOBS — NUCLEAR TOP GAP FIX (ONLY this post type)
   ========================================================= */

/* Kill any top spacing coming from wrappers */
body.single-sijobs #content.site-content,
body.single-sijobs #primary,
body.single-sijobs #main,
body.single-sijobs article.sijobs{
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Astra sometimes adds spacing via the first “featured/thumbnail” block */
body.single-sijobs .ast-single-post-featured-section{
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* If there’s a sneaky spacer/pseudo element */
body.single-sijobs #content.site-content:before,
body.single-sijobs #content.site-content:after,
body.single-sijobs #primary:before,
body.single-sijobs #primary:after{
  content: none !important;
  display: none !important;
}

/* Add back a small, consistent “breathing room” under the header */
body.single-sijobs #content.site-content{
  padding-top: 0px !important;
}

@media (max-width: 921px){
  body.single-sijobs #content.site-content{
    padding-top: 0px !important;
  }
}


/* =========================================================
   FORMIDABLE — PREVENT iOS ZOOM ON INPUT FOCUS
   ========================================================= */
@media (max-width: 921px){

  .frm_forms input,
  .frm_forms select,
  .frm_forms textarea{
    font-size: 16px !important;
  }

}


/* =========================================================
   FORMIDABLE — MAKE TEXTAREA MATCH INPUTS (APPLE STYLE)
   Fixes "Your Story" / body field looking different
   ========================================================= */

/* Base: force ALL fields to use the same shell */
.frm_forms input:not([type="checkbox"]):not([type="radio"]),
.frm_forms select,
.frm_forms textarea{
  -webkit-appearance: none;
  appearance: none;

  background: #fff !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 14px !important;
  padding: 14px 16px !important;

  font-size: 16px !important;
  line-height: 1.45 !important;
  color: #0f172a !important;

  transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}

/* Placeholder */
.frm_forms input::placeholder,
.frm_forms textarea::placeholder{
  color: #9ca3af !important;
  opacity: 1 !important;
}

/* Focus glow: same for inputs + textarea */
.frm_forms input:focus,
.frm_forms select:focus,
.frm_forms textarea:focus{
  outline: none !important;
  border-color: #3b82f6 !important;
  box-shadow:
    0 0 0 1px rgba(59,130,246,.35),
    0 6px 20px rgba(59,130,246,.18) !important;
}

/* Make the body field feel intentional (not “giant empty box”) */
.frm_forms textarea{
  min-height: 220px !important;   /* adjust if you want */
  resize: vertical;               /* keeps it clean */
}

/* =========================================================
   FORMIDABLE — NORMALIZE TEXTAREA GLOW (iOS FIX)
   Makes "Your Story" match headline fields
   ========================================================= */

/* Kill Formidable's extra focus wrapper glow */
.frm_forms .frm_form_field.frm_focus{
  box-shadow: none !important;
  background: transparent !important;
}

/* Force textarea to use the SAME glow as inputs */
.frm_forms textarea:focus{
  outline: none !important;
  border-color: #3b82f6 !important;
  box-shadow:
    0 0 0 1px rgba(59,130,246,.35),
    0 6px 20px rgba(59,130,246,.18) !important;
}

/* Ensure no inner shadow sneaks in on iOS */
.frm_forms textarea{
  box-shadow: none !important;
}


/* =========================================================
   FORMIDABLE — REMOVE iOS INNER FOCUS RING (TEXTAREA)
   Fixes double blue lines inside "Your Story"
   ========================================================= */

/* Kill iOS native inner focus styling */
.frm_forms textarea{
  -webkit-appearance: none !important;
  appearance: none !important;
  outline: none !important;
}

/* Remove Safari inner focus ring */
.frm_forms textarea:focus{
  outline: none !important;
  box-shadow:
    0 0 0 1px rgba(59,130,246,.35),
    0 6px 20px rgba(59,130,246,.18) !important;
}

/* Kill any internal shadow Safari adds */
.frm_forms textarea::-webkit-focus-inner{
  border: 0 !important;
}

/* Neutralize Formidable's focus wrapper completely */
.frm_forms .frm_form_field.frm_focus{
  box-shadow: none !important;
}



/* =========================================================
   FORMIDABLE — SINGLE-STROKE FOCUS (KILLS DOUBLE BLUE LINE)
   Put this at the VERY BOTTOM of Custom CSS
   ========================================================= */

.frm_forms input:focus,
.frm_forms select:focus,
.frm_forms textarea:focus{
  outline: none !important;

  /* remove the "inner/darker" line (the border) */
  border-color: transparent !important;

  /* one clean Apple-like ring */
  box-shadow:
    0 0 0 2px rgba(59,130,246,.32),
    0 8px 24px rgba(59,130,246,.14) !important;
}

/* Make sure Formidable wrapper isn't adding anything */
.frm_forms .frm_form_field.frm_focus{
  box-shadow: none !important;
}

/* =========================================================
   FORMIDABLE — REMOVE INNER GRAY INSET RING (INPUTS)
   Makes inputs match the textarea (single clean Apple ring)
   Put at VERY BOTTOM of CSS
   ========================================================= */

.frm_forms input:not([type="checkbox"]):not([type="radio"]),
.frm_forms select{
  -webkit-appearance: none !important;
  appearance: none !important;

  /* kills the gray inner ring */
  box-shadow: none !important;
  background-clip: padding-box !important;
}

/* On focus: keep ONLY the outer Apple ring */
.frm_forms input:not([type="checkbox"]):not([type="radio"]):focus,
.frm_forms select:focus{
  outline: none !important;
  border-color: transparent !important;

  box-shadow:
    0 0 0 2px rgba(59,130,246,.32),
    0 8px 24px rgba(59,130,246,.14) !important;
}

/* Ensure Formidable wrapper isn't adding anything */
.frm_forms .frm_form_field.frm_focus{
  box-shadow: none !important;
}







/* =========================================================
   FORMIDABLE — MOBILE: FORCE WIDER FIELDS INSIDE CARD
   (Works even when the parent container has stubborn padding)
   ========================================================= */
@media (max-width: 921px){

  /* 1) Remove any width limits/centering inside Formidable */
  body .frm_forms,
  body .frm_forms form,
  body .frm_forms .frm_form_fields,
  body .frm_forms .frm_fields_container,
  body .frm_forms .frm_form_field{
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  /* 2) Make every field control truly full-width */
  body .frm_forms input:not([type="checkbox"]):not([type="radio"]),
  body .frm_forms select,
  body .frm_forms textarea{
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
  }

  /* 3) BLEED OUTWARD (wider inside the card) */
  /* Adjust 16px -> 12px or 20px depending how wide you want */
  body .frm_forms .frm_form_field{
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body .frm_forms .frm_form_field input:not([type="checkbox"]):not([type="radio"]),
  body .frm_forms .frm_form_field select,
  body .frm_forms .frm_form_field textarea,
  body .frm_forms .frm_primary_label,
  body .frm_forms .frm_description{
    width: calc(100% + 32px) !important;   /* 16px + 16px */
    margin-left: -16px !important;
    margin-right: -16px !important;
  }

  /* Keep comfy inner padding so text doesn’t touch edges */
  body .frm_forms input:not([type="checkbox"]):not([type="radio"]),
  body .frm_forms select,
  body .frm_forms textarea{
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
}

@media (max-width: 921px){

  /* FIELD + LABEL BLEED CONTROL */
  .frm_forms .frm_form_field,
  .frm_forms .frm_primary_label,
  .frm_forms .frm_description{
    width: calc(100% + 24px) !important;
    margin-left: -12px !important;
    margin-right: -12px !important;
  }

  /* INPUTS STILL FILL THEIR CONTAINER */
  .frm_forms input:not([type="checkbox"]):not([type="radio"]),
  .frm_forms textarea,
  .frm_forms select{
    width: 100% !important;
    box-sizing: border-box;
    padding-left: 14px;
    padding-right: 14px;
  }

}


/* =========================================================
   SIN — HEADER SEARCH ROW (Businesses / Jobs / Coupons)
   ========================================================= */

#siHeaderSearchRow{
  background: #f3f4f6;
  padding: 12px 14px;
  border-bottom: 1px solid rgba(15, 23, 42, .06);
  z-index: 50;
}

/* Keep aligned with your content/cards */
#siHeaderSearchRow .si-header-search-inner{
  max-width: 860px;
  margin: 0 auto;
}

/* Make any moved search fill the row */
#siHeaderSearchRow .facetwp-facet,
#siHeaderSearchRow .facetwp-search{
  width: 100% !important;
}

/* Premium input feel */
#siHeaderSearchRow input[type="search"],
#siHeaderSearchRow input[type="text"]{
  width: 100% !important;
  border-radius: 18px !important;
  padding: 14px 16px 14px 44px !important;
  border: 1px solid rgba(15, 23, 42, .10) !important;
  background: rgba(255,255,255,.9) !important;
  box-shadow: 0 10px 26px rgba(15, 23, 42, .08) !important;
  -webkit-appearance: none;
}

/* If the search facet has a built-in icon wrapper, this keeps spacing clean */
#siHeaderSearchRow .facetwp-search-wrap{
  width: 100% !important;
}

/* Sticky behavior (feels like Amazon utility bar) */
#siHeaderSearchRow{
  position: sticky;
  top: 0;
}

/* If your Astra header is sticky and overlaps, uncomment this and adjust:
#siHeaderSearchRow{ top: 72px; }
*/

html.si-header-search-active .facetwp-facet:empty{
  display: none !important;
}


.facetwp-search {
  padding-left: 44px !important;
  height: 52px;
  border-radius: 16px;
  font-size: 16px;
}

.facetwp-search-wrap {
  position: relative;
}

.facetwp-search-wrap:before {
  content: "";
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
  width: 18px;
  height: 18px;
  opacity: 0.5;
}


.si-card {
  border-radius: 18px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.08);
  background: #fff;
}

/* ================================
   HEADER SEARCH — ICON ALIGNMENT
   ================================ */

#siHeaderSearchRow .facetwp-input-wrap {
  position: relative;
}

/* Magnifier icon */
#siHeaderSearchRow .facetwp-icon {
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 18px;
  opacity: 0.45;
  pointer-events: none;
}

/* Search input */
#siHeaderSearchRow input.facetwp-search {
  padding-left: 44px !important; /* room for icon */
  height: 52px;
  font-size: 16px; /* prevents iOS zoom */
  line-height: normal;
}


/* =========================================================
   HEADER SEARCH (FacetWP) — FORCE ICON ALIGN + FIX SPACING
   Works for Coupons / Jobs / Businesses header search row
   ========================================================= */

/* 1) Fix the extra padding above/below the search row */
html body #siHeaderSearchRow{
  padding: 12px 14px !important; /* equal top/bottom */
}

/* (optional) If you still feel it's too tall, use this instead:
html body #siHeaderSearchRow{ padding: 10px 14px !important; }
*/

/* 2) Make the wrap positioning reliable */
html body #siHeaderSearchRow .facetwp-input-wrap{
  position: relative !important;
  display: block !important;
}

/* 3) FORCE the magnifier icon to be perfectly centered */
html body #siHeaderSearchRow .facetwp-input-wrap .facetwp-icon{
  position: absolute !important;
  left: 16px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  margin: 0 !important;
  opacity: .45 !important;
  pointer-events: none !important;
  z-index: 2 !important;
}

/* 4) Push placeholder/text to the right so it never collides */
html body #siHeaderSearchRow input.facetwp-search{
  padding-left: 46px !important;
  height: 52px !important;
  font-size: 16px !important; /* prevents iOS zoom */
  line-height: 52px !important;
}

/* =========================================
   HEADER SEARCH — REDUCE SPACE BELOW
   ========================================= */

html body #siHeaderSearchRow{
  padding-top: 12px !important;
  padding-bottom: 6px !important; /* was matching top, now tighter */
}

/* =========================================
   FIRST CONTENT AFTER SEARCH — TIGHTEN
   ========================================= */

html body #siHeaderSearchRow + #content{
  margin-top: 0 !important;
  padding-top: 0 !important;
}

html body #content .facetwp-template:first-child{
  margin-top: 0 !important;
}


/* =========================================
   COUPONS — CONTROLLED GAP UNDER SEARCH
   Page ID 1645
   ========================================= */

/* Keep the search row slightly tighter */
body.page-id-1645 #siHeaderSearchRow{
  padding-top: 12px !important;
  padding-bottom: 10px !important; /* a bit more breathing room */
}

/* Remove Astra's big default padding, then we add our own */
body.page-id-1645 #content.site-content{
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* This is the ONLY gap you’ll see under the search */
body.page-id-1645 .facetwp-template{
  margin-top: 23px !important;   /* <-- adjust this (12–18 is perfect) */
  padding-top: 0 !important;
}

/* =========================================================
   COUPONS — REMOVE DEAD SPACE ABOVE DIVIDER
   Page ID 1645
   ========================================================= */

body.page-id-1645 #siHeaderSearchRow{
  padding-top: 12px !important;
  padding-bottom: 12px !important;   /* <-- kills the band */
  border-bottom: 0 !important;      /* remove border divider */
  box-shadow: inset 0 -1px 0 rgba(15,23,42,.06) !important; /* new divider */
}

/* FacetWP can add its own bottom margin inside the row */
body.page-id-1645 #siHeaderSearchRow .facetwp-facet{
  margin-bottom: 0 !important;
}

/* =========================================================
   JOBS — REMOVE DEAD SPACE ABOVE DIVIDER
   Page ID 2174
   ========================================================= */

body.page-id-2789 #siHeaderSearchRow{
  padding-top: 12px !important;
  padding-bottom: 12px !important;
  border-bottom: 0 !important;
  box-shadow: inset 0 -1px 0 rgba(15,23,42,.06) !important;
}

/* FacetWP inner margin cleanup */
body.page-id-2789 #siHeaderSearchRow .facetwp-facet{
  margin-bottom: 0 !important;
}


/* =========================================================
   BUSINESSES — REMOVE DEAD SPACE ABOVE DIVIDER
   Page ID 2361
   ========================================================= */

body.page-id-2506 #siHeaderSearchRow{
  padding-top: 12px !important;
  padding-bottom: 12px !important;
  border-bottom: 0 !important;
  box-shadow: inset 0 -1px 0 rgba(15,23,42,.06) !important;
}

/* FacetWP inner margin cleanup */
body.page-id-2506 #siHeaderSearchRow .facetwp-facet{
  margin-bottom: 0 !important;
}


/* =========================================================
   SEARCH ROW DIVIDER + SPACING — Coupons / Jobs / Businesses
   Page IDs: 1645 (Coupons), 2789 (Jobs), 2506 (Businesses)
   ========================================================= */

html body.page-id-1645 #siHeaderSearchRow,
html body.page-id-2789 #siHeaderSearchRow,
html body.page-id-2506 #siHeaderSearchRow{
  padding-top: 12px !important;
  padding-bottom: 12px !important;

  /* kill the default border divider */
  border-bottom: 0 !important;

  /* soft divider (same “weight” system) */
  box-shadow: inset 0 -1px 0 rgba(15,23,42,.08) !important;

  /* match homepage gray if you want it here too */
  background: #f3f4f6 !important;
}

/* FacetWP can add extra bottom spacing inside the row */
html body.page-id-1645 #siHeaderSearchRow .facetwp-facet,
html body.page-id-2789 #siHeaderSearchRow .facetwp-facet,
html body.page-id-2506 #siHeaderSearchRow .facetwp-facet{
  margin-bottom: 0 !important;
}


/* =========================================================
   SEARCH HEADER — FINAL PRODUCTION STYLE
   Coupons / Jobs / Businesses
   ========================================================= */

html body.page-id-1645 #siHeaderSearchRow,
html body.page-id-2789 #siHeaderSearchRow,
html body.page-id-2506 #siHeaderSearchRow{
  /* Match homepage gray exactly */
  background: #f3f4f6 !important;

  /* Balanced vertical spacing */
  padding-top: 12px !important;
  padding-bottom: 12px !important;

  /* Remove hard divider */
  border-bottom: 0 !important;

  /* Soft divider — SAME visual weight as mobile menu */
  box-shadow: inset 0 -1px 0 rgba(15, 23, 42, 0.08) !important;
}

/* Kill FacetWP’s internal bottom spacing */
html body.page-id-1645 #siHeaderSearchRow .facetwp-facet,
html body.page-id-2789 #siHeaderSearchRow .facetwp-facet,
html body.page-id-2506 #siHeaderSearchRow .facetwp-facet{
  margin-bottom: 0 !important;
}


/* =========================================================
   JOBS — MOVE SEARCH UP (TIGHTEN TOP PADDING ONLY)
   Page ID: 2789
   ========================================================= */

html body.page-id-2789 #siHeaderSearchRow{
  padding-top: 0px !important;   /* was 12px */
  padding-bottom: 12px !important;
}

/* =========================================================
   JOBS — PULL SEARCH BAR UP (FINAL FIX)
   Page ID: 2789
   ========================================================= */

html body.page-id-2789 #siHeaderSearchRow{
  padding-top: 0px !important;
  padding-bottom: 12px !important;

  /* 🔑 This is what actually moves it higher */
  margin-top: -12px !important;
}


/* =========================================
   JOBS — CONTROLLED GAP UNDER SEARCH
   Page ID 2789
   ========================================= */

/* Keep the search row slightly tighter */
body.page-id-2789 #siHeaderSearchRow{
  padding-top: 12px !important;
  padding-bottom: 10px !important; /* a bit more breathing room */
}

/* Remove Astra's big default padding, then we add our own */
body.page-id-2789 #content.site-content{
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* This is the ONLY gap you’ll see under the search */
body.page-id-2789 .facetwp-template{
  margin-top: 30px !important;   /* <-- adjust this (12–18 is perfect) */
  padding-top: 0 !important;
}

/* =========================================
   BUSINESSES — CONTROLLED GAP UNDER SEARCH
   Page ID 2506
   ========================================= */

/* Keep the search row slightly tighter */
body.page-id-2506 #siHeaderSearchRow{
  padding-top: 12px !important;
  padding-bottom: 10px !important; /* a bit more breathing room */
}

/* Remove Astra's big default padding, then we add our own */
body.page-id-2506 #content.site-content{
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* This is the ONLY gap you’ll see under the search */
body.page-id-2506 .facetwp-template{
  margin-top: 22px !important;   /* <-- adjust this (12–18 is perfect) */
  padding-top: 0 !important;
}


/* =========================================================
   BUSINESSES — BREATHING ROOM BETWEEN DIVIDER & NOTICE
   Page ID: 2506
   ========================================================= */

html body.page-id-2506 .entry-content{
  padding-top: 12px !important;
}


html body.page-id-2506 .si-notice{
  margin-top: 4px !important;
}


/* FORCE website gray behind search row only */
body.page-id-1645 .feed.site {
  background: #F5F5F7 !important;
}

/* Keep the rest of the page Apple white */
body.page-id-1645 #content.site-content {
  background: #ffffff !important;
}

/* FORCE website gray behind search row only */
body.page-id-2506 .feed.site {
  background: #F5F5F7 !important;
}

/* Keep the rest of the page Apple white */
body.page-id-2506 #content.site-content {
  background: #ffffff !important;
}

/* FORCE website gray behind search row only */
body.page-id-2789 .feed.site {
  background: #F5F5F7 !important;
}

/* Keep the rest of the page Apple white */
body.page-id-2789 #content.site-content {
  background: #ffffff !important;
}



  /* Logo / menu row spacing */
  .site-branding,
  .elementor-widget-site-logo,
  .elementor-widget-nav-menu{
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
}









