/* Page-scoped vars — keep these on the body class so we don't override main.css's
   --r / --rl (which use smaller radii) for elements outside this page. */
.page-benefits-glossary{
  --purple:#7c3aed;--purplel:#f3f0ff;
  --light:#c8d6e5;
  --r:14px;--rl:20px;
}

/* PAGE HERO */
.page-benefits-glossary .gloss-hero{background:linear-gradient(135deg,#3b0764,#5b21b6);padding:4rem 5% 3.5rem;position:relative;overflow:hidden}
.page-benefits-glossary .gloss-hero::before{content:"";position:absolute;width:500px;height:500px;background:radial-gradient(circle,rgba(255,255,255,.06) 0%,transparent 70%);top:-80px;right:-60px;border-radius:50%;pointer-events:none}
.page-benefits-glossary .gloss-hero-inner{max-width:1100px;margin:0 auto;position:relative;z-index:1}
.page-benefits-glossary .gloss-eyebrow{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);border-radius:50px;padding:5px 14px;margin-bottom:1.25rem;font-size:.72rem;font-weight:800;color:rgba(255,255,255,.85);letter-spacing:.1em;text-transform:uppercase}
.page-benefits-glossary .gloss-hero h1{font-family:"Merriweather",serif;font-size:clamp(1.7rem,2.8vw,2.5rem);color:#fff;line-height:1.2;margin-bottom:.875rem;max-width:620px}
.page-benefits-glossary .gloss-hero p{font-size:.97rem;color:rgba(255,255,255,.65);line-height:1.75;max-width:540px;margin-bottom:1.5rem}
.page-benefits-glossary .gloss-stats{display:flex;gap:2rem;flex-wrap:wrap}
.page-benefits-glossary .gloss-stat{display:flex;flex-direction:column;gap:2px}
.page-benefits-glossary .gloss-stat-num{font-size:1.6rem;font-weight:900;color:#fff;line-height:1}
.page-benefits-glossary .gloss-stat-label{font-size:.72rem;font-weight:700;color:rgba(255,255,255,.5)}

/* HUB SECTION */
.page-benefits-glossary .hub-section{padding:4rem 5%;background:var(--bg)}
.page-benefits-glossary .hub-inner{max-width:1100px;margin:0 auto}
.page-benefits-glossary .hub-header{text-align:center;margin-bottom:2.5rem}
.page-benefits-glossary .hub-eyebrow{display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--td);margin-bottom:.75rem}
.page-benefits-glossary .hub-title{font-family:"Merriweather",serif;font-size:clamp(1.6rem,2.8vw,2.4rem);color:var(--dark);line-height:1.2;margin-bottom:.75rem}
.page-benefits-glossary .hub-sub{font-size:.97rem;color:var(--muted);line-height:1.7;max-width:560px;margin:0 auto 1.5rem}

/* SEARCH */
.page-benefits-glossary .search-wrap{position:relative;max-width:520px;margin:0 auto 2rem}
.page-benefits-glossary .search-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none;display:flex}
.page-benefits-glossary .search-input{
  width:100%;padding:14px 46px 14px 46px;
  border:2px solid var(--border);border-radius:50px;
  font-size:.97rem;font-weight:700;color:var(--dark);
  font-family:"Nunito",sans-serif;background:var(--bg);
  outline:none;transition:border-color .18s,box-shadow .18s;-webkit-appearance:none;
}
.page-benefits-glossary .search-input::placeholder{color:var(--light);font-weight:600}
.page-benefits-glossary .search-input:focus{border-color:var(--teal);box-shadow:0 0 0 4px rgba(121,201,204,.1)}
.page-benefits-glossary .search-clear{position:absolute;right:16px;top:50%;transform:translateY(-50%);background:var(--border);border:none;border-radius:50%;width:24px;height:24px;cursor:pointer;display:none;align-items:center;justify-content:center;color:var(--muted);font-size:.85rem;font-weight:800;transition:background .15s}
.page-benefits-glossary .search-clear:hover{background:var(--muted);color:#fff}
.page-benefits-glossary .search-clear.visible{display:flex}

/* CATEGORY PILLS */
.page-benefits-glossary .cat-pills{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-bottom:2rem}
.page-benefits-glossary .cat-pill{padding:7px 16px;border-radius:50px;border:1.5px solid var(--border);font-size:.78rem;font-weight:800;color:var(--muted);cursor:pointer;background:var(--bg);transition:all .15s;user-select:none;white-space:nowrap;font-family:"Nunito",sans-serif}
.page-benefits-glossary .cat-pill:hover,
.page-benefits-glossary .cat-pill.active{border-color:var(--teal);background:var(--tp);color:var(--td)}
.page-benefits-glossary .cat-pill.all.active{border-color:var(--dark);background:var(--dark);color:#fff}

/* RESULTS BAR */
.page-benefits-glossary .results-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem;flex-wrap:wrap;gap:.5rem}
.page-benefits-glossary .results-count{font-size:.84rem;font-weight:700;color:var(--muted)}
.page-benefits-glossary .results-count span{color:var(--dark);font-weight:900}
.page-benefits-glossary .flip-hint{font-size:.76rem;color:var(--muted);display:flex;align-items:center;gap:5px}

/* CARD GRID */
.page-benefits-glossary .cards-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(280px,1fr));
  gap:1.25rem;
}

