/* ==========================================================================
   INITE & Flowde Brand Identity CSS Theme (V3 - Guaranteed Deep Specificity)
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@500;600;700;800&display=swap');

/* 1. Override Gethomepage Theme Engine Variables */
:root, .light, .theme-emerald, body {
  --color-50: 245 249 245 !important;       /* Clean Page BG */
  --color-100: 255 255 255 !important;      /* Pure White Card BG */
  --color-200: 235 245 238 !important;      /* Soft Hover Border */
  --color-300: 215 238 222 !important;      /* Hover Card BG */
  --color-500: 43 82 57 !important;         /* Subtitle / Description Text */
  --color-700: 5 43 20 !important;          /* Title / Bold Text */
  --color-800: 5 43 20 !important;          /* Deep Dark Text */
  --color-900: 2 25 10 !important;          /* Headers */
  --bg-color: 245 249 245 !important;
}

/* 2. Global Body & Layout Reset */
html, body {
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif !important;
  background-color: #f5faf5 !important;
  background-image: 
    radial-gradient(circle at 5% 10%, rgba(140, 224, 67, 0.15) 0%, transparent 40%),
    radial-gradient(circle at 95% 90%, rgba(0, 104, 55, 0.08) 0%, transparent 45%) !important;
  background-attachment: fixed !important;
  color: #052b14 !important;
}

/* 3. Section Group Headers (Products, Services, Resources) */
h2, .group-header, [class*="group-header"], div[class*="text-xl"] {
  color: #052b14 !important;
  font-weight: 800 !important;
  font-size: 1.5rem !important;
  letter-spacing: -0.025em !important;
  margin-top: 1.75rem !important;
  margin-bottom: 1rem !important;
  display: flex !important;
  align-items: center !important;
  gap: 0.6rem !important;
}

h2::before, .group-header::before {
  content: "" !important;
  display: inline-block !important;
  width: 8px !important;
  height: 22px !important;
  background-color: #006837 !important;
  border-radius: 99px !important;
}

/* 4. Service Cards - Force Pure White Card Styling */
.service-card,
li.service > div,
div[class*="service-card"] {
  background-color: #ffffff !important;
  background: #ffffff !important;
  border: 1px solid rgba(0, 104, 55, 0.12) !important;
  border-radius: 18px !important;
  box-shadow: 0 4px 18px rgba(0, 50, 20, 0.05) !important;
  padding: 0.85rem 1.15rem !important;
  min-height: 84px !important;
  transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1) !important;
  opacity: 1 !important;
}

/* Service Card Hover State */
.service-card:hover,
li.service > div:hover {
  transform: translateY(-3px) scale(1.008) !important;
  box-shadow: 0 12px 28px rgba(0, 80, 30, 0.12) !important;
  border-color: rgba(0, 104, 55, 0.3) !important;
  background-color: #ffffff !important;
}

/* Service Icon - Apple / Google Play Store Squircle Styling */
.service-icon,
div.service-icon,
.service-icon img,
.service-icon svg,
.service-icon > div {
  width: 52px !important;
  height: 52px !important;
  min-width: 52px !important;
  min-height: 52px !important;
  border-radius: 22.5% !important; /* Squircle curvature */
  object-fit: cover !important;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.08), 0 0 0 1px rgba(0, 0, 0, 0.04) !important;
  flex-shrink: 0 !important;
  background-color: #f0f7f2 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}

.service-icon img, .service-icon svg {
  width: 100% !important;
  height: 100% !important;
  border-radius: 22.5% !important;
}

/* Service Title Text (Bold Dark Green) */
.service-name,
div.service-name,
.service-title-text {
  color: #052b14 !important;
  font-weight: 800 !important;
  font-size: 1.15rem !important; /* 18.4px */
  line-height: 1.3 !important;
}

/* Service Description Text */
.service-description,
p.service-description {
  color: #385e46 !important;
  font-weight: 600 !important;
  font-size: 0.925rem !important; /* 14.8px */
  margin-top: 0.2rem !important;
  line-height: 1.35 !important;
  opacity: 1 !important;
}

/* 5. Bookmarks Section (Resources) Styling */
.bookmark a,
li.bookmark a,
a[class*="bookmark"] {
  background-color: #ffffff !important;
  background: #ffffff !important;
  border: 1px solid rgba(0, 104, 55, 0.12) !important;
  border-radius: 16px !important;
  box-shadow: 0 4px 16px rgba(0, 50, 20, 0.04) !important;
  padding: 0.85rem 1.25rem !important;
  margin-bottom: 0.65rem !important;
  transition: all 0.2s ease !important;
}

.bookmark a:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 24px rgba(0, 80, 30, 0.1) !important;
  border-color: rgba(0, 104, 55, 0.3) !important;
}

.bookmark-icon {
  width: 44px !important;
  height: 44px !important;
  border-radius: 20% !important;
  background-color: #eaf5ee !important;
  color: #006837 !important;
}

.bookmark-name {
  color: #052b14 !important;
  font-weight: 800 !important;
  font-size: 1.05rem !important;
}

.bookmark-description {
  color: #385e46 !important;
  font-weight: 600 !important;
  font-size: 0.9rem !important;
}

/* 6. Search Bar Formatting & Perfect Pill Alignment Fix */
.information-widget-search {
  width: 100% !important;
  max-width: 100% !important;
}

.information-widget-search div.relative,
div.information-widget-search {
  position: relative !important;
  height: 52px !important;
  margin-top: 0.5rem !important;
  margin-bottom: 1.25rem !important;
}

.information-widget-search input[type="text"],
input[type="text"],
input[placeholder*="Search"] {
  background-color: #ffffff !important;
  border: 1.5px solid rgba(0, 104, 55, 0.2) !important;
  border-radius: 9999px !important;
  color: #052b14 !important;
  font-size: 1.05rem !important;
  box-shadow: 0 4px 18px rgba(0, 60, 20, 0.05) !important;
  padding: 0.85rem 3.5rem 0.85rem 1.6rem !important;
  height: 52px !important;
  width: 100% !important;
  font-weight: 600 !important;
}

input[type="text"]:focus, input[placeholder*="Search"]:focus {
  border-color: #006837 !important;
  box-shadow: 0 0 0 4px rgba(0, 104, 55, 0.15) !important;
  outline: none !important;
}

/* Fix Provider Container & Button absolute overlay inside search pill */
.information-widget-search div.relative.text-left,
.information-widget-search [class*="Listbox"] {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 52px !important;
  margin: 0 !important;
  pointer-events: none !important;
}

.information-widget-search button,
.information-widget-search [class*="ListboxButton"] {
  position: absolute !important;
  right: 6px !important;
  top: 6px !important;
  height: 40px !important;
  width: 40px !important;
  border-radius: 9999px !important;
  background-color: #006837 !important;
  color: #ffffff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  pointer-events: auto !important;
  padding: 0 !important;
  border: none !important;
  box-shadow: 0 2px 8px rgba(0, 104, 55, 0.25) !important;
  transition: all 0.2s ease !important;
}

.information-widget-search button:hover {
  background-color: #004d28 !important;
  transform: scale(1.05) !important;
}

.information-widget-search button svg {
  width: 18px !important;
  height: 18px !important;
  color: #ffffff !important;
  fill: currentColor !important;
}

/* Remove bottom border from widget header containers */
#information-widgets, #information-widgets-right, .information-widget-search, div[class*="border-b"] {
  border-bottom: none !important;
}





