/* Epic Field Day - matches the approved Tailwind-based HTML exactly.
   Tailwind's global preflight is disabled (see enqueue_scripts) so it doesn't
   reset the rest of the WordPress theme; instead we scope a minimal reset here.
   !important is used only on structural resets (list markers, margins, box model)
   so the parent theme's CSS can never silently strip the widget's card look. */
.efd-wrap, .efd-wrap *, .efd-wrap *::before, .efd-wrap *::after{ box-sizing:border-box !important; }
.efd-wrap{ font-family:'Inter',sans-serif; line-height:1.5; -webkit-font-smoothing:antialiased; max-width:100%; overflow-x:hidden; }
.efd-wrap .grid, .efd-wrap .flex{ min-width:0; }
.efd-wrap .grid > *, .efd-wrap .flex > *{ min-width:0; }
.efd-wrap h1, .efd-wrap h2, .efd-wrap h3, .efd-wrap h4, .efd-wrap p, .efd-wrap figure{ margin:0; }
.efd-wrap ul, .efd-wrap ol{ padding:0 !important; list-style:none !important; margin:0; }
.efd-wrap ul li, .efd-wrap ol li{ list-style:none !important; }
.efd-wrap ul li::marker, .efd-wrap ol li::marker{ content:none !important; }
.efd-wrap img, .efd-wrap video{ display:block; max-width:100%; height:auto; }
.efd-wrap button{
  font-family:inherit; font-size:100%; cursor:pointer;
  background:none !important; background-color:transparent !important;
  border:0 !important; box-shadow:none !important; -webkit-appearance:none; appearance:none;
  color:inherit;
}
.efd-wrap a{ text-decoration:none; color:inherit; }
.efd-wrap input, .efd-wrap select, .efd-wrap textarea{ font-family:inherit; font-size:100%; }
.efd-wrap svg{ display:inline-block; vertical-align:middle; }

/* Hamburger <-> X animation for the mobile menu toggle */
.efd-menu-toggle{ position:relative; z-index:2; }
.efd-menu-toggle span{
  display:block; transition:transform .25s ease, opacity .2s ease;
  transform-origin:center;
}
.efd-menu-toggle.is-open span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.efd-menu-toggle.is-open span:nth-child(2){ opacity:0; }
.efd-menu-toggle.is-open span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }

.efd-wrap .font-display{ font-family:'Archivo',sans-serif; }
.efd-wrap{ --gradient-hero: linear-gradient(180deg, rgba(16,27,48,.25) 0%, rgba(16,27,48,.55) 55%, rgba(16,27,48,.94) 100%); }

/* Safety-net card look: guarantees border + shadow + rounded corners even if
   the active WordPress theme's own CSS (e.g. rules targeting "li", "ol", ".entry-content")
   happens to have higher specificity than Tailwind's single-class utilities. */
.efd-wrap .efd-card-safe{
  border:1px solid #e7e2d6 !important;
  border-radius:1.5rem !important;
  background:#ffffff !important;
  box-shadow:0 10px 30px -14px rgba(16,27,48,.18) !important;
}
.efd-wrap .text-gradient-clash{
  background-image:linear-gradient(90deg,#5b9bff,#ff8a5b,#ffd23c);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.efd-wrap .clash-bar{ background-image:linear-gradient(90deg,#2f6fed 0%,#ef4444 34%,#16a34a 67%,#f2b705 100%); }
@keyframes efdFloatUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
.efd-wrap .animate-float-up{ animation: efdFloatUp .9s cubic-bezier(.22,1,.36,1) both; }
.efd-wrap details > summary{ list-style:none; }
.efd-wrap details > summary::-webkit-details-marker{ display:none; }
.efd-wrap details[open] summary .plus{ transform:rotate(45deg); }
.efd-wrap .plus{ transition:transform .2s ease; display:inline-flex; }
