/* ── Wigmorean Page Builder — Front-End Styles ─────────────────────────────── */

:root {
  --wig-navy:  #0C1A2E;
  --wig-gold:  #C9A84C;
  --wig-cream: #F7F3EC;
  --wig-blue:  #1A4A8C;
  --wig-muted: #6B7280;
  --wig-ink:   #1A1A2E;
}

/* ── Shared layout ───────────────────────────────────────────────────────────── */
.wig-pb-page { font-family:'DM Sans','Helvetica Neue',Arial,sans-serif; }
.wig-pb-container { max-width:1140px;margin:0 auto;padding:0 32px;box-sizing:border-box; }
.wig-pb-section-title {
  font-size:clamp(1.6rem,3vw,2.4rem);font-weight:700;
  color:var(--wig-navy);margin:0 0 12px;line-height:1.2;
}
.wig-pb-label {
  display:inline-block;background:var(--wig-gold);color:var(--wig-navy);
  font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;
  padding:4px 14px;border-radius:20px;margin-bottom:16px;
}

/* ── Buttons ─────────────────────────────────────────────────────────────────── */
.wig-pb-btn {
  display:inline-block;padding:14px 32px;border-radius:6px;font-weight:700;
  font-size:.9rem;text-decoration:none;cursor:pointer;border:none;
  transition:transform .15s,box-shadow .15s;
}
.wig-pb-btn:hover { transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.15); }
.wig-pb-btn--gold    { background:var(--wig-gold);color:var(--wig-navy); }
.wig-pb-btn--outline { border:2px solid var(--wig-gold);color:var(--wig-gold);background:transparent;padding:12px 32px; }
.wig-pb-btn--outline-dark { border:2px solid var(--wig-navy);color:var(--wig-navy);background:transparent;padding:12px 32px; }

/* ── Hero ────────────────────────────────────────────────────────────────────── */
.wig-pb-hero { padding:100px 0;overflow:hidden; }
.wig-pb-hero .wig-pb-container {
  display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;
}
@media(max-width:780px){ .wig-pb-hero .wig-pb-container { grid-template-columns:1fr; } }
.wig-pb-hero__title {
  font-size:clamp(2rem,5vw,3.8rem);color:#fff;font-weight:900;
  line-height:1.1;margin:12px 0 20px;
}
.wig-pb-hero__title em { color:var(--wig-gold);font-style:italic; }
.wig-pb-hero__sub { color:rgba(255,255,255,.7);font-size:1.1rem;line-height:1.7;margin-bottom:32px; }
.wig-pb-hero__btns { display:flex;gap:14px;flex-wrap:wrap; }

/* DAG */
.wig-pb-dag { max-width:320px;width:100%; }
.wig-pb-dag svg { width:100%;height:auto; }
.wig-dag-line { animation:wig-draw 1.5s ease forwards; }
.wig-dag-node { animation:wig-pulse 3s ease-in-out infinite; }
@keyframes wig-draw  { to { stroke-dashoffset:0; } }
@keyframes wig-pulse { 0%,100%{opacity:.75;transform:scale(.97)} 50%{opacity:1;transform:scale(1)} }
.wig-dag-line:nth-child(2) { animation-delay:.3s; }
.wig-dag-line:nth-child(3) { animation-delay:.6s; }
.wig-dag-line:nth-child(4) { animation-delay:.9s; }
.wig-dag-line:nth-child(5) { animation-delay:1.1s; }
.wig-dag-line:nth-child(6) { animation-delay:1.3s; }

/* ── Stats band ──────────────────────────────────────────────────────────────── */
.wig-pb-stats { padding:40px 0; }
.wig-pb-stats__grid { display:grid;grid-template-columns:repeat(4,1fr);gap:20px; }
@media(max-width:700px){ .wig-pb-stats__grid { grid-template-columns:repeat(2,1fr); } }
.wig-pb-stat { text-align:center; }
.wig-pb-stat__num { font-size:2.2rem;font-weight:900;line-height:1; }
.wig-pb-stat__lbl { font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;margin-top:4px;opacity:.85; }

