a:link { text-decoration: none!important; }
a:visited { text-decoration: none; }
a:hover { text-decoration: none; }
a:active { text-decoration: none; }

/* Equal height columns in LD */
body .ld-course-list-items .ld_course_grid .thumbnail.course,
body .ld-course-list-items .ld_course_grid .thumbnail .caption {
    display: flex;
    flex-direction: column;
    height: 100%;
}

/* Remove this if you don't want the "See more..." button aligned to bottom of each Course Grid item */
body .ld-course-list-items .ld_course_grid .thumbnail .caption {
    justify-content: space-between;
}
/* Temporary fix for LearnDash quiz answers not aligning-last question is not indenting as much as others */
.learndash-wrapper .wpProQuiz_questionListItem label {
   align-items: start !important;
   display: flex !important;
}
.wpProQuiz_questionListItem:not(.ld-sortable__item) input {
   margin-top: 5px;
   margin-right: 10px !important;
}
/* =========================
   LBA HERO — CONSOLIDATED
   =========================
   Tweak only the variables!
*/
.lba-hero{
  /* Desktop card */
  --card-w: 1100px;
  --radius: 22px;

  /* Overlay strength */
  --overlay-top: .34;
  --overlay-mid: .18;
  --overlay-bot: .04;

  /* Desktop spacing */
  --desk-gap: 2.3rem;   /* overall grid gap (P→Buttons mostly) */
  --desk-shift: -50px;

  /* Fine control: headline→paragraph and paragraph→buttons (desktop) */
  --desk-h1p: 3.8rem;   /* space under H1 before paragraph */
  --desk-pbtn: 1.0rem;  /* space under paragraph before buttons */

	/* Tablet defaults (tweak later) */
--tab-h: 62vh;           /* hero height on tablets */
--tab-h-max: 520px;      /* px cap */
--tab-crop-y: 30%;       /* vertical aim of the image */
--tab-shift: -3vh;       /* move whole overlay up/down */
--tab-gap: 1rem;         /* overall gap in overlay */
--tab-h1-top: .5rem;     /* H1 top offset */
--tab-h1p: 1.7rem;        /* H1 → P spacing */
--tab-pbtn: .8rem;       /* P → Buttons spacing */
--tab-btn-gap: .8rem;    /* spacing between buttons */
	
  /* Mobile height & crop */
  --mob-h: 70vh;        /* try 65–75vh */
  --mob-h-max: 460px;   /* px cap */
  --mob-crop-y: 32%;    /* adjust face/paper position */
  --mob-shift: -4vh;    /* move content stack */
  --mob-gap: 1.2rem;    /* overall grid gap on mobile */

  /* Fine control (mobile) */
  --mob-h1p: 4.8rem;     /* H1→P */
  --mob-pbtn: .6rem;    /* P→Buttons */
}

/* ---------- Base layout ---------- */
.lba-hero{ display:flex; justify-content:center; padding:clamp(16px,4vw,32px); }
.lba-hero-card{
  position:relative; width:var(--card-w); max-width:92vw;
  border-radius:var(--radius); overflow:hidden;
}
.lba-hero-card .wp-block-image{ margin:0 !important; height:100%; }
.lba-hero-card .wp-block-image img{ width:100%; height:auto; display:block; aspect-ratio:3/2; }

/* Overlay */
.lba-hero-card::before{
  content:""; position:absolute; inset:0; z-index:1; pointer-events:none;
  background:linear-gradient(180deg,
    rgba(0,0,0,var(--overlay-top)) 0%,
    rgba(0,0,0,var(--overlay-mid)) 42%,
    rgba(0,0,0,var(--overlay-bot)) 100%);
}

/* Overlay content */
.lba-hero-content{
  position:absolute; inset:0; z-index:2;
  display:grid; place-items:center; text-align:center;
  padding:clamp(24px,6vw,64px);
  gap:var(--desk-gap);
}

.lba-hero-content h1,
.lba-hero-content p {
	color: #fff !important;
	-webkit-text-fill-color: #fff
}

.lba-hero-content h1{
  font-weight:800; letter-spacing:-.015em; line-height:1.05;
  font-size:clamp(36px,7vw,72px);
  text-shadow:0 2px 10px rgba(0,0,0,.35);
  text-align:center; /* you also set this in the editor — both are fine */
}

/* H1→P and P→Buttons spacing (desktop) */
.lba-hero-content p{
  font-size:clamp(22px,2.6vw,27px);
  line-height:1.45; max-width:60ch;
  margin-top:var(--desk-h1p) !important;
  margin-bottom:var(--desk-pbtn) !important;
  text-shadow:0 1px 6px rgba(0,0,0,.3);
}