/* FLIP CARD */
.page-benefits-glossary .flip-card{height:220px;cursor:pointer;perspective:1000px;outline:none}
.page-benefits-glossary .flip-card:focus .flip-inner{transform:rotateY(180deg)}
.page-benefits-glossary .flip-inner{
  position:relative;width:100%;height:100%;
  transform-style:preserve-3d;
  transition:transform .5s cubic-bezier(.4,0,.2,1);
  border-radius:var(--r);
}
.page-benefits-glossary .flip-card.flipped .flip-inner{transform:rotateY(180deg)}

.page-benefits-glossary .flip-front,
.page-benefits-glossary .flip-back{
  position:absolute;inset:0;
  border-radius:var(--r);
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  padding:1.5rem;
  display:flex;flex-direction:column;
}
/* FRONT */
.page-benefits-glossary .flip-front{
  background:var(--bg);
  border:1.5px solid var(--border);
  justify-content:space-between;
  transition:border-color .15s,box-shadow .15s;
}
.page-benefits-glossary .flip-card:hover .flip-front{border-color:var(--teal);box-shadow:0 6px 24px rgba(90,179,182,.12)}
.page-benefits-glossary .flip-card.flipped .flip-front{box-shadow:none}
.page-benefits-glossary .front-cat-badge{
  display:inline-block;font-size:.62rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  padding:3px 9px;border-radius:20px;margin-bottom:.75rem;
}
.page-benefits-glossary .front-term{font-family:"Merriweather",serif;font-size:1.05rem;color:var(--dark);line-height:1.3;margin-bottom:.5rem}
.page-benefits-glossary .front-teaser{font-size:.8rem;color:var(--muted);line-height:1.5}
.page-benefits-glossary .front-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:.75rem}
.page-benefits-glossary .flip-prompt{font-size:.72rem;font-weight:800;color:var(--muted);display:flex;align-items:center;gap:5px}
.page-benefits-glossary .flip-icon{
  width:28px;height:28px;border-radius:50%;
  border:1.5px solid var(--border);
  display:flex;align-items:center;justify-content:center;
  transition:background .15s,border-color .15s;
}
.page-benefits-glossary .flip-card:hover .flip-icon{background:var(--teal);border-color:var(--teal)}
.page-benefits-glossary .flip-card:hover .flip-icon svg{stroke:#fff}

/* BACK */
.page-benefits-glossary .flip-back{
  transform:rotateY(180deg);
  justify-content:space-between;
}
.page-benefits-glossary .back-label{font-size:.62rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.5);margin-bottom:.5rem}
.page-benefits-glossary .back-explanation{font-size:.84rem;color:rgba(255,255,255,.85);line-height:1.65;flex:1}
.page-benefits-glossary .back-takeaway{
  margin-top:.875rem;
  background:rgba(255,255,255,.1);
  border-radius:8px;padding:.6rem .875rem;
  font-size:.75rem;color:#fff;line-height:1.5;
}
.page-benefits-glossary .back-takeaway-label{font-size:.63rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.5);margin-bottom:3px}
.page-benefits-glossary .back-flip-back{font-size:.7rem;color:rgba(255,255,255,.4);margin-top:.75rem;text-align:center;font-style:italic}

