
.learndash-wrapper .ld-button:not([disabled]):not(.ld-button-reverse):not(.ld-button-transparent):not(.ld--ignore-inline-css){
  border-radius: 8px !important;
}


.learndash-course-grid .items-wrapper .list-2 .thumbnail img {
    border-radius:  8px !important;
    width:  250px !important;
    height:   150px !important;
}


/* Make Kadence wrapper full width on single events */
body.single-tribe_events .content-container.site-container,
body.single-tribe_events .site-container {
  max-width: 100% !important;
  width: 100% !important;
  padding-left: 0;
  padding-right: 0;
}
/* Ensure inner content isn't re-narrowed */
body.single-tribe_events .entry-content,
body.single-tribe_events .wrap, 
body.single-tribe_events .content-area {
  max-width: 100% !important;
  margin-top: 0px !important;
}

.xoo-el-form-container ul.xoo-el-tabs li{
  margin-right: 20px !important;
  border-radius: 8px !important;
}

.wp-element-button.ace-starter-quiz{
  background: #1C647C !important;
}
.wp-element-button.ace-starter-quiz:hover{
  background: #681d8c !important;
}
.ld-navigation__next-link--just-completed {
  background-color: #681d8c !important;
  border-radius:8px !important;
  border-color: #681d8c !important; 
  color:  #ffffff !important;
}
a.button, a.wp-element-button{
    color: #ffffff !important;
    border-radius:8px !important;
}
.ribbon{
    background: #1C647C !important;
}
.ld-tab-bar__tab{
    background-color: #ffffff !important;
    color: #1C647C !important;
}

.ace-completed .items-wrapper.list, .ace-explore .items-wrapper.list, .ace-enrolled .items-wrapper.list{
  margin-top:   30px;
}

.learndash-course-grid-filter .buttons .button.blue,
.ace-explore .load-more{
  background-color: #681d8c !important;
  border-radius:8px !important;
  border-color: #681d8c !important;  
  padding:  8px 15px !important;
}


.toggle-filter, .learndash-course-grid-filter .buttons .button.grey {
  border-radius:8px !important;
 
}



/* ACE Content Tabs Custom Styling */
.ace-content-tabs .e-n-tabs-heading {
  display: inline-flex !important;
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid #e0e0e0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  gap: 0 !important;
  width: auto !important;
  overflow: visible !important;
}

.ace-content-tabs .e-n-tab-title {
  background: transparent !important;
  border: none !important;
  border-bottom: 3px solid transparent !important;
  padding: 12px 28px !important;
  color: #000000 !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  border-radius: 0 !important;
  margin: 0 !important;
  min-height: 45px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
  box-shadow: none !important;
  outline: none !important;
}

.ace-content-tabs .e-n-tab-title:hover {
  color: #681d8c !important;
  background: transparent !important;
  box-shadow: none !important;
}

.ace-content-tabs .e-n-tab-title[aria-selected="true"] {
  background: transparent !important;
  color: #681d8c !important;
  border-bottom: 3px solid #681d8c !important;
  box-shadow: none !important;
}

.ace-content-tabs .e-n-tab-title:focus,
.ace-content-tabs .e-n-tab-title:focus-visible {
  outline: none !important;
  box-shadow: none !important;
  background: transparent !important;
}

.ace-content-tabs .e-n-tab-title-text {
  font-family: inherit !important;
}








/* =========================
   STARTER QUIZ — FULL CSS
   ========================= */

