/*
 Theme Name:   Astra Child
 Template:     astra
 Version:      1.0.0
 Description:  Child theme for Astra
 Author:       Your Name
*/

/* import parent styles */
@import url("../astra/style.css");

/* @media (max-width: 600px) {
    .uagb-container-inner-blocks-wrap {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
    }
} */

/* Use your header font (fallbacks for Astra vars) */
:root {
  /* only needed if you haven't set this already */
  /* --font-heading: "Inter", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; */
}

b, strong {
    font-weight: 900 !important;
}

.mkac-content-container {
    padding-left: 20px !important;
    padding-right: 20px !important;
}

.ast-mobile-header-logo {
    width: 100% !important;
    max-width: 100% !important;
}

.hide_this {
    display: none;
    visibility: hidden;
}
.rounded_corners, .rounded-corners {
	border-radius: 24px !important;
	overflow: hidden;
}

a.footer_link {
	color: #ffffff;
}

a.footer_link:hover {
	color: #ffffff;
	text-decoration: underline;
}

.footer_contact_header {
	margin: 0px !important;
	line-height: 16px !important;
}

/* ul {
    padding-left: 2em !important;
}

li {
    padding-bottom: .5em !important;
} */

.line_80 {
    width: 80% !important;
}





/* #ast-hf-mobile-menu .swpm_mini_login_wrapper {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

 #ast-hf-mobile-menu .swpm_mini_login_wrapper a.mega-menu-link {
  margin-top: 10px !important;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
  padding-left: 30px !important;
  padding-right: 10px !important;
} */

/* keeps text/icons aligned in the menu line */
/* .mega-menu .swpm_mini_login_wrapper > * {
  vertical-align: middle;  
} */

/* removes "join now" from the login page */
.swpm-login-form-register-link {
  display: none !important;
}

/* adding space to the login button */
.swpm-login-form-submit {
    margin-top: 10px !important;
    margin-bottom: 10px !important;
}

.button-no-border > a {
    border: 0px !important;
    padding: 4px 0px 4px 24px!important;
}

@media (max-width: 900px) {
    .button-no-border > a {
        padding: 4px 12px 4px 12px!important;
        letter-spacing: 1px !important;
    }
}

.button-no-border > a:hover {
    background-color: #222222 !important;
}

/* POSTS */

// hide comments

#comments .comments-area {
    display: none !important;
}

// hide nav
/* Hide previous/next post links */
.post-navigation,
.nav-links,
.navigation.post-navigation {
  display: none !important;
}


/* PRESS */

.entry-title, .ast-single-post .entry-title {
    display: none !important;
}

.entry-meta, .ast-single-post .entry-meta {
    display: none !important;
}


/* EVENTS */

.tribe-events-single-event-title, .tribe-events-single-event-title li.ecs-event {
    display: none !important;
}


.ecs-event-list, .tribe-events-single-event-title li.ecs-event {
    list-style-type: none;
}

li.ecs-event h4.entry-title {
    display: block !important;
}

/* Base styling for TEC view switcher buttons (Upcoming / Month) */
.tribe-events-c-top-bar__datepicker {
  display: inline-block;
  padding: .5rem .9rem;
  border-radius: 999px;
  border: 1px solid currentColor;
  background: transparent;
  color: inherit;
  line-height: 1.2;
  text-decoration: none;
}

/* Hover */
.tribe-events .tribe-events-c-view-selector__button:hover {
  background: rgba(0,0,0,.07);
  text-decoration: none;
}