/* ── Feature grid ────────────────────────────────────────────────────────────── */
.wig-pb-features { padding:80px 0; }
.wig-pb-features__grid { display:grid;gap:24px;margin-top:40px; }
.wig-pb-cols-3 { grid-template-columns:repeat(3,1fr); }
.wig-pb-cols-2 { grid-template-columns:repeat(2,1fr); }
@media(max-width:780px){ .wig-pb-cols-3,.wig-pb-cols-2 { grid-template-columns:1fr; } }
.wig-pb-feature-card {
  background:#fff;border:1px solid #eee;border-radius:12px;padding:28px 24px;
  transition:transform .15s,box-shadow .15s;
}
.wig-pb-feature-card:hover { transform:translateY(-4px);box-shadow:0 12px 32px rgba(0,0,0,.08); }
.wig-pb-feature-card__icon { font-size:2rem;margin-bottom:14px; }
.wig-pb-feature-card h3    { font-size:1.1rem;color:var(--wig-navy);margin:0 0 8px; }
.wig-pb-feature-card p     { font-size:.9rem;color:var(--wig-muted);line-height:1.6;margin:0; }

/* ── Image + Text ────────────────────────────────────────────────────────────── */
.wig-pb-imgtext { padding:80px 0; }
.wig-pb-imgtext__row {
  display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;
}
.wig-pb-imgtext--left  .wig-pb-imgtext__img  { order:-1; }
@media(max-width:780px){ .wig-pb-imgtext__row { grid-template-columns:1fr; } }
.wig-pb-imgtext__img img { width:100%;border-radius:12px;box-shadow:0 16px 40px rgba(0,0,0,.12); }
.wig-pb-imgtext__copy p  { color:var(--wig-muted);line-height:1.8;margin:0 0 24px; }

/* ── Text block ──────────────────────────────────────────────────────────────── */
.wig-pb-text { padding:80px 0; }
.wig-pb-text__body { color:var(--wig-muted);line-height:1.8;margin-top:16px; }

/* ── Quote ───────────────────────────────────────────────────────────────────── */
.wig-pb-quote { padding:80px 0; }
.wig-pb-quote blockquote {
  font-size:clamp(1.2rem,2.5vw,1.8rem);line-height:1.6;
  font-style:italic;font-weight:300;max-width:780px;margin:0 auto 20px;text-align:center;
}
.wig-pb-quote cite { display:block;text-align:center;font-size:.85rem;letter-spacing:.08em;opacity:.7; }

