.elementor-3478 .elementor-element.elementor-element-829ee51{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}/* Start custom CSS for text-editor, class: .elementor-element-3dd5414 *//* ============================================================
   MYCOLOGY GLOSSARY — Elementor Custom CSS
   Paste into: Elementor > Edit Page > Custom CSS
   width: 100% ensures full Elementor column width
   ============================================================ */

/* ── VARIABLES ── */
.avlc-wrap {
  --avlc-green:      #1a7a4a;
  --avlc-green-l:    #e8f7f0;
  --avlc-green-b:    #6ee7b7;
  --avlc-blue:       #1a4a8a;
  --avlc-blue-l:     #e8f0fb;
  --avlc-purple:     #5a2d82;
  --avlc-purple-l:   #f2eafa;
  --avlc-purple-b:   #c4b5fd;
  --avlc-amber:      #b45309;
  --avlc-amber-l:    #fffbeb;
  --avlc-amber-b:    #fcd34d;
  --avlc-teal:       #0f766e;
  --avlc-teal-l:     #f0fdfa;
  --avlc-teal-b:     #5eead4;
  --avlc-red:        #b91c1c;
  --avlc-red-l:      #fef2f2;
  --avlc-red-b:      #fca5a5;
  --avlc-dark:       #111827;
  --avlc-mid:        #374151;
  --avlc-muted:      #6b7280;
  --avlc-border:     #e5e7eb;
  --avlc-bg:         #f9fafb;
  --avlc-white:      #ffffff;
  --avlc-radius:     12px;
  --avlc-shadow:     0 2px 16px rgba(0,0,0,.07);

  font-family: 'Georgia', 'Times New Roman', serif;
  color: var(--avlc-dark);
  line-height: 1.75;
  width: 100%;
}

/* ── GLOBAL ── */
.avlc-wrap *, .avlc-wrap *::before, .avlc-wrap *::after { box-sizing: border-box; }
.avlc-wrap a { color: var(--avlc-green); text-decoration: underline; text-underline-offset: 3px; }
.avlc-wrap a:hover { color: var(--avlc-blue); }
.avlc-wrap p { margin: 0 0 0.85rem; }
.avlc-wrap p:last-child { margin-bottom: 0; }

/* ── HERO ── */
.avlc-hero {
  background: linear-gradient(135deg, #0a1f10 0%, #1a5c38 50%, #1a2d5a 100%);
  color: var(--avlc-white);
  border-radius: var(--avlc-radius);
  padding: 2.5rem 2rem;
  margin-bottom: 2rem;
  position: relative;
  overflow: hidden;
}
.avlc-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background: url("data:image/svg+xml,%3Csvg width='80' height='80' viewBox='0 0 80 80' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Ccircle cx='40' cy='40' r='30'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  pointer-events: none;
}
.avlc-hero__badge {
  display: inline-block;
  background: rgba(255,255,255,0.12);
  border: 1px solid rgba(255,255,255,0.22);
  color: #a7f3d0;
  font-size: 0.72rem;
  font-family: 'Courier New', monospace;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 0.25rem 0.75rem;
  border-radius: 999px;
  margin-bottom: 1rem;
}
.avlc-hero__title {
  font-size: clamp(1.6rem, 4vw, 2.4rem);
  font-weight: 700;
  line-height: 1.2;
  color: var(--avlc-white);
  margin: 0 0 0.85rem;
}
.avlc-hero__sub {
  font-size: 1rem;
  color: rgba(255,255,255,0.82);
  max-width: 680px;
  margin: 0 0 1.5rem;
}
.avlc-hero__meta { display: flex; flex-wrap: wrap; gap: 0.6rem; }
.avlc-hero__meta span {
  background: rgba(255,255,255,0.1);
  border: 1px solid rgba(255,255,255,0.18);
  color: rgba(255,255,255,0.9);
  font-size: 0.8rem;
  padding: 0.25rem 0.75rem;
  border-radius: 999px;
}

/* ── INTRO BOX ── */
.avlc-intro-box {
  background: var(--avlc-green-l);
  border: 1px solid var(--avlc-green-b);
  border-left: 5px solid var(--avlc-green);
  border-radius: var(--avlc-radius);
  padding: 1.4rem 1.6rem;
  margin-bottom: 2rem;
  display: flex;
  align-items: flex-start;
  gap: 1.5rem;
  flex-wrap: wrap;
}
.avlc-intro-box p {
  flex: 1;
  font-size: 0.97rem;
  color: var(--avlc-mid);
  margin: 0;
  min-width: 200px;
}

/* ── ALPHA NAV ── */
.avlc-alpha-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-bottom: 2.5rem;
  padding: 1rem 1.25rem;
  background: var(--avlc-bg);
  border: 1px solid var(--avlc-border);
  border-radius: var(--avlc-radius);
}
.avlc-alpha-nav a {
  display: inline-block;
  padding: 0.45rem 1.1rem;
  background: var(--avlc-white);
  border: 2px solid var(--avlc-green);
  color: var(--avlc-green);
  border-radius: 999px;
  font-size: 0.88rem;
  font-weight: 700;
  font-family: 'Courier New', monospace;
  text-decoration: none;
  transition: all 0.2s ease;
}
.avlc-alpha-nav a:hover {
  background: var(--avlc-green);
  color: var(--avlc-white);
}