/* Layout & spacing */
.starter-quiz fieldset{border:0;padding:0;margin:0 0 50px}
.starter-quiz legend{display:block;margin:0 0 8px;font-weight:800;color:#111}
.starter-quiz .sq-help{margin:0 0 10px;color:#666;font-size:14.5px;line-height:1.5}

/* Keep question text on its own row; options beneath */
.starter-quiz .sq-field{display:block}
.starter-quiz .sq-head{margin:0 0 8px}
.starter-quiz .sq-options{
  display:flex;
  flex-wrap:wrap;
  gap:13px;              /* row + column gap */
}

/* Choice pill (label wraps input + span) */
.starter-quiz .sq-choice{position:relative;display:inline-flex;align-items:center}
.starter-quiz .sq-choice input{
  position:absolute;inset:0;opacity:0; /* keep clickable via label */
}

/* --- Pill visuals (bigger, bold, solid outline) --- */
.starter-quiz .sq-choice > span{
  display:inline-block;
  padding:15px 17px;               /* <= bigger */
  font-size:18px;                  /* <= bigger text */
  line-height:1;
  font-weight:400;                 /* bold labels */
  letter-spacing:.1px;

  border:1px solid #681D8C;        /* strong outline */
  border-radius:8px;
  background:#fff;
  color:#681D8C;

  text-decoration:none;
  box-shadow:none;
  transition:background .15s, color .15s, border-color .15s, box-shadow .15s;
}

/* Unchecked = outlined */
.starter-quiz .sq-radio   input:not(:checked) + span,
.starter-quiz .sq-checkbox input:not(:checked) + span{
  background:#fff !important;
  color:#681D8C !important;
  border-color:#681D8C !important;
}

/* Checked = filled */
.starter-quiz .sq-radio   input:checked + span,
.starter-quiz .sq-checkbox input:checked + span{
  background:#681D8C !important;
  color:#fff !important;
  border-color:#681D8C !important;
}

/* Hover / focus */
.starter-quiz .sq-choice:hover > span{
  box-shadow:0 2px 6px rgba(104,29,140,.12);
}
.starter-quiz .sq-choice input:focus-visible + span{
  outline:2px solid rgba(104,29,140,.35);
  outline-offset:2px;
}

/* Actions row */
.starter-quiz .sq-actions{
  display:flex;align-items:center;justify-content:flex-end;gap:16px;margin-top:110px
}
.starter-quiz .sq-skip{
  margin-right:auto;color:#681D8C;font-weight:400;text-decoration:none
}
.starter-quiz .sq-skip:hover{ text-decoration:none }

/* Style the submit so theme buttons don’t clash */
.starter-quiz .sq-submit,
.starter-quiz .button.button-primary{
  appearance:none;
  border:0;
  cursor:pointer;
  padding:15px 22px;
  border-radius:8px;
  background:#681D8C;
  color:#fff;
  font-weight:400;
  line-height:1;
}
.starter-quiz .sq-submit:hover,
.starter-quiz .button.button-primary:hover{
  filter:brightness(1.05);
}

/* Mobile tweaks */
@media (max-width:600px){
  .starter-quiz .sq-choice > span{ padding:9px 16px; font-size:14px }
  .starter-quiz .sq-options{ gap:10px }
}














/**
 * All of the CSS for your public-facing functionality should be
 * included in this file.
 */
.ld-continue-cards{
	display:grid;
	gap:28px;
	justify-content:center;
	grid-template-columns:repeat(var(--ld-cc-cols,2),minmax(280px,1fr));
}
.ld-continue-card{
	background:#fff;
	border:1px solid rgba(0,0,0,.08);
	border-radius:14px;
	padding:20px;
	box-shadow:0 6px 18px rgba(0,0,0,.05);
}
.ld-cc-header{
	display:flex;
	justify-content:space-between;
	align-items:center;
	margin-bottom:8px;
}
.ld-cc-course{
	font-weight:600;
}
.ld-cc-progress{
	font-size:18px;
	opacity:.75;
	border:1px solid rgba(0,0,0,.12);
	padding:3px 8px;
	border-radius:999px;
}
.ld-cc-lesson{
	margin:.25rem 0 1rem;
	font-size:14px;
	opacity:.9;
}
.ld-cc-cta{
	display:inline-block;
	text-decoration:none;

}
.ld-upcoming-lessons{
	display:grid;
	gap:18px;
	justify-content:center;
	grid-template-columns:repeat(var(--ld-ul-cols,2),minmax(280px,1fr));
}
.ld-up-card{
	background:#fff;
	border:1px solid rgba(0,0,0,.08);
	border-radius:14px;
	padding:16px;box-shadow:0 6px 18px rgba(0,0,0,.05);
}
.ld-up-top{
	display:flex;
	justify-content:flex-end;align-items:center;
	margin-bottom:6px;
}
.ld-up-date{
	font-size:18px;opacity:.8;
}
.ld-up-lesson{
	margin:.25rem 0 4px;
	font-size:18px;font-weight:600;
}
.ld-up-course{
	opacity:.85;
	margin:0 0 12px;
}
.ld-up-cta{
	display:inline-block;
	text-decoration:none;
	border:1px solid currentColor;
	border-radius:10px;
	padding:.5rem .9rem;
}
/* vertical stack, compact like the mock */
.aec-ld-stats.vstack{
  display: grid;
  row-gap: 14px;
  max-width: 260px; /* tweak to your layout */
}

.aec-ld-stat{
  display: flex;
  align-items: center;
  gap: 12px;
}

.aec-ld-stat__icon svg{
  width: 32px;
  height: 32px;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,.08));
  border-radius: 8px; /* smooth outer edge */
}

