/* ========================================================================
   Aurum global footer — 2026-08-09
   ======================================================================== */

.site-footer.aurum-footer,
body > footer.aurum-footer{
  position:relative;
  display:block!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:var(--aurum-cream,#F7F5EB)!important;
  color:var(--aurum-ink,#191613)!important;
  box-shadow:none!important;
  text-transform:none!important;
  letter-spacing:normal!important;
}

.aurum-footer *{box-sizing:border-box}

/* 2026-08-16: top hairline glow + staggered blur/fade-up entrance —
   adapted from a shadcn "Footer" reference component the client liked, kept
   to Aurum's own white/red palette rather than the reference's dark theme.
   Content and layout are untouched; this is purely an entrance treatment
   layered on top. */
.aurum-footer-glow{
  content:'';
  position:absolute;
  top:0;
  left:50%;
  width:33%;
  height:2px;
  border-radius:999px;
  background:var(--aurum-red,#CD2026);
  opacity:.4;
  filter:blur(6px);
  transform:translate(-50%,-50%);
  pointer-events:none;
}

.aurum-footer-reveal{
  opacity:1;
  transform:none;
  filter:none;
  transition:opacity .7s var(--ease-editorial,ease),transform .7s var(--ease-editorial,ease),filter .5s var(--ease-editorial,ease);
  transition-delay:var(--reveal-delay,0s);
}
.aurum-footer-enhanced .aurum-footer-reveal{
  opacity:0;
  transform:translateY(14px);
  filter:blur(4px);
}
.aurum-footer-enhanced .aurum-footer-reveal.is-visible{
  opacity:1;
  transform:translateY(0);
  filter:blur(0);
}
@media(prefers-reduced-motion:reduce){
  .aurum-footer-reveal{transition:none;opacity:1;transform:none;filter:none}
}

.aurum-footer-summary{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:clamp(22px,3vw,32px) clamp(24px,6vw,96px);
  border-bottom:1px solid rgba(25,22,19,.1);
}
.aurum-footer-summary-brand{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.aurum-footer-summary .aurum-footer-logo{display:inline-flex;margin:0}
.aurum-footer-summary .aurum-footer-logo img{
  width:148px!important;
  height:auto!important;
  object-fit:contain!important;
}
.aurum-footer-summary-statement{
  margin:0;
  padding-left:18px;
  border-left:1px solid rgba(25,22,19,.14);
  color:rgba(25,22,19,.66);
  font-size:14px!important;
  line-height:1.4;
  letter-spacing:0!important;
  text-transform:none!important;
}
.aurum-footer-summary-right{display:flex;align-items:center;gap:18px;flex-wrap:wrap}

.aurum-footer-toggle{
  display:none;
  align-items:center;
  gap:9px;
  padding:11px 20px 11px 22px;
  border:1px solid rgba(25,22,19,.16);
  border-radius:999px;
  background:#fff!important;
  color:var(--aurum-red,#CD2026)!important;
  font-size:12px!important;
  font-weight:700;
  letter-spacing:.03em!important;
  text-transform:none!important;
  transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease;
}

.aurum-footer-enhanced .aurum-footer-toggle{display:inline-flex}

.aurum-footer-toggle:hover{background:var(--aurum-red,#CD2026);border-color:var(--aurum-red,#CD2026);color:#fff!important;transform:translateY(-1px)}
.aurum-footer-toggle-icon{width:13px;height:13px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;transition:transform .3s var(--ease-editorial,ease)}
.aurum-footer-toggle[aria-expanded="true"] .aurum-footer-toggle-icon{transform:rotate(180deg)}

.aurum-footer-more{
  max-height:none;
  overflow:visible;
  visibility:visible;
}
.aurum-footer-enhanced .aurum-footer-more{
  max-height:0;
  overflow:hidden;
  visibility:hidden;
  transition:max-height .45s cubic-bezier(.16,1,.3,1),visibility 0s linear .45s;
}
.aurum-footer-enhanced .aurum-footer-more.is-open{
  max-height:2400px;
  visibility:visible;
  transition:max-height .55s cubic-bezier(.16,1,.3,1),visibility 0s linear 0s;
}

.aurum-footer-donate{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:clamp(26px,3vw,38px) clamp(24px,6vw,96px);
  background:var(--aurum-red,#CD2026);
  border-bottom:4px solid var(--aurum-gold,#E0AC26);
}
.aurum-footer-donate-copy{max-width:560px}
.aurum-footer-donate-copy p.aurum-footer-eyebrow{
  margin:0 0 6px;
  color:var(--aurum-gold,#E0AC26)!important;
  font-size:11px!important;
  font-weight:700;
  letter-spacing:.15em!important;
  text-transform:uppercase!important;
}
.aurum-footer-donate-copy h2{
  margin:0 0 6px;
  color:#fff!important;
  font-size:clamp(20px,2.4vw,28px)!important;
  font-weight:700;
  line-height:1.15;
  letter-spacing:0!important;
  text-transform:none!important;
}
.aurum-footer-donate-copy p.aurum-footer-donate-lead{
  margin:0;
  color:rgba(255,255,255,.86)!important;
  font-size:14px!important;
  line-height:1.5;
  letter-spacing:0!important;
  text-transform:none!important;
}
/* 2026-08-16: was its own bespoke white/red hover-lift style, entirely
   separate from the sitewide .button hover-fill effect (see button-hover.js
   + .button/.button-invert in modern-refresh.css) — that's why it didn't
   "behave like the other buttons". Now uses class="button button-invert"
   in the markup below. Needs flex-shrink so it doesn't get squeezed by the
   copy column, and align-self:center to override .button's sitewide
   align-self:flex-start (added elsewhere to stop buttons stretching in
   flex containers) — without this override it pins to the TOP of the row
   instead of centering against the taller two-line copy block next to it,
   which is exactly what read as "stuck in the corner". */
.aurum-footer-donate-button.button{flex-shrink:0;align-self:center}

.aurum-footer-main{
  display:grid;
  grid-template-columns:repeat(5,minmax(130px,1fr));
  gap:clamp(30px,3.2vw,56px);
  padding:clamp(42px,5vw,64px) clamp(24px,6vw,96px) clamp(42px,5vw,72px);
}

.aurum-footer-heading{
  margin:0 0 20px;
  color:var(--aurum-red,#CD2026);
  font-size:11px!important;
  font-weight:700;
  line-height:1;
  letter-spacing:.15em!important;
  text-transform:uppercase!important;
}

.aurum-footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:11px;min-width:0}
.aurum-footer-column>a,
.aurum-footer-contact address,
.aurum-footer-contact address span{
  font-size:13.5px!important;
  line-height:1.45;
  letter-spacing:0!important;
  text-transform:none!important;
}

.aurum-footer-column>a{
  position:relative;
  color:var(--aurum-ink,#191613)!important;
  transition:color .2s ease,transform .2s ease;
}
.aurum-footer-column>a:hover{color:var(--aurum-red,#CD2026)!important;transform:translateX(3px)}
.aurum-footer-compliance>a{padding-bottom:2px}
.aurum-footer-compliance>a span{color:var(--aurum-gold,#E0AC26)}

.aurum-footer-contact address{
  display:flex;
  flex-direction:column;
  gap:2px;
  margin:0 0 7px;
  color:rgba(25,22,19,.72);
  font-style:normal;
}

.aurum-footer-contact-link.button{
  margin-top:12px;
}

.aurum-bbee-badge{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin-top:15px;
  padding:8px 12px;
  border:1px solid rgba(25,22,19,.12);
  border-left:3px solid var(--aurum-gold,#E0AC26);
  border-radius:7px;
  background:#fff;
}
.aurum-bbee-badge span{
  color:rgba(25,22,19,.56);
  font-size:9px!important;
  font-weight:700;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
.aurum-bbee-badge strong{color:var(--aurum-red,#CD2026);font-size:13px}

.aurum-footer-social{display:flex;gap:12px;align-items:center}
.aurum-footer-social a{
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  border:0;
  border-radius:50%;
  background:var(--brand-color,var(--aurum-ink));
  color:#fff!important;
  box-shadow:0 6px 16px rgba(25,22,19,.14);
  transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;
}
.aurum-footer-social a:hover{
  transform:translateY(-3px);
  box-shadow:0 10px 22px rgba(25,22,19,.22);
  filter:brightness(1.08);
}
.aurum-footer-social svg{
  width:22px;
  height:22px;
  fill:currentColor;
  stroke:none;
}
.aurum-footer-social svg.is-outline{
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.aurum-footer-bottom{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:24px;
  padding:16px clamp(24px,6vw,96px) 18px;
  border-top:1px solid rgba(25,22,19,.11);
  background:#fff;
}
.aurum-footer-bottom p,
.aurum-footer-bottom a{
  margin:0;
  color:rgba(25,22,19,.62)!important;
  font-size:11px!important;
  line-height:1.35;
  letter-spacing:.035em!important;
  text-transform:none!important;
}
.aurum-footer-bottom p:nth-child(2){justify-self:center}
.aurum-footer-bottom a{justify-self:end;color:var(--aurum-red,#CD2026)!important;font-weight:700}

@media(max-width:1320px){
  .aurum-footer-main{grid-template-columns:repeat(3,1fr)}
}

@media(max-width:1050px){
  .aurum-footer-main{grid-template-columns:repeat(2,1fr);gap:44px 60px}
  .aurum-footer-summary-statement{display:none}
  .aurum-footer-donate{justify-content:flex-start}
}

@media(max-width:650px){
  .aurum-footer-summary{padding:20px 22px}
  .aurum-footer-summary-right{width:100%;justify-content:space-between}
  .aurum-footer-main{grid-template-columns:1fr;gap:34px;padding:38px 22px}
  .aurum-footer-column{padding-top:24px;border-top:1px solid rgba(25,22,19,.1)}
  .aurum-footer-bottom{grid-template-columns:1fr;gap:8px;padding:16px 22px 20px}
  .aurum-footer-bottom p:nth-child(2),.aurum-footer-bottom a{justify-self:start}
  .aurum-footer-donate{padding:24px 22px;text-align:left}
  .aurum-footer-donate-button{width:100%;justify-content:center}
}

@media(prefers-reduced-motion:reduce){
  .aurum-footer-column>a,.aurum-footer-social a,.aurum-footer-toggle,.aurum-footer-toggle-icon,.aurum-footer-more{transition:none}
}
