/* Front-end styles for Casino Hydra Custom Footer */
.casino-hydra-footer { --chf-gap: 24px; --chf-text: #111827; --chf-muted: #6b7280; --chf-border: #e5e7eb; --chf-accent: #111827; color: var(--chf-text); font-size: 16px; line-height: 1.5; }
.chf-top, .chf-meta { margin: 0 auto; padding: 24px; }
.chf-top { display: grid; grid-template-columns: 1fr; gap: var(--chf-gap); border-bottom: 1px solid var(--chf-border); }
.chf-brand { display: grid; gap: 8px; }
.chf-logo img { height: auto; width: auto; max-height: 80px; }
.chf-inline-badges { display: inline-flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.chf-badge { display: inline-flex; align-items: center; font-size: 12px; padding: 4px 8px; border: 1px solid var(--chf-border); border-radius: 999px; background: #fff; }
.chf-badge--locale { }
.chf-badge--age { }
.chf-brandline { color: var(--chf-muted); font-size: 14px; }
.chf-columns { display: grid; grid-template-columns: 1fr; gap: var(--chf-gap); }
.chf-col-title { margin: 0 0 8px; font-size: 16px; font-weight: 700; }
.chf-menu-list, .chf-meta-list { list-style: none; margin: 0; padding: 0; }
.chf-menu a, .chf-meta a { text-decoration: none; color: inherit; }
.chf-menu a:hover, .chf-meta a:hover { text-decoration: underline; }
.chf-meta { display: grid; gap: 12px; }
.chf-meta-title { margin: 0; font-size: 14px; color: var(--chf-muted); font-weight: 600; text-transform: uppercase; letter-spacing: .04em; }
.chf-cert-badges { display: grid; grid-auto-flow: column; grid-auto-columns: max-content; gap: 16px; overflow-x: auto; padding-top: 8px; }
.chf-cert-badge { display: inline-flex; align-items: center; gap: 8px; border: 1px solid var(--chf-border); padding: 6px 10px; border-radius: 999px; background: #fff; }
.chf-cert-icon svg, .chf-cert-icon img { display: block; height: 20px; width: 20px; }
/* Responsive */
@media (min-width: 768px) {
	.chf-top { grid-template-columns: 1fr 2fr; align-items: start; }
	.chf-columns { grid-template-columns: repeat(3, 1fr); }
}
/* Respect reduced motion */
@media (prefers-reduced-motion: reduce) {
	* { animation: none !important; transition: none !important; }
}


/* Banner box: fixed size, scale content without cropping */
.chf-logo { width: var(--chf-banner-w, auto); height: var(--chf-banner-h, auto); display: grid; place-items: center; background: transparent; }
.chf-logo img, .chf-logo svg { width: 100%; height: 100%; object-fit: contain; }


/* === Dark theme adjustments === */
.casino-hydra-footer { background-color: #263335; color: #F3F4F6; --chf-text:#F3F4F6; --chf-muted:#C7D2FE; --chf-border: rgba(255,255,255,0.12); }
.chf-brandline { color: rgba(255,255,255,0.75); }
.chf-col-title, .chf-meta-title { color: #FFFFFF; }
.chf-menu a, .chf-meta a { color: #E5E7EB; }
.chf-menu a:hover, .chf-meta a:hover { color: #FFFFFF; text-decoration: underline; }

/* Badges readable on dark bg */
.chf-badge { background: rgba(255,255,255,0.08); border-color: rgba(255,255,255,0.18); color: #fff; }
.chf-cert-badge { background: rgba(255,255,255,0.06); border-color: rgba(255,255,255,0.14); color:#fff; }
.chf-cert-icon img { filter: none; } /* keep original colors */

/* Increase banner (logo) readability with min sizes */
.chf-logo { 
  min-width: 260px; 
  min-height: 100px; 
}
.chf-logo img, .chf-logo svg { width: 100%; height: 100%; object-fit: contain; }


/* Fixed-size certification banners */
.chf-cert-badges { --chf-cert-w: 120px; --chf-cert-h: 60px; gap: 20px; }
.chf-cert-badge { width: var(--chf-cert-w); height: var(--chf-cert-h); padding: 0; display: grid; place-items: center; border-radius: 16px; }
.chf-cert-icon { width: 100%; height: 100%; display: grid; place-items: center; }
.chf-cert-icon img, .chf-cert-icon svg { width: 100%; height: 100%; object-fit: contain; }
.chf-visually-hidden { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }


/* Remove borders/backgrounds for cert banners */
.chf-cert-badge { 
  border: 0 !important; 
  background: transparent !important; 
  border-radius: 0 !important; 
  box-shadow: none !important;
  padding: 0 !important;
}
.chf-cert-icon img, .chf-cert-icon svg { 
  width: 100%; height: 100%; object-fit: contain; 
  border-radius: 0 !important;
}


/* Menu links: white color, no underlines */
.chf-menu a,
.chf-menu a:visited,
.chf-meta a,
.chf-meta a:visited {
  color: #FFFFFF !important;
  text-decoration: none !important;
}
.chf-menu a:hover,
.chf-menu a:focus,
.chf-menu a:active,
.chf-meta a:hover,
.chf-meta a:focus,
.chf-meta a:active {
  color: #FFFFFF !important;
  text-decoration: none !important;
  opacity: 0.9;
  outline: none;
}