.aec-ld-stat__num{
  font-weight: 800;
  font-size: 20px;
  line-height: 1.1;
  margin-bottom: 2px;
}
.aec-ld-stat__content{
	margin-top: 15px;
}
.aec-ld-stat__label{
  font-size: 18px;
}
/* Empty state card wrapper */
.ld-continue-empty.card-ish{
  /* Layout */
  display: grid;
  grid-template-rows: auto auto auto;
  row-gap: 14px;
  /* Box */
  padding: 20px;
  border-radius: 16px;
  background: #fff;
  border: 1px solid rgba(0,0,0,0.08);
  box-shadow: 0 4px 16px rgba(0,0,0,0.04);
}

/* Title */
.ld-continue-empty__title{
  margin: 0 0 2px 0;
  font-weight: 600 !important;
  line-height: 1.25;
  font-size: 24px !important;
}

/* Description */
.ld-continue-empty__desc{
  margin: 0;
  opacity: .9;
}

/* Actions row (container only, no link styling) */
.ld-continue-empty__actions{
  display: flex;
  gap: 45px;
  align-items: center;
  flex-wrap: wrap;
}
/* List wrapper */
.ace-rec-list{
  display: grid;
  gap: 14px;
}

/* Card layout */
.ace-rec-card{
  display: grid;
  grid-template-columns: 120px 1fr;          /* image | content */
  grid-template-rows: auto 1fr auto;         /* title | excerpt | cta */
  column-gap: 16px;
  row-gap: 8px;

  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 14px;
  padding: 14px 16px;
  box-shadow: 0 2px 12px rgba(0,0,0,.04);
}

/* Thumbnail (left) */
.ace-rec-thumb{
  grid-column: 1;
  grid-row: 1 / span 3;                      /* span all rows */
  display: block;
  /*width: 120px;*/
  aspect-ratio: 3 / 2;                       /* keeps a nice card ratio */
  overflow: hidden;
  border-radius: 10px;
}
.ace-rec-thumb img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
/* Placeholder if no image */
.ace-rec-thumb--ph{
  width: 100%;
  height: 100%;
  background: #f2f3f5;
  border: 1px dashed rgba(0,0,0,.15);
  border-radius: 10px;
}

/* Body (right) */
.ace-rec-body{
  grid-column: 2;
  grid-row: 1 / span 2;                      /* title + excerpt area */
  min-width: 0;                               /* enables text clamping */
}
.ace-rec-title{
  margin: 0 0 4px 0;
  font-weight: 700;
  line-height: 1.2;
  font-size: 18px !important;
  font-weight: 700 !important;

}

