/* ============================================================
   HIGHER GROUND CORE — Widget styles
   Prepared by Kre8ivDesigns Marketing, LLC
   Structure + brand fallbacks only. Final colors/typography/spacing
   come from each widget's Elementor controls (which override these).
   Tokens are read from the active theme with safe fallbacks so the
   widgets stay on-brand even outside the Higher Ground theme.
   ============================================================ */

/* ---------- Pillar Card ---------- */
.hga-pillar{
  display:block;          /* text-align block model — one Alignment control moves all */
}
.hga-pillar__link{ display:contents; color:inherit; text-decoration:none; }
.hga-pillar__badge{
  display:inline-flex;    /* inline-level so it follows the card's text-align */
  align-items:center;
  justify-content:center;
  width:88px;height:88px;
  background-color:var(--hga-green, #5C7042);
  color:var(--hga-cream, #F5F0E8);
  box-shadow:0 10px 26px rgba(19,31,57,.18);
}
/* Pentagon "home-plate" badge from the collateral */
.hga-pillar--badge-pentagon .hga-pillar__badge{
  clip-path:polygon(50% 0, 100% 30%, 100% 100%, 0 100%, 0 30%);
  border-radius:10px 10px 0 0;
}
.hga-pillar--badge-rounded .hga-pillar__badge{ border-radius:16px; }
.hga-pillar--badge-circle  .hga-pillar__badge{ border-radius:50%; }
.hga-pillar__badge svg{ width:40px;height:40px;fill:currentColor; }
.hga-pillar__badge i{ line-height:1; }
.hga-pillar__title{
  font-family:var(--hga-font-display, 'Cinzel', Georgia, serif);
  text-transform:uppercase;
  letter-spacing:.06em;
  margin:0 0 .25em;
}
.hga-pillar__subtitle{
  font-family:var(--hga-font-head, 'Cormorant Garamond', Georgia, serif);
  font-weight:600;
  font-size:1.15rem;
  margin:0 0 .5em;
}
.hga-pillar__desc{ margin:0; }

/* ---------- Package Card ---------- */
.hga-package{
  display:flex;
  flex-direction:column;
  height:100%;
  background-color:var(--hga-paper, #FBF8F2);
}
.hga-package__head{
  background-color:var(--hga-navy, #1B2A4A);
  text-align:center;
}
.hga-package__name{
  margin:0;
  font-family:var(--hga-font-display, 'Cinzel', Georgia, serif);
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:1.4rem;
}
.hga-package__body{ display:flex; flex-direction:column; flex:1 1 auto; }
.hga-package__tagline{
  font-family:var(--hga-font-head, 'Cormorant Garamond', Georgia, serif);
  font-weight:600;
  font-size:1.25rem;
  text-align:center;
  margin:0 0 1.1em;
}
.hga-package__list{ list-style:none; margin:0 0 1.4em; padding:0; }
.hga-package__item{
  display:flex;
  align-items:flex-start;
  gap:.6em;
  line-height:1.4;
}
.hga-package__item-icon{ flex:0 0 auto; display:inline-flex; margin-top:.18em; }
.hga-package__item-icon svg{ width:1em;height:1em;fill:currentColor; }
.hga-package__timeline{ text-align:center; margin:0 0 .35em; font-size:.95rem; }
.hga-package__price{
  text-align:center;
  font-family:var(--hga-font-head, 'Cormorant Garamond', Georgia, serif);
  font-weight:700;
  font-size:1.6rem;
  margin:0 0 1.1em;
}
.hga-package__cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.5em;
  margin-top:auto;
  align-self:center;
  font-family:var(--hga-font-display, 'Cinzel', Georgia, serif);
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:.78rem;
  font-weight:600;
  text-decoration:none;
  cursor:pointer;
  transition:transform .25s ease, background-color .25s ease, color .25s ease;
}
.hga-package__cta:hover{ transform:translateY(-2px); }

/* Featured tier lift (toggle adds .hga-package-is-featured to the widget root) */
.hga-package-is-featured .hga-package{
  transform:translateY(-10px);
  box-shadow:0 30px 70px rgba(19,31,57,.28);
}
@media(max-width:1024px){
  .hga-package-is-featured .hga-package{ transform:none; }
}

/* ---------- Brand Mark ---------- */
.hga-brandmark{ display:flex; align-items:center; }
.hga-brandmark--stacked{ flex-direction:column; text-align:center; }
.hga-brandmark--horizontal{ flex-direction:row; }
.hga-brandmark__link{ display:contents; text-decoration:none; color:inherit; }
.hga-brandmark__svg{ width:64px; height:64px; display:block; }
.hga-brandmark__type{ display:flex; flex-direction:column; line-height:1; }
.hga-brandmark__primary{
  font-family:var(--hga-font-display, 'Cinzel', Georgia, serif);
  font-weight:700;
  letter-spacing:.12em;
  font-size:1.25rem;
}
.hga-brandmark__secondary{
  font-family:var(--hga-font-display, 'Cinzel', Georgia, serif);
  font-weight:600;
  letter-spacing:.42em;
  font-size:.7rem;
  margin-top:.35em;
}

/* ---------- Optional reveal-on-scroll (progressive enhancement) ---------- */
.hga-reveal{ opacity:0; transform:translateY(22px); transition:opacity .7s ease, transform .7s ease; }
.hga-reveal.is-inview{ opacity:1; transform:none; }
@media (prefers-reduced-motion: reduce){
  .hga-reveal{ opacity:1; transform:none; transition:none; }
}
