/* A compact civic invitation leaves the page's own subject in charge. */
.election-invitation {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto 9rem;
  align-items:center;
  gap:.5rem 1rem;
  min-height:5.25rem;
  margin:.5rem 0 .625rem;
  padding:.5rem .75rem;
  border:1px solid #bdc9b9;
  border-inline-start:3px solid #b38a44;
  border-radius:.375rem;
  background:#f4f1e8;
  color:#253e30;
}
.election-invitation-copy { min-width:0; }
.election-invitation-eyebrow {
  display:block;
  font-size:.875rem;
  line-height:1.35;
  font-weight:650;
  color:#475b4b;
}
.election-invitation-copy strong {
  display:block;
  margin:0;
  font-family:Fraunces,Georgia,serif;
  font-size:1.375rem;
  line-height:1.2;
  font-weight:650;
}
.election-invitation-actions { display:flex; flex-wrap:wrap; align-items:center; gap:.375rem; }
.election-invitation-actions a {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.375rem;
  min-width:44px;
  min-height:44px;
  padding:.375rem .625rem;
  border-radius:.25rem;
  font-size:1rem;
  line-height:1.25;
  font-weight:650;
  text-decoration:none;
}
.election-invitation-primary { background:#304a3a; color:#fffdf7; border:1px solid #304a3a; }
.election-invitation-primary:hover { background:#203c2d; color:#fffdf7; }
.election-invitation-help { background:#f4f1e8; color:#304a3a; border:1px solid #8b9c79; }
.election-invitation-help:hover { background:#e5eadc; color:#203c2d; }
.election-invitation-actions a:focus-visible { outline:3px solid #24563f; outline-offset:3px; }
.election-invitation-art {
  display:block;
  width:100%;
  height:4rem;
  object-fit:cover;
  object-position:right center;
  border-radius:.25rem;
}
@media(max-width:48rem) {
  .election-invitation { grid-template-columns:minmax(0,1fr) auto 6rem; gap:.5rem; }
  .election-invitation-copy strong { font-size:1.125rem; }
}
@media(max-width:40rem) {
  .election-invitation {
    position:relative;
    grid-template-columns:minmax(0,1fr);
    gap:.125rem;
    min-height:0;
    padding:.375rem .5rem;
  }
  .election-invitation-copy { padding-inline-end:3rem; }
  .election-invitation-actions { position:relative; z-index:1; }
  .election-invitation-actions a { padding-inline:.5rem; }
  .election-invitation-art { position:absolute; top:.25rem; right:.5rem; width:2.5rem; height:2.5rem; }
}
@media print { .election-invitation { display:none; } }

/* A quiet civic route keeps the current desk or product action in charge. */
.election-invitation--compact {
  grid-template-columns:minmax(0,1fr) auto;
  min-height:0;
  margin-block:.25rem .5rem;
  padding:.125rem 0;
  gap:.25rem .75rem;
  border:0;
  border-bottom:1px solid #bdc9b9;
  border-radius:0;
  background:transparent;
}
.election-invitation--compact .election-invitation-copy { display:flex; align-items:baseline; flex-wrap:wrap; gap:.125rem .75rem; padding:0; }
.election-invitation--compact .election-invitation-copy strong { font-family:inherit; font-size:1rem; line-height:1.4; font-weight:500; }
.election-invitation--compact .election-invitation-art { display:none; }
.election-invitation--compact .election-invitation-actions { gap:.25rem .5rem; }
.election-invitation--compact .election-invitation-actions a { padding:.375rem .125rem; border:0; background:transparent; color:#304a3a; text-decoration:underline; text-underline-offset:.2em; }
.election-invitation--compact .election-invitation-actions a:hover { color:#203c2d; background:#e5eadc; }
@media(max-width:40rem) {
  .election-invitation--compact .election-invitation-eyebrow { display:none; }
  body[data-reader-page="shop"] .election-invitation--compact { grid-template-columns:minmax(0,1fr); }
  body[data-reader-page="shop"] .election-invitation--compact .election-invitation-copy { display:none; }
  body[data-reader-page="shop"] .election-invitation--compact .election-invitation-actions { justify-content:space-between; }
}