.ace-rec-title a{
  text-decoration: none;
  color: #000000 !important;
}
.ace-rec-excerpt{
  margin: 0;
  opacity: .9;
  display: -webkit-box;                       /* 2-line clamp */
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* CTA bottom-right */
.ace-rec-cta{
  grid-column: 2;                             /* inside right column */
  grid-row: 3;                                /* bottom row */
  justify-self: end;                          /* bottom-right align */
  align-self: end;
}
.ace-all-calendar .elementor-heading-title a::after, .ld-cc-cta::after, .ace-explor-content::after, .ace-rec-link::after {
    content: '';
    display: inline-block;
    width: 9px;
    height: 9px;
    border-top: 2.5px solid #681D8C;
    border-right: 2.5px solid #681D8C;
    transform: rotate(45deg);
    transition: transform 0.3s ease;
}
.ace-all-calendar .elementor-heading-title a:hover::after, .ld-cc-cta:hover::after,.ace-explor-content:hover::after,.ace-rec-link:hover::after {
 
    border-top-color: #1C647C;
    border-right-color: #1C647C;
}











/* ===============================
   Upcoming lessons — container
   (2 wide columns, centered)
   =============================== */
.ace-next-lessons{
  display: grid;
  gap: 24px;

  /* make the section wider but still inside content */
    max-width: clamp(780px, 74vw, 940px);      /* grows with viewport */
  width: 100%;
  margin: 0 auto;

  /* two columns; each card gets a wider minimum */
  grid-template-columns: repeat(2, minmax(300px, 1fr));   /* <= bump 620 if you want even wider */
}

/* keep two columns on desktop; stack only when it truly won't fit */
@media (max-width: 1288px){ /* 620 + 620 + gaps ≈ 1288 */
  .ace-next-lessons{ grid-template-columns: 1fr; }
}

/* ===============================
   Card (inside layout unchanged)
   =============================== */
.ace-nl-card{
  background:#fff;
  border:1px solid rgba(0,0,0,.08);
  border-radius:14px;
  padding:18px 18px;   /* a touch roomier */
  box-shadow:0 2px 12px rgba(0,0,0,.04);

  display:grid;
  grid-template-columns: 1fr auto;      /* left | right */
  grid-template-areas:
    "lesson lesson"   /* Row 1 spans both */
    "date   date"     /* Row 2 spans both */
    ".      cta";     /* Row 3: empty left, CTA right */
  row-gap:12px;
  column-gap:16px;
  text-align:left;
}

/* let .ace-nl-top children place on the parent grid */
.ace-nl-top{ display: contents; }

/* Row 1 — event name */
.ace-nl-lesson{
  grid-area: lesson;
  font-size:.95rem;
  line-height:1.35;
  opacity:.9;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Row 2 — date */
.ace-nl-date{
  grid-area: date;
  font-weight:700;
  font-size:1.1rem;
  line-height:1.3;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Row 3 — CTA right */
.ace-nl-card > a.btn{
  grid-area: cta;
  justify-self: end;
  align-self: start;
  white-space: nowrap;
  display: inline-block;
}









/* Responsive */
@media (max-width: 640px){
  .ace-rec-card{
    grid-template-columns: 96px 1fr;
    border-radius: 12px;
    padding: 12px 14px;
  }
  .ace-rec-thumb{ width: 96px; }



   .ld-continue-empty.card-ish{
    padding: 16px;
    row-gap: 12px;
    border-radius: 14px;
  }
  .ld-continue-empty__actions{
    gap: 10px;
  }
}


/* ===== Responsive ===== */
@media (max-width: 768px){
  .ace-next-lessons{
    grid-template-columns: 1fr;
    gap: 12px;
  }
  .ace-nl-card{ padding: 14px 16px; border-radius: 12px; }
}

/* ===== Optional: right-aligned "See lesson calendar" link under the grid ===== */
.ace-nl-more{
  margin-top: 10px;
  text-align: right;
}
.ace-nl-more a{

  text-decoration: none;
  font-weight: 600;
}
.ace-nl-more a::after{
  content: "›";
  margin-left: 6px;
}









@media (max-width:700px) {
	.ld-continue-cards {
		grid-template-columns:1fr;
	}
	.ld-upcoming-lessons{
		grid-template-columns:1fr;
	}
}

@media (max-width: 480px) {
  .ace-greet-msg {
    font-size: 22px;   /* or 1.375rem */
    line-height: 1.2;
  }
}


/* Force the 3 tabs to stack vertically on mobile */
@media (max-width: 767px) {
  /* make the tablist a normal block container (not 'contents') */
  .ace-content-tabs .e-n-tabs-heading[role="tablist"] {
    display: block !important;
  }

  /* each tab button becomes a full-width block with spacing */
  .ace-content-tabs .e-n-tabs-heading .e-n-tab-title {
    display: block !important;
    width: 100% !important;
    margin: 0 0 10px 0 !important;
    text-align: left !important;
  }

  /* remove bottom gap on the last one */
  .ace-content-tabs .e-n-tabs-heading .e-n-tab-title:last-child {
    margin-bottom: 0 !important;
  }
}
/* Mobile-only: widen tabs horizontally, reduce vertical height */
@media (max-width: 480px) {
  .ace-signin-signup .xoo-el-login-btm-fields {
    display: flex;
    flex-direction: column;      /* stack vertically */
    align-items: flex-start;     /* left align both */
    gap: 6px;                    /* spacing between the two lines */
    margin-top: 10px;
    margin-bottom: 16px;
  }

  .ace-signin-signup .xoo-el-login-btm-fields .xoo-el-form-label {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin: 0;
    font-size: 14px;
  }

  .ace-signin-signup .xoo-el-login-btm-fields .xoo-el-lostpw-tgr {
    font-size: 14px;
    text-decoration: none;
    white-space: nowrap;
  }
}









/* Mobile dropdown for WooCommerce My Account */
@media (max-width: 768px) {
  .woocommerce-MyAccount-navigation {
    position: relative;
    margin-bottom: 20px;
  }
  
  /* Dropdown button */
  .woocommerce-MyAccount-navigation::before {
    content: attr(data-active-item);
    display: block;
    padding: 15px;
    background: #fff;
    border: 2px solid #681d8c;
    border-radius: 8px;
    cursor: pointer;
    font-weight: 600;
    color: #681d8c;
    position: relative;
  }
  
  /* Dropdown arrow */
  .woocommerce-MyAccount-navigation::after {
    content: "▼";
    position: absolute;
    right: 20px;
    top: 15px;
    color: #681d8c;
    transition: transform 0.3s ease;
    pointer-events: none;
  }
  
  /* Rotate arrow when open */
  .woocommerce-MyAccount-navigation.is-open::after {
    transform: rotate(180deg);
  }
  
  /* Hide navigation items by default */
  .woocommerce-MyAccount-navigation ul {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: #fff;
    border: 2px solid #681d8c;
    border-radius: 8px;
    margin-top: 5px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    z-index: 999;
    padding: 0;
  }
  
  /* Show navigation when open */
  .woocommerce-MyAccount-navigation.is-open ul {
    display: block;
  }
  
  .woocommerce-MyAccount-navigation ul li {
    margin: 0;
    border-bottom: 1px solid #e5e7eb;
  }
  
  .woocommerce-MyAccount-navigation ul li:last-child {
    border-bottom: none;
  }
  
  .woocommerce-MyAccount-navigation ul li a {
    display: block;
    padding: 15px;
    color: #681d8c;
    text-decoration: none;
    transition: background 0.2s ease;
  }
  
  .woocommerce-MyAccount-navigation ul li a:hover,
  .woocommerce-MyAccount-navigation ul li.is-active a {
    background: #f3e8ff;
  }
}

/* Higher specificity (if needed) */
.content .wrapper .title-wrapper .entry-title a:hover { all: unset; }
.content .wrapper .title-wrapper .entry-title a:hover { 
  all: unset; 
  cursor: pointer; 
}
.learndash_mark_complete_button:hover{
  padding:  15px 20px 15px 20px !important;
 font-weight:   700 !important;
 font-size:   16px !important;
 font-family:   nunito !important;
  
}

.elementor-widget-theme-site-logo img {
  width: 160px !important;
  height: 80px !important;
  object-fit: contain !important;
}