/* Active/selected state (the current view) */
.tribe-events .tribe-events-c-view-selector__button--active,
.tribe-events .tribe-events-c-view-selector__button[aria-current="true"] {
  background: var(--ast-global-color-0, #111);
  color: #fff;
  border-color: var(--ast-global-color-0, #111);
}

/* Spacing between the two buttons */
.tribe-events .tribe-events-c-view-selector__content {
  display: inline-flex;
  gap: .5rem;
}

/* Optional: make the whole switcher align right like Astra's meta areas */
.tribe-events .tribe-events-c-top-bar__views {
  justify-content: flex-end;
}


/* events toggle */

.mkac-toggle-container {
  text-align: right;   /* aligns the link to the right edge */
}

.mkac-toggle-link {
  display: inline-block;
  padding: .2rem .4rem;
  border: 1px solid currentColor;
  border-radius: .175rem;
  text-decoration: none;
  /* color: #ffffff;
  background-color: currentColor;*/
  font-weight: 700;
  letter-spacing: 1px;
  font-size: 0.7rem;
  text-transform: uppercase;
}

.uagb-post__title {
    display: inline-block !important;
    clear: both;
    padding-top: 16px !important;
}

.mkac-event-datetime {
    width: 100% !important;
    display: inline-block !important;
    clear: both;
    padding-top: 20px !important;
    padding-bottom: 0px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    font-size: 1rem;
    line-height: 1.6rem;
}

.entry-content .mkac-event-datetime h4 {
    margin-bottom: 0px !important;
}

.mkac-carousel .uagb-post__image img,
.mkac-carousel .wp-block-post-featured-image img {
  /* width: 100%;
  height: 100%;
  object-fit: cover; 
  object-position: top center; *//* 👈 keep the top visible */
  /* display: block; */
}


/* Kill visual cropping in grids/carousels */
.uagb-post__image,
.wp-block-post-featured-image { aspect-ratio: auto !important; overflow: visible !important; }

.uagb-post__image img,
.wp-block-post-featured-image img {
  height: auto !important;
  object-fit: initial !important;
}




/* add to calendar widget css */

/* ===========================================
   MKAC Add to Calendar — one-line, compact UI
   Scope: .mkac-atc
   =========================================== */

/* Wrapper: horizontal, no wrapping */
.mkac-atc {
  display: flex;
  align-items: center;
  gap: .5rem;
  flex-wrap: nowrap;         /* never wrap to next line */
  white-space: nowrap;       /* keep text inline */
  width: auto;
  margin-bottom: 20px !important;
}

/* Ensure no child stretches or forces a line break */
.mkac-atc > *,
.mkac-atc-controls > * {
  flex: 0 0 auto !important;
}

/* Label sizing */
.mkac-atc-label {
  margin-right: .25rem;
  font-size: .95rem;
  line-height: 1.2;
  color: inherit;
  white-space: nowrap;
}

/* Controls container: prevent 100% width behavior from themes */
.mkac-atc-controls {
  display: inline-flex !important;
  align-items: center;
  gap: .5rem;
  flex-wrap: nowrap;
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: none !important;
  float: none !important;
  clear: none !important;
}

/* Dropdown: compact, never full width */
.mkac-atc-select {
  height: 2.1rem;
  padding: 0 .6rem;
  margin: 0 .2rem 0 0;
  font-size: .92rem;
  line-height: 1.2;
  width: auto !important;        /* override theme 100% rules */
  max-width: 220px;              /* adjust as needed */
}

/* Button: reuse theme styles, but keep inline size */
.mkac-atc-btn,
.mkac-atc .button,
.mkac-atc .wp-element-button,
.mkac-atc .ast-button,
.mkac-atc .ast-custom-button-link,
.mkac-atc .wp-block-button__link {
  width: auto !important;        /* prevent full-width buttons */
  min-width: auto !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  padding: .4rem .7rem;
  font-size: .92rem;
  line-height: 1.2;
  white-space: nowrap;
  text-decoration: none;
}

/* Mobile: keep single-line; allow horizontal scroll if space is tight */
@media (max-width: 480px) {
  .mkac-atc { overflow-x: auto; }
}


/* Single post: tighten the Add-to-Calendar dropdown only on small screens */
@media (max-width: 480px) {
  .single .mkac-atc .mkac-atc-select {
    width: auto !important;          /* override any 100% rules */
    max-width: 60vw;                  /* keep it well within the viewport */
    min-width: 140px;                 /* don’t get too tiny to tap */
    height: 2rem;                     /* compact height */
    padding: 0 .5rem;                 /* tighter padding */
    font-size: 0.95rem;               /* slightly smaller text */
    line-height: 1.2;
  }

  /* Keep the whole widget from forcing a wrap */
  .single .mkac-atc {
    flex-wrap: nowrap;
    overflow-x: auto;                 /* allow gentle sideways scroll if needed */
    gap: .4rem;
  }

  /* Make sure the button doesn’t stretch */
  .single .mkac-atc .mkac-atc-btn {
    width: auto !important;
    min-width: auto !important;
    padding: .4rem .6rem;
    font-size: 0.95rem;
    line-height: 1.2;
    white-space: nowrap;
  }
}

/* OPTIONAL: if space is still tight, hide the label on mobile
@media (max-width: 480px) {
  .single .mkac-atc .mkac-atc-label { display: none; }
}
*/



/* ===========================================
   MKAC Add to Calendar — Compact Card Variant
   Applies to widgets with class .mkac-atc--card (used on grid/carousel cards)
   =========================================== */

/* Keep everything inline and within the card width */
.mkac-atc--card {
  display: flex;
  align-items: center;
  gap: .35rem;
  flex-wrap: nowrap;
  white-space: nowrap;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
}

/* Remove H2 on card blurb */
body.mkac-calendar .uagb-post__excerpt h2 { 
  display: none !important; 
}

/* Remove label on cards to save space (toggle off if you want it) */
.mkac-atc--card .mkac-atc-label { 
  /* display: none;  */
}

.mkac-atc--card .mkac-atc-controls {
  display: inline-flex !important;
  align-items: center;
  gap: .35rem;
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: 100% !important;
}

/* Slim dropdown on cards */
.mkac-atc--card .mkac-atc-select {
  height: 1.85rem;
  padding: 0 .5rem;
  font-size: .85rem;
  line-height: 1.2;
  width: auto !important;
  max-width: 150px;         /* adjust tighter/wider as needed */
}

/* Small button on cards; never full width */
.mkac-atc--card .mkac-atc-btn,
.mkac-atc--card .button,
.mkac-atc--card .wp-element-button {
  width: auto !important;
  min-width: auto !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  padding: .3rem .55rem;
  font-size: .85rem;
  line-height: 1.2;
  white-space: nowrap;
}

/* Prevent wrapping inside tight card layouts */
.uagb-post__inner-wrap .mkac-atc--card * {
  flex: 0 0 auto !important;
}

/* Optional: ensure spacing from the title it follows */
.uagb-post__inner-wrap .mkac-atc--card {
  margin-top: .35rem;
}



/* SHOP */

/* Make menu inside header widget display inline */
.menu-ecommerce-menu-container .menu,
.menu-ecommerce-menu-container .menu ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.menu-ecommerce-menu-container .menu li {
  display: inline-block !important;      /* put items on one line */
  margin-right: 1.5rem !important;       /* space between links */
}

.menu-ecommerce-menu-container .menu li:last-child {
  margin-right: 0 !important;            /* no extra space at end */
}



.mkac-cart { display:inline-flex; align-items:center; gap:.4rem; text-decoration:none; line-height:1; position:relative; }
.mkac-svg { width:22px; height:22px; display:block; }
.mkac-icon-badge .mkac-count{
  min-width:1.25rem; padding:0 .4rem; font-size:.8rem; font-weight:700; line-height:1.25rem; text-align:center;
  border-radius:999px; background:currentColor; color:#fff;
}
.mkac-icon-badge .mkac-count[data-count="0"]{ opacity:.45; background:transparent; color:inherit; border:1px solid currentColor; }


.mkac-text-inline{ font-weight:600; }
.mkac-text-inline .mkac-count{
  font-weight:700; margin-left:.15rem;
  padding:.05rem .35rem; border-radius:.5rem; background:rgba(0,0,0,.08);
}
.mkac-text-inline .mkac-count:empty,
.mkac-text-inline .mkac-count:has(:where()){} /* noop for safety */
.mkac-text-inline .mkac-count:before{ content: "("; }
.mkac-text-inline .mkac-count:after{ content: ")"; }


.mkac-shop-toolbar{
  clear: both;
  width: 100%;
  display: flex;
  justify-content: flex-end;
  margin: 0 0 12px;
  position: sticky; top: 0; z-index: 50;
  display: flex; gap: .75rem; align-items: center; justify-content: flex-end;
  padding: .5rem 1rem; background: #fff; 
  border-bottom: 2px solid rgba(0,0,0,.1);
}
.mkac-shop-toolbar a{
  display: inline-flex; align-items: center; gap: .35rem;
  padding: .4rem .7rem; text-decoration: none; border-radius: .5rem;
}
.mkac-shop-toolbar .mkac-cart-count{
  display: inline-block; min-width: 1.25em; line-height: 1.25em; padding: 0 .35em;
  font-size: .85em; border-radius: 999px; background: rgba(0,0,0,.08);
}


/* remove top hr on Shop page */
.ast-archive-description {
    display: none !important;
}

/* add space below account navigation for mobile */

.woocommerce-MyAccount-navigation {
    padding-bottom: 30px !important;
}

/* 20px side padding on Cart & Checkout for mobile */
@media (max-width: 768px) {
  body.woocommerce-cart .site-main,
  body.woocommerce-checkout .site-main {
    padding-left: 20px;
    padding-right: 20px;
  }
}

/* If your theme doesn't use .site-main, try this fallback instead (or in addition) */
@media (max-width: 768px) {
  body.woocommerce-cart .woocommerce,
  body.woocommerce-checkout .woocommerce {
    padding-top: 20px;
    padding-bottom: 20px;
    padding-left: 20px;
    padding-right: 20px;
  }
}

/* TOP MARGIN SHOP PAGE */

#primary {
    margin: 0 !important;
}

/* Hide result count and sorting dropdown on product archives */
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering { 
    display: none !important; 
}


/* checkout button */

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
    font-size: .8em !important;
    padding-top: 15px;
    padding-bottom: 15px;
    padding-left: 15px;
    padding-right: 15px; 
}

