.hffa-lib{
  /* ---- BRAND TOKENS — edit these to restyle everything ---- */
  --hffa-green:#333F37;
  --hffa-green-dk:#232C27;
  --hffa-gold:#8C6728;
  --hffa-gold-lt:#B08A45;
  --hffa-gold-dk:#6E5020;
  --hffa-gold-wash:#FAF6EF;
  --hffa-ink:#1F2622;
  --hffa-body:#5A635D;
  --hffa-line:#E3E1DA;
  --hffa-bg:#FBFAF7;
  --hffa-white:#fff;
  --hffa-radius:10px;
  --hffa-shadow:0 1px 2px rgba(31,38,34,.06), 0 6px 20px rgba(31,38,34,.06);
  --hffa-shadow-lg:0 24px 60px rgba(31,38,34,.28);
  /* Fonts inherit from the Divi theme by default. */
  --hffa-font-head:inherit;
  --hffa-font-body:inherit;
  /* Filters, card meta and the resource meta line. */
  --hffa-font-ui:'Poppins',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;

  font-family:var(--hffa-font-body);
  color:var(--hffa-ink);
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
}
.hffa-lib *,.hffa-lib *::before,.hffa-lib *::after{box-sizing:border-box}
.hffa-lib button{font:inherit;color:inherit;cursor:pointer}
.hffa-lib h1,.hffa-lib h2,.hffa-lib h3,.hffa-lib h4{font-family:var(--hffa-font-head);margin:0;color:var(--hffa-ink);line-height:1.25}
.hffa-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* ---------- HERO ---------- */
.hffa-hero{background:var(--hffa-green);color:#fff;padding:56px 24px 96px;text-align:center;position:relative}
.hffa-hero::after{content:"";position:absolute;left:50%;bottom:76px;transform:translateX(-50%);width:56px;height:3px;background:var(--hffa-gold);border-radius:2px}
.hffa-hero h2{color:#fff;font-size:clamp(1.9rem,4vw,2.7rem);letter-spacing:-.01em;margin-bottom:14px}
.hffa-hero p{max-width:620px;margin:0 auto;color:rgba(255,255,255,.82);font-size:1.05rem}

/* ---------- CONTROLS ---------- */
.hffa-wrap{max-width:1180px;margin:0 auto;padding:0 24px}
.hffa-controls{margin-top:-56px;position:relative;z-index:2}
.hffa-searchcard{background:var(--hffa-white);border:1px solid var(--hffa-line);border-radius:var(--hffa-radius);box-shadow:var(--hffa-shadow);padding:18px}
.hffa-searchrow{display:flex;align-items:center;gap:12px;border:1px solid var(--hffa-line);border-radius:8px;padding:0 14px;background:var(--hffa-bg);transition:border-color .15s,box-shadow .15s}
.hffa-searchrow:focus-within{border-color:var(--hffa-gold);box-shadow:0 0 0 3px rgba(140,103,40,.13);background:#fff}
.hffa-searchrow svg{flex:0 0 auto;color:var(--hffa-body)}
.hffa-search{flex:1;border:0;background:transparent;padding:15px 0;font-size:1.02rem;outline:0;color:var(--hffa-ink);min-width:0}
.hffa-search::placeholder{color:#9AA29C}
.hffa-clearq{border:0;background:transparent;color:var(--hffa-body);padding:6px;line-height:0;border-radius:50%;display:none}
.hffa-clearq:hover{background:var(--hffa-line);color:var(--hffa-ink)}
.hffa-clearq.on{display:block}

.hffa-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-top:16px;border-bottom:1px solid var(--hffa-line);padding-bottom:0}
.hffa-lib .hffa-tab{border:0;background:transparent;padding:10px 14px;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .15s,border-color .15s;
  font-family:var(--hffa-font-ui);font-weight:600;font-size:14px;line-height:1.4;color:var(--hffa-body)}
.hffa-tab:hover{color:var(--hffa-ink)}
.hffa-tab[aria-selected="true"]{color:var(--hffa-green);border-bottom-color:var(--hffa-gold)}
.hffa-tab .n{font-weight:500;opacity:.6;font-size:.8em;margin-left:5px}

.hffa-chiprow{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;align-items:center}
.hffa-chiplabel{font-family:var(--hffa-font-ui);font-size:.78rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--hffa-body);margin-right:4px}
.hffa-lib .hffa-chip{border:1px solid var(--hffa-line);background:#fff;border-radius:100px;padding:8px 16px;transition:all .15s;white-space:nowrap;
  font-family:var(--hffa-font-ui);font-weight:600;font-size:14px;line-height:1.4;color:var(--hffa-body)}
.hffa-chip:hover{border-color:var(--hffa-gold-lt);color:var(--hffa-ink)}
.hffa-chip[aria-pressed="true"]{background:var(--hffa-gold);border-color:var(--hffa-gold);color:#fff}
.hffa-chip[aria-pressed="true"]:hover{background:var(--hffa-gold-lt);border-color:var(--hffa-gold-lt);color:#fff}
.hffa-chip:disabled{opacity:.35;cursor:not-allowed}

.hffa-meta{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;margin:26px 0 18px}
.hffa-count{font-size:.94rem;color:var(--hffa-body)}
.hffa-count strong{color:var(--hffa-ink)}
.hffa-metaright{display:flex;gap:14px;align-items:center}
.hffa-reset{border:0;background:transparent;color:var(--hffa-gold);font-size:.9rem;font-weight:600;text-decoration:underline;text-underline-offset:3px;padding:4px 0;display:none}
.hffa-reset.on{display:inline-block}
.hffa-sort{border:1px solid var(--hffa-line);border-radius:7px;background:#fff;padding:8px 12px;font-size:.9rem;color:var(--hffa-ink);cursor:pointer}
.hffa-sort:focus{outline:2px solid var(--hffa-gold);outline-offset:1px}

/* ---------- GRID ---------- */
.hffa-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;padding-bottom:8px}
@media(max-width:980px){.hffa-grid{grid-template-columns:repeat(2,1fr);gap:22px}}
@media(max-width:600px){.hffa-grid{grid-template-columns:1fr}.hffa-hero{padding:40px 20px 88px}.hffa-wrap{padding:0 18px}}

.hffa-card{display:flex;flex-direction:column;text-align:left;background:#fff;border:1px solid var(--hffa-line);border-radius:var(--hffa-radius);overflow:hidden;padding:0;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;width:100%;
  text-decoration:none!important;color:inherit!important;cursor:pointer}
.hffa-card:hover{transform:translateY(-3px);box-shadow:var(--hffa-shadow);border-color:#D3CFC4}
.hffa-card:focus-visible{outline:3px solid var(--hffa-gold);outline-offset:2px}

.hffa-thumb{position:relative;aspect-ratio:16/9;background:linear-gradient(135deg,var(--hffa-green) 0%,var(--hffa-green-dk) 100%);overflow:hidden;flex:0 0 auto}
.hffa-thumb img{width:100%;height:100%;object-fit:cover;display:block;opacity:0;transition:opacity .3s}
.hffa-thumb img.ok{opacity:1}
.hffa-thumb.doc{background:linear-gradient(135deg,var(--hffa-gold) 0%,#6E5020 100%)}
.hffa-thumbmark{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.22)}
.hffa-thumbmark svg{width:64px;height:64px}
.hffa-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(35,44,39,.28);transition:background .18s}
.hffa-card:hover .hffa-play{background:rgba(35,44,39,.42)}
.hffa-playbtn{width:58px;height:58px;border-radius:50%;background:rgba(255,255,255,.94);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(0,0,0,.22);transition:transform .18s}
.hffa-card:hover .hffa-playbtn{transform:scale(1.09)}
.hffa-playbtn svg{width:20px;height:20px;color:var(--hffa-green);display:block}
.hffa-badge{position:absolute;right:9px;bottom:9px;background:rgba(19,24,21,.86);color:#fff;padding:3px 8px;border-radius:4px;
  font-family:var(--hffa-font-ui);font-size:12px;font-weight:500;letter-spacing:.01em;font-variant-numeric:tabular-nums}
.hffa-flag{position:absolute;left:9px;top:9px;background:var(--hffa-gold);color:#fff;font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:4px 8px;border-radius:4px}

.hffa-body{padding:17px 19px 20px;display:flex;flex-direction:column;flex:1}
.hffa-lib .hffa-kicker{font-family:var(--hffa-font-ui);font-size:14px;font-weight:600;letter-spacing:.02em;color:var(--hffa-gold);margin-bottom:9px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;line-height:1.35}
.hffa-kicker .dot{width:3px;height:3px;border-radius:50%;background:currentColor;opacity:.5}
.hffa-kicker .ty{color:var(--hffa-body);font-weight:600}
.hffa-title{font-size:1.045rem;font-weight:700;margin-bottom:8px;letter-spacing:-.005em;overflow-wrap:anywhere}
.hffa-desc{font-family:var(--hffa-font-ui);font-weight:400;font-size:15px;line-height:1.6;color:var(--hffa-body);margin:0 0 16px;flex:1;overflow-wrap:anywhere}
.hffa-cta{font-size:.86rem;font-weight:700;color:var(--hffa-green);display:flex;align-items:center;gap:6px;margin-top:auto}
.hffa-card:hover .hffa-cta{color:var(--hffa-gold)}
.hffa-cta svg{width:13px;height:13px;transition:transform .18s}
.hffa-card:hover .hffa-cta svg{transform:translateX(3px)}

/* ---------- EMPTY ---------- */
.hffa-empty{display:none;text-align:center;padding:64px 24px;border:1px dashed var(--hffa-line);border-radius:var(--hffa-radius);background:#fff}
.hffa-empty.on{display:block}
.hffa-empty h3{font-size:1.25rem;margin-bottom:8px}
.hffa-empty p{color:var(--hffa-body);margin:0 0 20px}
.hffa-empty .hffa-chip{margin:0 4px 8px}

/* ---------- CTA + DISCLAIMER ---------- */
.hffa-ctaband{margin:56px 0 0;background:var(--hffa-gold-wash);border:1px solid #EFE6D6;border-radius:var(--hffa-radius);padding:38px 32px;text-align:center}
.hffa-ctaband h3{font-size:1.5rem;margin-bottom:10px}
.hffa-ctaband p{color:var(--hffa-body);max-width:560px;margin:0 auto 22px}
.hffa-btn{display:inline-block;background:var(--hffa-gold);color:#fff!important;text-decoration:none;padding:14px 30px;border-radius:6px;
  font-family:var(--hffa-font-ui);font-weight:600;font-size:15px;letter-spacing:.01em;transition:background .15s,transform .15s}
.hffa-btn:hover{background:var(--hffa-gold-dk);transform:translateY(-1px);color:#fff!important}
.hffa-disc{max-width:900px;margin:34px auto 0;padding:0 4px 56px;font-size:.79rem;line-height:1.65;color:#7C847E;text-align:center}

/* ---------- MODAL ---------- */
.hffa-modal{position:fixed;inset:0;z-index:99999;display:none;align-items:center;justify-content:center;padding:24px}
.hffa-modal.on{display:flex}
.hffa-backdrop{position:absolute;inset:0;background:rgba(19,24,21,.78);backdrop-filter:blur(3px)}
.hffa-panel{position:relative;background:#fff;border-radius:12px;max-width:900px;width:100%;max-height:92vh;overflow-y:auto;box-shadow:var(--hffa-shadow-lg)}
.hffa-x{position:absolute;top:12px;right:12px;z-index:3;width:38px;height:38px;border-radius:50%;border:0;background:rgba(255,255,255,.94);display:flex;align-items:center;justify-content:center;box-shadow:0 2px 10px rgba(0,0,0,.2)}
.hffa-x:hover{background:#fff;transform:scale(1.06)}
/* Scoped and hardened deliberately, with ID selectors and !important.
   That looks heavy-handed; it is measured. The library renders inside
   <div id="main-content">, so a single theme rule like
       #main-content iframe{height:auto!important}
   scores (1,0,1) and beats any class-only selector I can write — which
   collapses the player to the browser's default 150px while the modal around
   it still looks perfect. #hffaFrame under .hffa-lib scores (1,1,1) and wins.
   Unscoped .hffa-* classes have already lost to this site's CSS three times;
   these two rules are the ones where losing means the video simply is not
   there, so they do not get to lose. Verified against simulated Divi
   overrides in the test harness. */
.hffa-lib #hffaFrame{position:relative!important;width:100%!important;
  aspect-ratio:16/9!important;height:auto!important;min-height:200px;background:#000;
  border-radius:12px 12px 0 0;overflow:hidden}
.hffa-lib #hffaFrame iframe{position:absolute!important;inset:0!important;top:0!important;left:0!important;
  display:block!important;width:100%!important;height:100%!important;min-height:0!important;
  max-width:none!important;max-height:none!important;border:0!important;
  visibility:visible!important;opacity:1!important}
.hffa-lib #hffaFrame > .hffa-novid{position:absolute;inset:0}
.hffa-lib .hffa-novid{position:absolute;inset:0;margin:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:24px;color:#fff;font:400 15px/1.5 'Poppins',system-ui,sans-serif}
.hffa-mbody{padding:26px 30px 30px}
.hffa-mbody .hffa-kicker{margin-bottom:10px}
.hffa-mbody h3{font-size:1.42rem;margin-bottom:12px;letter-spacing:-.01em}
.hffa-mbody p{color:var(--hffa-body);margin:0 0 20px}
.hffa-mfoot{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding-top:20px;border-top:1px solid var(--hffa-line)}
.hffa-lib .hffa-copy{border:1px solid var(--hffa-line);background:#fff;border-radius:6px;padding:10px 16px;color:var(--hffa-body);display:flex;align-items:center;gap:7px;text-decoration:none;
  font-family:var(--hffa-font-ui);font-weight:500;font-size:14px}
.hffa-lib .hffa-copy:hover{border-color:var(--hffa-gold);color:var(--hffa-gold)}
#hffaMPage svg{transition:transform .18s}
#hffaMPage:hover svg{transform:translateX(3px)}
.hffa-btn-sm{padding:11px 22px;font-size:.9rem;margin-left:auto}
@media(max-width:560px){.hffa-btn-sm{margin-left:0;width:100%;text-align:center}}
@media(max-width:600px){.hffa-modal{padding:14px}.hffa-panel{max-height:90vh}.hffa-mbody{padding:20px}}

/* ============================================================
   SINGLE RESOURCE PAGE  — [hffa_player] [hffa_transcript]
                            [hffa_meta] [hffa_related]
   ============================================================ */

/* ---- click-to-load player ---- */
.hffa-single-player{margin:0 0 34px;position:relative;display:block;aspect-ratio:16/9;width:100%;min-height:200px;background:linear-gradient(135deg,var(--hffa-green) 0%,var(--hffa-green-dk) 100%);border-radius:var(--hffa-radius);overflow:hidden}
body .hffa-single-player iframe{position:absolute!important;inset:0!important;top:0!important;left:0!important;display:block!important;width:100%!important;height:100%!important;min-height:0!important;max-width:none!important;max-height:none!important;border:0!important;visibility:visible!important;opacity:1!important}
.hffa-single-poster{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:pointer;display:block}
.hffa-single-poster img{width:100%;height:100%;object-fit:cover;display:block;opacity:0;transition:opacity .3s}
.hffa-single-poster img.ok{opacity:1}
.hffa-single-poster .hffa-play{background:rgba(35,44,39,.30)}
.hffa-single-poster:hover .hffa-play{background:rgba(35,44,39,.44)}
.hffa-single-poster .hffa-playbtn{width:74px;height:74px}
.hffa-single-poster .hffa-playbtn svg{width:26px;height:26px}
.hffa-playbtn{line-height:0}
.hffa-single-poster:hover .hffa-playbtn{transform:scale(1.07)}
.hffa-single-poster:focus-visible{outline:3px solid var(--hffa-gold);outline-offset:3px}

/* ---- meta line ---- */
.hffa-lib .hffa-single-kicker{font-family:var(--hffa-font-ui);font-size:14px;font-weight:500;letter-spacing:.02em;
  text-transform:none;color:var(--hffa-body);margin:0 0 22px;gap:10px;flex-wrap:wrap;line-height:1.5}
.hffa-single-kicker .ty{color:var(--hffa-body);font-weight:500}
.hffa-lib .hffa-single-kicker a{color:var(--hffa-gold);font-weight:600;text-decoration:none;border-bottom:0}
.hffa-lib .hffa-single-kicker a:hover{text-decoration:underline}
.hffa-lib .hffa-single-kicker .hffa-arrow{color:#9AA29C;font-size:15px;line-height:1}

/* ---- transcript ----
   Collapsed by default so the video stays the page's primary content.
   Collapsed text is still crawlable. */
.hffa-tr-heading{font-family:var(--hffa-font-head);font-size:1.35rem;font-weight:700;margin:34px 0 12px;color:var(--hffa-ink)}
.hffa-transcript{border:1px solid var(--hffa-line);border-radius:var(--hffa-radius);background:#fff;margin:0 0 34px}
.hffa-transcript summary{cursor:pointer;padding:16px 20px;font-weight:700;font-size:1rem;color:var(--hffa-green);
  display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none}
.hffa-transcript summary::-webkit-details-marker{display:none}
.hffa-transcript summary::after{content:"";flex:0 0 auto;width:9px;height:9px;margin-left:auto;
  border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .2s;opacity:.6}
.hffa-transcript[open] summary::after{transform:rotate(225deg)}
.hffa-transcript summary:hover{color:var(--hffa-gold)}
.hffa-transcript summary:focus-visible{outline:3px solid var(--hffa-gold);outline-offset:-3px;border-radius:var(--hffa-radius)}
.hffa-tr-count{font-weight:500;font-size:.82rem;color:var(--hffa-body);white-space:nowrap;order:2}
.hffa-transcript summary::after{order:3}
.hffa-tr-body{padding:2px 20px 24px;border-top:1px solid var(--hffa-line);margin-top:-1px}
.hffa-tr-body h3{font-size:1.02rem;margin:22px 0 8px;color:var(--hffa-green)}
.hffa-tr-body h3:first-child{margin-top:18px}
.hffa-tr-body p{font-size:.94rem;line-height:1.7;color:var(--hffa-body);margin:0 0 14px;max-width:70ch}

/* ---- related ---- */
.hffa-related{border-top:1px solid var(--hffa-line);margin:34px 0 0;padding-top:26px}
.hffa-related h3{font-size:1.12rem;margin-bottom:14px}
.hffa-related ul{list-style:none;margin:0;padding:0}
.hffa-related li{padding:11px 0;border-bottom:1px solid var(--hffa-line);display:flex;flex-wrap:wrap;gap:10px;align-items:baseline}
.hffa-related li:last-child{border-bottom:0}
.hffa-related a{color:var(--hffa-ink);text-decoration:none;font-weight:600;font-size:.98rem}
.hffa-related a:hover{color:var(--hffa-gold)}
.hffa-rel-ty{font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--hffa-body)}

/* ---- taxonomy archive wrapper ---- */
.hffa-archive .hffa-hero h2{font-size:clamp(1.8rem,4vw,2.5rem)}

/* ---- [hffa_topic_grid] ---- */
.hffa-topicgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;
  max-width:1180px;margin:0 auto;padding:0 24px}
.hffa-topicgrid a{display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:14px 16px;border:1px solid var(--hffa-line);border-radius:var(--hffa-radius);
  background:#fff;text-decoration:none;color:var(--hffa-ink);font-weight:600;font-size:.95rem;
  transition:border-color .15s,transform .15s,box-shadow .15s}
.hffa-topicgrid a:hover{border-color:var(--hffa-gold);transform:translateY(-2px);box-shadow:var(--hffa-shadow);color:var(--hffa-gold)}
.hffa-topicgrid .tg-n{font-size:.78rem;font-weight:700;color:var(--hffa-body);background:var(--hffa-bg);
  border-radius:100px;padding:2px 9px;min-width:28px;text-align:center}
.hffa-topicgrid a:hover .tg-n{background:var(--hffa-gold-wash);color:var(--hffa-gold)}


/* ============================================================
   SINGLE RESOURCE — Divi chrome we don't want on these pages
   ============================================================ */

/* Divi's byline/date under the post title. The resource meta line
   ([hffa_meta]) replaces it. */
.single-hffa_resource .et_post_meta_wrapper > .post-meta,
.single-hffa_resource .entry-title + .post-meta,
.single-hffa_resource .post-meta{display:none!important}

/* Full width — no sidebar on a resource page. */
.single-hffa_resource #sidebar{display:none!important}
.single-hffa_resource #left-area{width:100%!important;padding-right:0!important;padding-bottom:0!important}
.single-hffa_resource.et_right_sidebar #left-area,
.single-hffa_resource.et_left_sidebar #left-area{width:100%!important;padding-left:0!important;padding-right:0!important}
.single-hffa_resource .et_pb_extra_column_main{width:100%!important}

/* The auto-composed body sits flush; give the CTA and related blocks room. */
.single-hffa_resource .hffa-ctaband{margin-top:38px}


/* ------------------------------------------------------------
   SINGLE RESOURCE — remaining Divi chrome
   ------------------------------------------------------------ */

/* Divi draws the sidebar divider as a border on the container pseudo-element,
   so hiding #sidebar alone leaves the vertical rule behind. */
.single-hffa_resource #main-content .container:before{display:none!important}
.single-hffa_resource #main-content .container{width:100%!important;max-width:1080px}

/* Close the gap Divi's title leaves above the meta line. */
.single-hffa_resource .entry-title{margin-bottom:10px!important;padding-bottom:0!important}
.single-hffa_resource .et_post_meta_wrapper{padding-bottom:0!important}
.single-hffa_resource .hffa-lib:first-of-type{margin-top:0}


/* ------------------------------------------------------------
   SINGLE RESOURCE — title/meta spacing.
   Divi 4 and Divi 5 title markup differ, so target both rather
   than depending on one class surviving.
   ------------------------------------------------------------ */
.single-hffa_resource h1.entry-title,
.single-hffa_resource .entry-title,
.single-hffa_resource .et_pb_title_container h1,
.single-hffa_resource .et_pb_post_title .entry-title{margin-bottom:8px!important;padding-bottom:0!important}
.single-hffa_resource .et_post_meta_wrapper{padding-bottom:0!important;margin-bottom:0!important}
.single-hffa_resource .hffa-single-kicker{margin-top:0!important}
.single-hffa_resource .et_post_meta_wrapper > .hffa-lib:first-child,
.single-hffa_resource #left-area > .hffa-lib:first-child{margin-top:-4px}
/* wpautop can leave empty paragraphs between shortcode blocks. */
.single-hffa_resource #left-area > p:empty,
.single-hffa_resource .entry-content > p:empty{display:none!important}


/* =====================================================================
 * REFINEMENTS
 * Appended so these win on source order as well as specificity — every
 * .hffa-* rule on this site has to survive Divi's stylesheet, and the ones
 * below have all lost that fight at least once.
 * ===================================================================== */

/* "Start here" flag, the result count and the sort control all sat in the
   theme's body font while everything around them was Poppins. */
.hffa-lib .hffa-flag{font-family:var(--hffa-font-ui);font-weight:700;letter-spacing:.1em}
.hffa-lib .hffa-count{font-family:var(--hffa-font-ui);font-size:14px;font-weight:500;line-height:1.4}
.hffa-lib .hffa-count strong{font-family:var(--hffa-font-ui);font-weight:600}
.hffa-lib .hffa-sort{font-family:var(--hffa-font-ui);font-size:14px;font-weight:500;line-height:1.4}
.hffa-lib .hffa-sort option{font-family:var(--hffa-font-ui)}
.hffa-lib .hffa-reset{font-family:var(--hffa-font-ui);font-size:14px;font-weight:600}

/* Single resource page: the excerpt ran straight into the transcript
   heading, and on a phone the whole column touched both screen edges. */
/* Addressed by id, not class. A theme rule as ordinary as
   #main-content h2{margin-top:0} scores (1,0,1) and beats any class selector
   even with !important — which is exactly how the gap kept closing back up.
   #hffaSingle .hffa-tr-heading scores (1,1,0) and wins. Same fight, same
   remedy as the player's #hffaFrame. */
#hffaSingle .hffa-tr-heading{margin-top:48px!important;margin-bottom:12px!important}
#hffaSingle .hffa-transcript{margin-bottom:40px!important}
#hffaSingle .hffa-single-player{margin-bottom:34px!important}
#hffaSingle .hffa-ctaband{margin-top:40px!important}

@media(max-width:782px){
  #hffaSingle{padding-left:20px!important;padding-right:20px!important}
}

/* Phone: the topic filters were taking most of the first screen. */
@media(max-width:600px){
  .hffa-chiprow{gap:6px;margin-top:12px}
  .hffa-chiplabel{font-size:.7rem;letter-spacing:.07em;margin-right:2px;width:100%;margin-bottom:2px}
  .hffa-lib .hffa-chip{padding:6px 12px;font-size:13px;line-height:1.35}
  .hffa-lib .hffa-tab{padding:8px 11px;font-size:13px}
  .hffa-lib .hffa-count{font-size:13px}
  .hffa-lib .hffa-sort{font-size:13px;padding:7px 10px}
  #hffaSingle{padding-left:18px!important;padding-right:18px!important}
}