.lba-hero-content .wp-block-buttons{ display:grid; justify-content:center; margin:0; gap:1rem; }
@media (min-width:640px){ .lba-hero-content .wp-block-buttons{ grid-auto-flow:column; } }
.lba-hero-content .wp-block-button__link{
  padding:.9rem 1.6rem; font-size:16.5px; border-radius:999px;
  box-shadow:0 2px 14px rgba(0,0,0,.25);
}

/* ---------- Desktop squish ---------- */
@media (min-width:1024px){
  .lba-hero-content{
    align-content:end; justify-items:center;
    transform:translateY(var(--desk-shift));
    padding:28px 32px 40px;
  }
  .lba-hero-content h1{ font-size:clamp(48px,6.2vw,66px); line-height:1.03; }
  .lba-hero-content p{ font-size:clamp(27px,1.8vw,20px); line-height:1.38; max-width:58ch; }
  .lba-hero-card::before{
    background:linear-gradient(180deg, rgba(0,0,0,.30) 0%, rgba(0,0,0,.16) 42%, rgba(0,0,0,.04) 100%);
  }
}

/* ---------- Mobile (≤600px) ---------- */
@media (max-width:600px){
  .lba-hero-card{
    height:min(var(--mob-h), var(--mob-h-max)); max-height:75vh; overflow:hidden;
  }
  .lba-hero-card .wp-block-image img{
    height:100%; object-fit:cover; object-position:center var(--mob-crop-y);
  }
  .lba-hero-content{
    align-content:end; justify-items:center;
    padding:12px 14px calc(16px + env(safe-area-inset-bottom));
    gap:var(--mob-gap);
    transform:translateY(var(--mob-shift));
  }
  .lba-hero-content h1{
    font-size:clamp(26px,8.3vw,34px);
    line-height:1.08; text-align:center !important;
  }
  .lba-hero-content p{
    font-size:clamp(14px,3.8vw,16px); line-height:1.4; max-width:46ch;
    margin-top:var(--mob-h1p) !important;
    margin-bottom:var(--mob-pbtn) !important;
  }
  .lba-hero-content .wp-block-buttons{ width:100%; gap:.6rem; }
  .lba-hero-content .wp-block-button{ width:100%; }
  .lba-hero-content .wp-block-button__link{ width:100%; padding:.7rem 1rem; font-size:15px; }
}

/* ---------- Tiny phones (short height) ---------- */
@media (max-height:700px) and (max-width:600px){
  .lba-hero-card{ height:min(60vh, 440px); }
  .lba-hero-content{ transform:translateY(calc(var(--mob-shift) + 1vh)); }
}

/* ===== Tablets (601–1023px) ===== */
@media (min-width:601px) and (max-width:1023px){
  .lba-hero-card{
    height: min(var(--tab-h), var(--tab-h-max));
    overflow: hidden;
  }
  .lba-hero-card .wp-block-image img{
    height: 100%;
    object-fit: cover;
    object-position: center var(--tab-crop-y);
  }
  .lba-hero-content{
    align-content: end;
    justify-items: center;
    padding: 20px 24px 28px;
    gap: var(--tab-gap);
    transform: translateY(var(--tab-shift));
    text-align: center;
  }
  .lba-hero-content h1{
    font-size: clamp(34px, 5.2vw, 56px);
    line-height: 1.06;
    margin-top: var(--tab-h1-top);
    margin-bottom: var(--tab-h1p);
    text-align: center !important;
  }
  .lba-hero-content p{
    font-size: clamp(16px, 2.2vw, 18px);
    line-height: 1.4;
    max-width: 54ch;
    margin-top: var(--tab-h1p) !important;
    margin-bottom: var(--tab-pbtn) !important;
  }
  .lba-hero-content .wp-block-buttons{
    gap: var(--tab-btn-gap);
  }
}

/* CSS for WP Testimonials section of Homepage */
/* Make testimonial title bold and not italic */
.wtwp-testimonial-title {
  font-style: normal !important;
  font-weight: bold !important;
  color: #000000 !important;
	margin-bottom: 0.5em !important;
}

/* Darken body text */
.wtwp-testimonials-text {
  color: #111111 !important;
  font-weight: normal !important;
}

/* Lighten or de-emphasize the attribution name */
.wtwp-testimonial-avatar {
  color: #666666 !important;
  font-weight: normal !important;
  font-size: 0.9em !important;
}