.form-row #place_order {
    margin-top: 20px !important;
}




/* ==== Max Mega Menu (Astra) — preserve slide animation, right-align, fixed width ==== */

/* Let the menu overflow the header if needed */
.ast-main-header-bar-alignment,
.site-header-section { overflow: visible !important; }

/* Your menu width in one place */
#mega-menu-wrap-primary { --menu-width: 160px; }

/* IMPORTANT: keep the UL in normal flow so MMM can animate height.
   Do NOT set position/display/height/overflow/transform/transition here. */
#mega-menu-primary {
  width: var(--menu-width) !important; /* control width */
  max-width: min(92vw, var(--menu-width)) !important;
  margin-left: auto !important;        /* right-align under the toggle */
  right: 0 !important;
  box-sizing: border-box !important;
  /* no position/height/overflow/display/transform rules */
}

/* Keep the toggle wrapper from stretching */
#mega-menu-wrap-primary {
  display: inline-block !important;  /* shrink-wrap to the toggle/button */
  width: auto !important;
  max-width: none !important;
  flex: 0 0 auto !important;         /* avoid flex grow in Astra header */
  z-index: 9999;
}

/* Ensure the toggle itself doesn’t force full width */
#mega-menu-wrap-primary .mega-menu-toggle {
  display: inline-block !important;
  width: auto !important;
  float: none !important;
}

/* Prevent plugin defaults from pushing the UL to a new line */
#mega-menu-wrap-primary .mega-menu-toggle + .mega-menu {
  clear: none !important;
}

/* Optional: tidy link padding inside the narrower panel */
#mega-menu-primary > li > a.mega-menu-link { padding: 12px 16px; }

/* ==== MMM primary toggle vertical nudge ==== */
#mega-menu-wrap-primary { --toggle-nudge: 10px; }

/* Keep the right block flexed so the button moves cleanly */
#mega-menu-wrap-primary .mega-toggle-blocks-right {
  display: flex;
  align-items: flex-start; /* start, then nudge down */
}

/* Move the entire toggle block down */
#mega-menu-wrap-primary #mega-toggle-block-0 {
  position: relative;
  top: var(--toggle-nudge);
}

/* Safety: avoid other margins fighting the nudge */
.ast-builder-menu-1 .mega-menu-toggle {
  margin-top: 0 !important;
}




.mkac-toggle-link,
.mkac-toggle-container a.mkac-toggle-link {
  font-family: var(--font-heading, "Inter", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
}