/* CATEGORY COLOURS */
.page-benefits-glossary .cat-plan-types .front-cat-badge{background:#edf2ff;color:#4361ee}
.page-benefits-glossary .cat-plan-types .flip-back{background:linear-gradient(135deg,#4361ee,#3a0ca3)}
.page-benefits-glossary .cat-coverage .front-cat-badge{background:var(--gp);color:var(--gd)}
.page-benefits-glossary .cat-coverage .flip-back{background:linear-gradient(135deg,#2d6a4f,#40916c)}
.page-benefits-glossary .cat-accounts .front-cat-badge{background:var(--amberl);color:#c17600}
.page-benefits-glossary .cat-accounts .flip-back{background:linear-gradient(135deg,#c17600,#e07b00)}
.page-benefits-glossary .cat-industry .front-cat-badge{background:var(--purplel);color:var(--purple)}
.page-benefits-glossary .cat-industry .flip-back{background:linear-gradient(135deg,#7c3aed,#5b21b6)}
.page-benefits-glossary .cat-disability .front-cat-badge{background:var(--tp);color:var(--td)}
.page-benefits-glossary .cat-disability .flip-back{background:linear-gradient(135deg,var(--td),#3a8a8d)}
.page-benefits-glossary .cat-wellness .front-cat-badge{background:#fce8f3;color:#9d174d}
.page-benefits-glossary .cat-wellness .flip-back{background:linear-gradient(135deg,#9d174d,#6d104a)}

/* NO RESULTS */
.page-benefits-glossary .no-results{grid-column:1/-1;text-align:center;padding:3rem 1rem}
.page-benefits-glossary .no-results h3{font-size:1.1rem;font-weight:800;color:var(--dark);margin-bottom:.5rem}
.page-benefits-glossary .no-results p{font-size:.9rem;color:var(--muted);max-width:380px;margin:0 auto 1.25rem}
.page-benefits-glossary .no-results button{display:inline-flex;align-items:center;gap:7px;background:var(--dark);color:#fff;padding:11px 22px;border-radius:50px;font-size:.86rem;font-weight:800;border:none;cursor:pointer;font-family:"Nunito",sans-serif}

/* HUB CTA */
.page-benefits-glossary .hub-cta{margin-top:3rem;background:var(--gp);border:1px solid rgba(94,201,58,.2);border-radius:var(--rl);padding:2rem;display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap}
.page-benefits-glossary .hub-cta-text h3{font-family:"Merriweather",serif;font-size:1.1rem;color:var(--dark);margin-bottom:.3rem}
.page-benefits-glossary .hub-cta-text p{font-size:.88rem;color:var(--text);line-height:1.65}
.page-benefits-glossary .hub-cta-btn{background:linear-gradient(135deg,var(--green),var(--gd));color:var(--dark);font-weight:800;font-size:.9rem;padding:12px 24px;border-radius:50px;text-decoration:none;white-space:nowrap;box-shadow:0 4px 14px rgba(126,217,87,.3);transition:transform .15s,box-shadow .15s;display:inline-flex;align-items:center;gap:7px;flex-shrink:0}
.page-benefits-glossary .hub-cta-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(126,217,87,.42)}

/* MOBILE */
@media(max-width:640px){
  .page-benefits-glossary .gloss-hero{padding:3rem 4% 2.5rem}
  .page-benefits-glossary .hub-section{padding:3rem 4%}
  .page-benefits-glossary .gloss-stats{gap:1.25rem}
  .page-benefits-glossary .cards-grid{grid-template-columns:1fr 1fr;gap:.875rem}
  .page-benefits-glossary .flip-card{height:200px}
  .page-benefits-glossary .flip-front,
  .page-benefits-glossary .flip-back{padding:1.1rem}
  .page-benefits-glossary .front-term{font-size:.95rem}
  .page-benefits-glossary .hub-cta{flex-direction:column;align-items:flex-start}
}
@media(max-width:400px){
  .page-benefits-glossary .cards-grid{grid-template-columns:1fr}
  .page-benefits-glossary .flip-card{height:auto;min-height:180px}
}