/* ── CTA Banner ──────────────────────────────────────────────────────────────── */
.wig-pb-cta { padding:80px 0; }
.wig-pb-cta__inner { text-align:center; }
.wig-pb-cta__sub { color:rgba(255,255,255,.75);font-size:1.1rem;margin:12px 0 32px; }
.wig-pb-cta__btns { display:flex;gap:14px;justify-content:center;flex-wrap:wrap; }
.wig-pb-cta .wig-pb-label { background:rgba(255,255,255,.15);color:#fff; }

/* ── Contact form ────────────────────────────────────────────────────────────── */
.wig-pb-contact { padding:80px 0; }
.wig-pb-contact__inner { max-width:600px;margin:0 auto; }
.wig-pb-form { margin-top:28px; }
.wig-pb-form__row { display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px; }
@media(max-width:600px){ .wig-pb-form__row { grid-template-columns:1fr; } }
.wig-pb-form input,
.wig-pb-form select,
.wig-pb-form textarea {
  width:100%;box-sizing:border-box;padding:12px 16px;margin-bottom:14px;
  border:1px solid #ddd;border-radius:6px;font-size:.95rem;font-family:inherit;
  transition:border-color .15s;
}
.wig-pb-form input:focus,
.wig-pb-form select:focus,
.wig-pb-form textarea:focus { border-color:var(--wig-blue);outline:none;box-shadow:0 0 0 3px rgba(26,74,140,.1); }
.wig-pb-form textarea { min-height:120px;resize:vertical; }
.wig-pb-form__status { margin-top:14px;padding:10px 16px;border-radius:6px;display:none; }
.wig-pb-form__status.success { display:block;background:#e7f7e7;color:#1a7a1a; }
.wig-pb-form__status.error   { display:block;background:#fff0f0;color:#8c1a1a; }

/* ── Countdown ───────────────────────────────────────────────────────────────── */
.wig-pb-countdown { padding:80px 0;text-align:center; }
.wig-pb-countdown__timer {
  display:flex;justify-content:center;gap:32px;flex-wrap:wrap;margin-top:32px;
}
.wig-pb-countdown__unit { text-align:center; }
.wig-pb-cd-num {
  display:block;font-size:clamp(2.5rem,6vw,4rem);font-weight:900;
  color:var(--wig-gold);line-height:1;font-variant-numeric:tabular-nums;
}
.wig-pb-cd-lbl {
  display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;
  color:rgba(255,255,255,.6);margin-top:6px;
}
.wig-pb-countdown__after { color:#fff;font-size:1.4rem;font-weight:700; }

/* ── Team ────────────────────────────────────────────────────────────────────── */
.wig-pb-team { padding:80px 0; }
.wig-pb-team__grid { display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:40px; }
@media(max-width:780px){ .wig-pb-team__grid { grid-template-columns:1fr; } }
.wig-pb-team-card { text-align:center; }
.wig-pb-team-card__photo {
  width:100px;height:100px;border-radius:50%;object-fit:cover;
  margin:0 auto 16px;display:block;border:3px solid var(--wig-gold);
}
.wig-pb-team-card__avatar {
  width:100px;height:100px;border-radius:50%;background:var(--wig-navy);
  color:var(--wig-gold);font-size:2rem;font-weight:700;
  display:flex;align-items:center;justify-content:center;
  margin:0 auto 16px;border:3px solid var(--wig-gold);
}
.wig-pb-team-card h3     { margin:0 0 4px;color:var(--wig-navy); }
.wig-pb-team-card__role  { color:var(--wig-gold);font-size:.85rem;font-weight:600;margin-bottom:10px; }
.wig-pb-team-card p      { color:var(--wig-muted);font-size:.9rem;line-height:1.6; }

/* ── Courses ─────────────────────────────────────────────────────────────────── */
.wig-pb-courses { padding:80px 0; }
.wig-pb-courses__grid { display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px; }
@media(max-width:780px){ .wig-pb-courses__grid { grid-template-columns:1fr; } }
.wig-pb-course-card {
  background:#fff;border:1px solid #eee;border-radius:12px;padding:28px 24px;
  transition:transform .15s,box-shadow .15s;
}
.wig-pb-course-card:hover { transform:translateY(-3px);box-shadow:0 10px 28px rgba(0,0,0,.08); }
.wig-pb-course-card__num { font-size:1.8rem;margin-bottom:12px; }
.wig-pb-course-card h3   { color:var(--wig-navy);margin:0 0 8px; }
.wig-pb-course-card p    { color:var(--wig-muted);font-size:.88rem;line-height:1.6;margin:0 0 16px; }

/* ── Bar prep CTA ────────────────────────────────────────────────────────────── */
.wig-pb-bar-cta { padding:80px 0; }
.wig-pb-bar-cta__inner { text-align:center; }
.wig-pb-bar-cta__badge {
  display:inline-block;border:2px solid var(--wig-gold);color:var(--wig-gold);
  padding:4px 18px;border-radius:4px;font-size:.8rem;font-weight:700;
  letter-spacing:.2em;margin-bottom:20px;
}

/* ── Proof engine intro ──────────────────────────────────────────────────────── */
.wig-pb-proof { padding:80px 0; }
.wig-pb-proof__inner { display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;margin-top:32px; }
@media(max-width:780px){ .wig-pb-proof__inner { grid-template-columns:1fr; } }
.wig-pb-proof__text p { color:var(--wig-muted);line-height:1.8;margin-bottom:24px; }

/* ── Service times ───────────────────────────────────────────────────────────── */
.wig-pb-services { padding:80px 0; }
.wig-pb-services__grid { display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px; }
@media(max-width:780px){ .wig-pb-services__grid { grid-template-columns:1fr; } }
.wig-pb-service-card {
  border:1px solid rgba(255,255,255,.15);border-radius:10px;padding:24px;text-align:center;
}
.wig-pb-service-card__day  { color:var(--wig-gold);font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.1em;margin-bottom:6px; }
.wig-pb-service-card__time { color:#fff;font-size:1.3rem;font-weight:700;margin-bottom:6px; }
.wig-pb-service-card__name { color:rgba(255,255,255,.7);font-size:.9rem; }

/* ── Giving / Prayer / Volunteer / Donate ────────────────────────────────────── */
.wig-pb-giving,
.wig-pb-prayer,
.wig-pb-volunteer { padding:80px 0; }
.wig-pb-giving__inner,
.wig-pb-prayer__inner,
.wig-pb-volunteer__inner { max-width:600px;margin:0 auto;text-align:center; }
.wig-pb-giving h2,.wig-pb-prayer h2,.wig-pb-volunteer h2 { margin-bottom:16px; }
.wig-pb-giving p,.wig-pb-prayer p,.wig-pb-volunteer p { margin-bottom:28px;line-height:1.7; }

/* ── Impact numbers ──────────────────────────────────────────────────────────── */
.wig-pb-impact { padding:80px 0; }
.wig-pb-impact__grid { display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:40px; }
@media(max-width:700px){ .wig-pb-impact__grid { grid-template-columns:repeat(2,1fr); } }
.wig-pb-impact-card { text-align:center; }
.wig-pb-impact-card__num { font-size:2.4rem;font-weight:900;color:var(--wig-gold);line-height:1; }
.wig-pb-impact-card__lbl { font-size:.82rem;color:rgba(255,255,255,.7);margin-top:6px; }

/* ── Promo Banner ────────────────────────────────────────────────────────────── */
.wig-pb-promo-banner { padding:12px 0;position:relative;z-index:10; }
.wig-pb-promo-banner__inner {
  display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap;
}
.wig-pb-promo-banner__text { font-weight:600;font-size:.95rem; }
.wig-pb-promo-banner .wig-pb-btn--outline {
  border-color:currentColor;color:inherit;padding:6px 18px;font-size:.82rem;
}

/* ── Product Grid ────────────────────────────────────────────────────────────── */
.wig-pb-products { padding:80px 0; }
.wig-pb-products__grid { display:grid;gap:24px;margin-top:40px; }
.wig-pb-product-card {
  background:#fff;border:1px solid #eee;border-radius:12px;overflow:hidden;
  position:relative;transition:transform .15s,box-shadow .15s;
}
.wig-pb-product-card:hover { transform:translateY(-4px);box-shadow:0 12px 32px rgba(0,0,0,.1); }
.wig-pb-product-card__badge {
  position:absolute;top:12px;right:12px;z-index:2;
  background:var(--wig-gold);color:var(--wig-navy);
  font-size:.7rem;font-weight:700;padding:3px 10px;border-radius:20px;text-transform:uppercase;
}
.wig-pb-product-card__img {
  width:100%;height:220px;object-fit:cover;display:block;
}
.wig-pb-product-card__placeholder {
  width:100%;height:220px;background:var(--wig-cream);
  display:flex;align-items:center;justify-content:center;font-size:3.5rem;
}
.wig-pb-product-card__body  { padding:20px; }
.wig-pb-product-card__body h3 { margin:0 0 6px;font-size:1rem;color:var(--wig-navy); }
.wig-pb-product-card__body h3 a { color:inherit;text-decoration:none; }
.wig-pb-product-card__body h3 a:hover { color:var(--wig-gold); }
.wig-pb-product-card__body p  { color:var(--wig-muted);font-size:.85rem;margin:0 0 10px;line-height:1.5; }
.wig-pb-product-card__price {
  font-size:1.25rem;font-weight:900;color:var(--wig-navy);margin-bottom:14px;
}
.wig-pb-btn--sm { padding:9px 20px;font-size:.82rem; }

/* ── Pricing Table ───────────────────────────────────────────────────────────── */
.wig-pb-pricing { padding:80px 0; }
.wig-pb-pricing__sub { color:var(--wig-muted);text-align:center;margin:-4px 0 36px;font-size:1rem; }
.wig-pb-pricing__grid {
  display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:16px;align-items:start;
}
@media(max-width:780px){ .wig-pb-pricing__grid { grid-template-columns:1fr; } }
.wig-pb-pricing-card {
  background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:36px 28px;
  position:relative;overflow:hidden;transition:box-shadow .15s;
}
.wig-pb-pricing-card:hover { box-shadow:0 12px 32px rgba(0,0,0,.1); }
.wig-pb-pricing-card--featured {
  border-color:var(--wig-gold);box-shadow:0 8px 40px rgba(201,168,76,.2);
  transform:scale(1.03);
}
.wig-pb-pricing-card__ribbon {
  position:absolute;top:0;left:50%;transform:translateX(-50%);
  background:var(--wig-gold);color:var(--wig-navy);
  font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;
  padding:4px 20px;border-radius:0 0 8px 8px;
}
.wig-pb-pricing-card__name {
  font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;
  color:var(--wig-muted);margin-bottom:12px;margin-top:12px;
}
.wig-pb-pricing-card--featured .wig-pb-pricing-card__name { color:var(--wig-gold); }
.wig-pb-pricing-card__price {
  font-size:2.6rem;font-weight:900;color:var(--wig-navy);line-height:1;margin-bottom:6px;
}
.wig-pb-pricing-card__billing { font-size:1rem;color:var(--wig-muted);font-weight:400; }
.wig-pb-pricing-card__desc {
  font-size:.85rem;color:var(--wig-muted);margin-bottom:20px;line-height:1.5;
}
.wig-pb-pricing-card__features {
  list-style:none;padding:0;margin:0 0 28px;
  border-top:1px solid #eee;padding-top:20px;
}
.wig-pb-pricing-card__features li {
  font-size:.88rem;color:var(--wig-ink);padding:5px 0;
  border-bottom:1px solid #f5f5f5;
}
.wig-pb-pricing-card .wig-pb-btn { width:100%;text-align:center;display:block; }

/* ── Trust Badges ────────────────────────────────────────────────────────────── */
.wig-pb-trust { padding:32px 0;border-top:1px solid #eee;border-bottom:1px solid #eee; }
.wig-pb-trust__grid {
  display:grid;grid-template-columns:repeat(4,1fr);gap:20px;
}
@media(max-width:700px){ .wig-pb-trust__grid { grid-template-columns:repeat(2,1fr); } }
.wig-pb-trust-badge { display:flex;align-items:flex-start;gap:14px; }
.wig-pb-trust-badge__icon { font-size:1.8rem;min-width:36px;line-height:1; }
.wig-pb-trust-badge__title { font-weight:700;font-size:.9rem;color:var(--wig-navy);margin-bottom:2px; }
.wig-pb-trust-badge__text  { font-size:.8rem;color:var(--wig-muted);line-height:1.4; }

/* ── WooCommerce Product Grid ────────────────────────────────────────────────── */
.wig-pb-products--woo .wig-pb-product-card__img-wrap { display:block; }

/* Sale / stock badges */
.wig-pb-badge--sale    { background:#C9A84C;color:#0C1A2E; }
.wig-pb-badge--soldout { background:#6B7280;color:#fff; }
.wig-pb-badge--low     { background:#1A4A8C;color:#fff; }

/* WC price html (handles <del> sale price styling) */
.wig-pb-product-card__price del  { color:#9ca3af;font-size:.9em;font-weight:400;margin-right:6px; }
.wig-pb-product-card__price ins  { text-decoration:none;color:#C9A84C; }

/* Star ratings */
.wig-pb-product-card__rating { display:flex;align-items:center;gap:5px;margin-bottom:6px; }
.wig-pb-stars       { color:#C9A84C;font-size:1rem;letter-spacing:.05em; }
.wig-pb-rating-count{ color:#9ca3af;font-size:.78rem; }

/* Stock status */
.wig-pb-product-card__stock { font-size:.78rem;margin-bottom:8px;font-weight:600; }
.wig-pb-stock--low  { color:#d97706; }
.wig-pb-stock--out  { color:#6B7280; }

/* Add to Cart button state */
.wig-pb-add-to-cart.loading { opacity:.6;pointer-events:none;cursor:wait; }
.wig-pb-add-to-cart.added   { background:#1a7a1a;border-color:#1a7a1a; }

/* Cart count chip (appears in nav after add) */
.wig-pb-cart-chip {
  position:fixed;bottom:24px;right:24px;z-index:9999;
  background:var(--wig-navy);color:var(--wig-gold);
  padding:12px 20px;border-radius:40px;font-size:.9rem;font-weight:700;
  box-shadow:0 8px 24px rgba(0,0,0,.25);
  display:flex;align-items:center;gap:10px;
  animation:wig-slide-up .3s ease;
}
.wig-pb-cart-chip a { color:var(--wig-gold);text-decoration:underline; }
.wig-pb-cart-chip__close { background:none;border:none;color:var(--wig-gold);cursor:pointer;font-size:1rem;padding:0 0 0 6px; }
@keyframes wig-slide-up { from{transform:translateY(20px);opacity:0} to{transform:translateY(0);opacity:1} }

/* ── Cart Upsell Banner ──────────────────────────────────────────────────────── */
.wig-pb-cart-upsell { padding:14px 0; }
.wig-pb-cart-upsell__inner {
  display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap;
}
.wig-pb-cart-upsell__msg  { font-weight:600;font-size:.95rem; }
.wig-pb-cart-upsell__text { font-weight:600;font-size:.95rem; }
.wig-pb-cart-upsell__bar-wrap {
  width:200px;height:6px;background:rgba(255,255,255,.25);
  border-radius:3px;overflow:hidden;
}
.wig-pb-cart-upsell__bar {
  height:100%;background:var(--wig-gold);border-radius:3px;
  transition:width .5s ease;
}
.wig-pb-cart-upsell .wig-pb-btn--outline {
  border-color:currentColor;color:inherit;padding:6px 18px;font-size:.82rem;
}

/* ── Full-width Page Builder pages ───────────────────────────────────────────
   Hides the default WordPress page title and removes theme padding/container
   constraints when a page is built entirely with the Wigmorean Page Builder.  */
.wig-pb-page-wrap .entry-title,
.wig-pb-page-wrap h1.page-title,
.wig-pb-page-wrap .page-header { display: none !important; }

.wig-pb-page-wrap .entry-content,
.wig-pb-page-wrap .page-content,
.wig-pb-page-wrap article.page { padding: 0 !important; margin: 0 !important; }

/* Remove max-width constraints the theme may impose */
.wig-pb-page-wrap .site-content,
.wig-pb-page-wrap .content-area,
.wig-pb-page-wrap main#main { max-width: 100% !important; width: 100% !important; padding: 0 !important; }

/* ── v1.1.0 additions ─────────────────────────────────────────────────────── */

/* ── Prayer Times (Mosque) ───────────────────────────────────────────────── */
.wig-pb-prayer-times { padding:80px 0; }
.wig-pb-prayer-times .wig-pb-section-title { color:#fff; }
.wig-pb-prayer-grid {
  display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:40px;
}
@media(max-width:780px){ .wig-pb-prayer-grid { grid-template-columns:repeat(2,1fr); } }
.wig-pb-prayer-card {
  background:rgba(255,255,255,.08);border:1px solid rgba(201,168,76,.3);
  border-radius:10px;padding:20px;text-align:center;
}
.wig-pb-prayer-card__name {
  font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;
  color:var(--wig-gold);margin-bottom:8px;
}
.wig-pb-prayer-card__time { font-size:1.4rem;font-weight:900;color:#fff; }
.wig-pb-prayer-jummah {
  display:flex;align-items:center;gap:16px;margin-top:28px;
  padding:16px 20px;background:rgba(201,168,76,.15);border-radius:8px;
  border-left:4px solid var(--wig-gold);
}
.wig-pb-prayer-jummah .wig-pb-label { margin:0; }
.wig-pb-prayer-jummah__time { font-size:1.3rem;font-weight:900;color:#fff; }
.wig-pb-prayer-addr { color:rgba(255,255,255,.6);margin-top:20px;font-size:.9rem; }

/* ── Department Grid (Education) ──────────────────────────────────────────── */
.wig-pb-dept-grid { padding:80px 0; }
.wig-pb-dept-grid__items {
  display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px;
}
@media(max-width:780px){ .wig-pb-dept-grid__items { grid-template-columns:1fr 1fr; } }
@media(max-width:480px){ .wig-pb-dept-grid__items { grid-template-columns:1fr; } }
.wig-pb-dept-card {
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:12px;padding:28px 20px;background:#fff;border:1px solid #eee;border-radius:12px;
  text-decoration:none;transition:transform .15s,box-shadow .15s,border-color .15s;
}
.wig-pb-dept-card:hover {
  transform:translateY(-4px);box-shadow:0 12px 32px rgba(0,0,0,.08);
  border-color:var(--wig-gold);
}
.wig-pb-dept-card__icon { font-size:2.4rem; }
.wig-pb-dept-card__name {
  font-size:.95rem;font-weight:700;color:var(--wig-navy);text-align:center;
}

/* ── Community Group Navigator ────────────────────────────────────────────── */
.wig-pb-group-nav { padding:80px 0; }
.wig-pb-group-tree {
  list-style:none;padding:0;margin:32px 0 0;
  display:flex;flex-direction:column;gap:10px;
}
.wig-pb-group-tree--depth-1 {
  margin-left:32px;margin-top:10px;
  border-left:3px solid rgba(201,168,76,.3);padding-left:16px;
}
.wig-pb-group-tree--depth-2 {
  margin-left:32px;margin-top:8px;
  border-left:3px solid rgba(26,74,140,.25);padding-left:16px;
}
.wig-pb-group-item {
  background:#fff;border:1px solid #eee;border-radius:10px;overflow:hidden;
}
.wig-pb-group-item--level-0 { border-left:5px solid var(--wig-navy); }
.wig-pb-group-item--level-1 { border-left:5px solid var(--wig-blue); }
.wig-pb-group-item--level-2 { border-left:5px solid var(--wig-gold); }
.wig-pb-group-item__header {
  display:flex;align-items:center;gap:10px;padding:14px 18px;
  flex-wrap:wrap;
}
.wig-pb-group-item__icon   { font-size:1.4rem;min-width:28px; }
.wig-pb-group-item__name   { font-size:1rem;font-weight:700;color:var(--wig-navy);flex:1; }
.wig-pb-group-item__link   { font-size:1rem;font-weight:700;color:var(--wig-navy);text-decoration:none;flex:1; }
.wig-pb-group-item__link:hover { color:var(--wig-gold); }
.wig-pb-group-item__type   {
  font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;
  background:var(--wig-cream);color:var(--wig-navy);padding:3px 10px;border-radius:12px;
}
.wig-pb-group-item__access {
  font-size:.75rem;color:var(--wig-muted);margin-left:8px;
}
.wig-pb-group-item__desc {
  font-size:.875rem;color:var(--wig-muted);line-height:1.6;
  margin:0;padding:0 18px 14px;
}

/* ── Academic Calendar ────────────────────────────────────────────────────── */
.wig-pb-academic-cal { padding:80px 0; }

/* ── FULL-WIDTH guaranteed overrides ─────────────────────────────────────── */
body.wig-pb-page-wrap {
  /* Remove any body padding themes add */
  padding-top:0 !important;
}
/* Twenty-Twenty-One / Twenty-Twenty-Three / Twenty-Twenty-Four */
body.wig-pb-page-wrap .wp-site-blocks > .alignfull,
body.wig-pb-page-wrap .wp-block-group.alignfull,
body.wig-pb-page-wrap .wp-block-cover.alignfull { padding:0 !important; }

body.wig-pb-page-wrap #page,
body.wig-pb-page-wrap #page-container { margin:0 !important;padding:0 !important; }

/* Ensure the PB page div always goes edge-to-edge */
.wig-pb-page { width:100%;max-width:100%;margin:0;padding:0; }