/* ── GLOSSARY SECTIONS ── */
.avlc-gloss-section {
  margin-bottom: 3rem;
  scroll-margin-top: 80px;
  border: 1px solid var(--avlc-border);
  border-radius: var(--avlc-radius);
  overflow: hidden;
  box-shadow: var(--avlc-shadow);
}
.avlc-gloss-section__head {
  background: linear-gradient(135deg, #0a1f10 0%, #1a5c38 100%);
  padding: 1.1rem 1.6rem;
}
.avlc-gloss-section__head h2 {
  font-size: 1.15rem;
  font-weight: 700;
  color: var(--avlc-white);
  margin: 0;
}

/* ── TERM CARDS ── */
.avlc-term {
  border-bottom: 1px solid var(--avlc-border);
  background: var(--avlc-white);
  scroll-margin-top: 80px;
  transition: background 0.15s ease;
}
.avlc-term:last-child { border-bottom: none; }
.avlc-term:nth-child(even) { background: var(--avlc-bg); }
.avlc-term:hover { background: #f0fdf6; }

/* Featured terms */
.avlc-term--featured {
  background: linear-gradient(135deg, #f0fdf6 0%, #eff6ff 100%) !important;
  border-left: 4px solid var(--avlc-green);
}
.avlc-term--featured:hover { background: linear-gradient(135deg, #dcfce7 0%, #dbeafe 100%) !important; }

/* ── TERM HEAD ── */
.avlc-term__head {
  display: flex;
  align-items: center;
  gap: 0.85rem;
  padding: 1rem 1.5rem 0.3rem;
  flex-wrap: wrap;
}
.avlc-term__icon {
  font-size: 1.4rem;
  flex-shrink: 0;
  line-height: 1;
}
.avlc-term__name {
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--avlc-dark);
  margin: 0;
  flex: 1;
  line-height: 1.3;
}

/* ── TAG PILLS ── */
.avlc-term__tag {
  font-size: 0.68rem;
  font-weight: 700;
  font-family: 'Courier New', monospace;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 0.18rem 0.65rem;
  border-radius: 999px;
  flex-shrink: 0;
  white-space: nowrap;
}

/* Auto-colour tags by content */
.avlc-term__tag { background: var(--avlc-bg); color: var(--avlc-muted); border: 1px solid var(--avlc-border); }
.avlc-term__tag--featured { background: var(--avlc-green-l); color: var(--avlc-green); border: 1px solid var(--avlc-green-b); }

/* Tag colour by type — use data or class overrides */
.avlc-term:has([href*="strain"]) .avlc-term__tag,
.avlc-term__tag:empty { display: none; }

/* Specific tag colours via nth-child or manual */
.avlc-term__tag:not(.avlc-term__tag--featured) {
  background: var(--avlc-purple-l);
  color: var(--avlc-purple);
  border-color: var(--avlc-purple-b);
}

/* ── TERM BODY ── */
.avlc-term__body {
  padding: 0.25rem 1.5rem 1.1rem 3.75rem;
  font-size: 0.95rem;
  color: var(--avlc-mid);
}

/* ── SUB LIST (bullet chips) ── */
.avlc-term__sub-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 0.75rem 0;
}
.avlc-term__sub-list span {
  background: var(--avlc-green-l);
  border: 1px solid var(--avlc-green-b);
  color: var(--avlc-green);
  font-size: 0.8rem;
  padding: 0.2rem 0.7rem;
  border-radius: 999px;
  font-family: 'Courier New', monospace;
}

/* ── TERM ALERT (yeast contamination, warnings) ── */
.avlc-term__alert {
  background: var(--avlc-amber-l);
  border: 1px solid var(--avlc-amber-b);
  border-left: 4px solid var(--avlc-amber);
  border-radius: 8px;
  padding: 0.75rem 1rem;
  margin: 0.75rem 0;
  font-size: 0.88rem;
  color: var(--avlc-mid);
}

/* ── TERM LINK ── */
.avlc-term__link {
  display: inline-block;
  margin-top: 0.5rem;
  font-size: 0.88rem;
  font-family: 'Courier New', monospace;
  color: var(--avlc-green);
  text-decoration: none;
  font-weight: 600;
  border-bottom: 1px dashed var(--avlc-green-b);
  padding-bottom: 1px;
  transition: all 0.15s ease;
}
.avlc-term__link:hover {
  color: var(--avlc-blue);
  border-color: var(--avlc-blue);
}

/* ── SUGGEST SECTION ── */
.avlc-suggest {
  text-align: center;
  background: linear-gradient(135deg, #0a1f10 0%, #1a5c38 55%, #1a2d5a 100%);
  border-radius: var(--avlc-radius);
  padding: 3rem 2rem;
  margin-top: 2rem;
}
.avlc-suggest__icon { font-size: 2.5rem; margin-bottom: 0.75rem; }
.avlc-suggest__title {
  font-size: clamp(1.3rem, 3vw, 1.8rem);
  font-weight: 700;
  color: var(--avlc-white);
  margin: 0 0 0.85rem;
}
.avlc-suggest__text {
  color: rgba(255,255,255,0.82);
  font-size: 0.97rem;
 
  max-width: 520px;
  margin: 0 auto 1.75rem;
}



/* ============================================================
   MOBILE — max-width: 768px
   ============================================================ */
@media (max-width: 768px) {
  .avlc-hero { padding: 1.75rem 1.25rem; }
  .avlc-hero__meta { gap: 0.4rem; }
  .avlc-hero__title { font-size: 1.5rem; }

  .avlc-intro-box {
    flex-direction: column;
    gap: 1rem;
    padding: 1.1rem 1.25rem;
  }
  .avlc-intro-box .avlc-btn { width: 100%; text-align: center; }

  .avlc-alpha-nav { gap: 0.5rem; padding: 0.85rem 1rem; }
  .avlc-alpha-nav a { font-size: 0.82rem; padding: 0.4rem 0.9rem; }

  .avlc-gloss-section__head { padding: 0.9rem 1.1rem; }
  .avlc-gloss-section__head h2 { font-size: 1rem; }

  .avlc-term__head { padding: 0.85rem 1.1rem 0.25rem; gap: 0.65rem; }
  .avlc-term__body { padding: 0.2rem 1.1rem 0.9rem 1.1rem; }

  .avlc-term__icon { font-size: 1.2rem; }
  .avlc-term__name { font-size: 0.97rem; }

  .avlc-suggest { padding: 2rem 1.25rem; }
  .avlc-suggest .avlc-btn { width: 100%; }
}

/* ============================================================
   SMALL MOBILE — max-width: 480px
   ============================================================ */
@media (max-width: 480px) {
  .avlc-hero__title { font-size: 1.3rem; }
  .avlc-hero__badge { font-size: 0.65rem; }

  .avlc-alpha-nav { gap: 0.4rem; }
  .avlc-alpha-nav a { width: 100%; text-align: center; }

  .avlc-term__head { flex-direction: row; flex-wrap: wrap; }
  .avlc-term__tag  { font-size: 0.62rem; }

  .avlc-term__sub-list span { font-size: 0.75rem; }
  .avlc-term__link { font-size: 0.82rem; }
}


/* ============================================================
   AVLC BUTTON SYSTEM (FIXED + CLEAN)
   No conflicts, Elementor-safe
   ============================================================ */

.avlc-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  padding: .85rem 1.7rem;
  border-radius: 12px;
  font-size: .95rem;
  font-weight: 700;
  text-decoration: none !important;
  cursor: pointer;
  transition: all .25s ease;
  font-family: 'Inter', 'Segoe UI', sans-serif;
  letter-spacing: -.01em;
  border: 2px solid transparent;
  white-space: nowrap;
}

/* PRIMARY BUTTON (MAIN CTA) */
.avlc-btn--primary {
  background: linear-gradient(135deg, #16a34a 0%, #15803d 100%);
  color: #ffffff !important;
  border: none;
  box-shadow: 0 10px 24px rgba(22,163,74,.25);
}

.avlc-btn--primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 28px rgba(22,163,74,.35);
  background: linear-gradient(135deg, #15803d 0%, #14532d 100%);
  color: #ffffff !important;
}

/* OUTLINE BUTTON */
.avlc-btn--outline {
  background: transparent;
  color: #16a34a !important;
  border: 2px solid #16a34a;
}

.avlc-btn--outline:hover {
  background: #16a34a;
  color: #ffffff !important;
  transform: translateY(-2px);
  box-shadow: 0 10px 20px rgba(22,163,74,.2);
}

/* SECONDARY BUTTON (OPTIONAL) */
.avlc-btn--secondary {
  background: #f8fafc;
  color: #0f172a !important;
  border: 2px solid #e2e8f0;
}

.avlc-btn--secondary:hover {
  background: #e2e8f0;
  transform: translateY(-2px);
}

/* DISABLED STATE */
.avlc-btn:disabled,
.avlc-btn.disabled {
  opacity: 0.6;
  cursor: not-allowed;
  transform: none !important;
}

/* MOBILE FIX */
@media (max-width: 768px) {
  .avlc-btn {
    width: 100%;
    text-align: center;
    justify-content: center;
  }
}



.avlc-suggest {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
}/* End custom CSS */