/* AIFG Film UI — uses Kadence global palette variables */

/* Layout spacing to align with Kadence content padding */
.aifg-single-film .site-main { padding-left: clamp(16px, 2.5vw, 32px); padding-right: clamp(16px, 2.5vw, 32px); padding-top: clamp(16px, 2.5vw, 32px); padding-bottom: clamp(16px, 2.5vw, 32px); }
.aifg-single-film .entry-content > * + * { margin-top: clamp(12px, 1.6vw, 20px); }

.aifg-film-details { margin: 0 0 1rem; padding: 0; background: transparent; border-radius: 8px; }
.aifg-film-details h2 { margin: 0 0 .75rem; font-size: 1.25rem; }
.aifg-film-details dl { display: grid; grid-template-columns: max-content 1fr; gap: .5rem 1rem; margin: 0; }
.aifg-film-details dt { font-weight: 600; color: var(--global-palette9, #222); }
.aifg-film-details dd { margin: 0; color: var(--global-palette7, #555); }

.aifg-tax-row { display:flex; flex-wrap:wrap; gap:.5rem; margin:.75rem 0 0; align-items:center; }
.aifg-tax-label { font-weight:600; margin-right:.25rem; color: var(--global-palette9, #222); }

/* Pill base */
.aifg-pill {
  display:inline-flex; align-items:center; gap:.35rem; padding:.25rem .6rem; border-radius:999px; line-height:1.1;
  text-decoration:none; font-size:.875rem; border:1px solid rgba(0,0,0,.12); transition:.15s ease-in-out;
  /* Always high-contrast text */
  color: var(--global-palette9, #1a1a1a);
  /* Taxonomy color background + readability overlay to guarantee contrast */
  background: var(--pill-bg, var(--global-palette8, #eee));
  box-shadow: inset 0 0 0 9999px rgba(255,255,255,.35);
}
.aifg-pill:focus-visible { outline:2px solid var(--global-palette4, #2271b1); outline-offset:2px; }
.aifg-pill:hover { filter:brightness(0.97); transform: translateY(-1px); cursor: pointer; }

/* Map taxonomies to Kadence palette slots */
.pill--people   { --pill-bg: var(--global-palette2); color: var(--global-palette9); }
.pill--tribe    { --pill-bg: var(--global-palette3); color: var(--global-palette9); }
.pill--language { --pill-bg: var(--global-palette4); color: var(--global-palette9); }
.pill--region, .pill--location { --pill-bg: var(--global-palette1); color: var(--global-palette9); }
.pill--category { --pill-bg: var(--global-palette6); color: var(--global-palette9); }

/* Two-column layout for video + details (responsive) */
.aifg-film-layout { display:grid; grid-template-columns: 1fr; gap: clamp(16px, 2.5vw, 28px); align-items:start; }
@media (min-width: 992px) {
  .aifg-film-layout { grid-template-columns: minmax(0, 2fr) minmax(260px, 1fr); }
}
.aifg-film-media .aifg-featured-video { width: 100%; }
.aifg-film-aside { position: relative; }

/* Align right column content and ensure contrast on palette8 background */
.aifg-film-aside { padding: clamp(12px, 2vw, 16px); background: var(--global-palette8, #f6f6f6); border-radius: 8px; border: 1px solid rgba(0,0,0,.06); color: var(--global-palette9, #1a1a1a); }
/* Default links in aside (exclude pills) */
.aifg-film-aside a:not(.aifg-pill) { color: var(--global-palette3, #005a87); text-decoration: none; }
.aifg-film-aside a:not(.aifg-pill):hover { color: var(--global-palette4, #2271b1); text-decoration: underline; }
/* Ensure taxonomy label contrast per request */
.aifg-film-aside .aifg-tax-label { color: var(--global-palette6); }
/* Force pill text to high-contrast color regardless of general link styles */
.aifg-film-aside .aifg-pill,
.aifg-film-aside .aifg-pill:link,
.aifg-film-aside .aifg-pill:visited { color: var(--global-palette9) !important; }

/* Collapsible long-text blocks (line-clamp by default) */
.aifg-collapsible { margin-top: 1rem; }
.aifg-collapsible .aifg-subheading { margin: 0 0 .5rem; font-size: 1rem; font-weight: 600; color: var(--global-palette9, #1a1a1a); }
.aifg-clamp {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.aifg-collapsible[aria-expanded="true"] .aifg-clamp { display: block; -webkit-line-clamp: unset; }
.aifg-readmore { background: none; border: 0; padding: 0; margin-top: .5rem; cursor: pointer; font: inherit; color: var(--global-palette3, #005a87); text-decoration: underline; }
.aifg-readmore:focus-visible { outline: 2px solid var(--global-palette4, #2271b1); outline-offset: 2px; }
.aifg-film-aside .aifg-film-details h2,
.aifg-film-aside .aifg-film-details dt,
.aifg-film-aside .aifg-film-details dd,
.aifg-film-aside .aifg-tax-label { color: var(--global-palette6); }
