/* ==========================================================================
   Francizor Awards 2026 — scoped, self-contained stylesheet.
   Loaded ONLY by layouts/awards.blade.php (a dedicated layout, deliberately
   not extending layouts.premium — same pattern as dashboard-app.css/
   layouts/dashboard-app.blade.php). Nothing here touches the public site's
   global styles.css/site.css tokens or classes.
   ========================================================================== */

:root{
  --aw-navy-950:#0E1830;
  --aw-navy-900:#16233D;
  --aw-navy-800:#10233E;

  --aw-gold-700:#B98234;
  --aw-gold-600:#C99649;
  --aw-gold-500:#C2924E;
  --aw-gold-400:#D9AE6B;

  --aw-white:#FFFFFF;

  --aw-blue-surface:#EEF1F6;
  --aw-blue-surface-2:#EEF3F8;

  --aw-cream:#FAF3E4;
  --aw-cream-2:#F7F0E5;

  --aw-border:#E2E5EA;
  --aw-text:#1E2532;
  --aw-muted:#626B7B;
  --aw-soft:#788393;
  --aw-inst-red:#A12622;

  --aw-sans:'Manrope',system-ui,-apple-system,sans-serif;
  --aw-maxw:1200px;
}

.awards-page{
  background:var(--aw-white);
  color:var(--aw-text);
  font-family:var(--aw-sans);
  -webkit-font-smoothing:antialiased;
}
.awards-page *{box-sizing:border-box}
.awards-page img{max-width:100%;display:block}
.awards-page a{color:inherit;text-decoration:none}
.awards-page button{font-family:inherit;cursor:pointer}

.aw-wrap{
  width:min(100% - 48px,var(--aw-maxw));
  margin-inline:auto;
}
@media(max-width:768px){ .aw-wrap{width:min(100% - 40px,var(--aw-maxw))} }
@media(max-width:430px){ .aw-wrap{width:min(100% - 32px,var(--aw-maxw))} }

.aw-visually-hidden{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0;
}

/* focus-visible ring, consistent everywhere on the page */
.awards-page a:focus-visible,
.awards-page button:focus-visible,
.awards-page input:focus-visible{
  outline:2px solid var(--aw-gold-600);
  outline-offset:2px;
}

@media(prefers-reduced-motion:reduce){
  .awards-page *{animation-duration:.001ms!important;transition-duration:.001ms!important}
}

/* ---------- 01. HEADER ---------- */
.aw-header{
  background:var(--aw-white);
  border-bottom:1px solid rgba(7,26,51,.06);
  position:sticky;
  top:0;
  z-index:40;
}
.aw-header__row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  height:54px;
  gap:16px;
}
.aw-header__logo{
  display:flex;
  flex-direction:column;
  line-height:1.05;
  flex:0 0 auto;
}
.aw-header__logo strong{
  font-size:17px;
  font-weight:800;
  color:var(--aw-navy-900);
  letter-spacing:-.01em;
}
.aw-header__logo strong .gold{color:var(--aw-gold-600)}
.aw-header__logo span{
  font-size:9.5px;
  color:var(--aw-soft);
  font-weight:600;
  letter-spacing:.02em;
}
.aw-header__nav{
  display:flex;
  align-items:center;
  gap:20px;
  flex:1 1 auto;
  justify-content:center;
  min-width:0;
}
.aw-header__nav a{
  font-size:12px;
  font-weight:600;
  color:var(--aw-navy-900);
  white-space:nowrap;
}
.aw-header__nav a:hover{color:var(--aw-gold-700)}
.aw-header__actions{
  display:flex;
  align-items:center;
  gap:10px;
  flex:0 0 auto;
}
.aw-search-btn{
  width:34px;height:34px;border-radius:50%;
  background:#F3F5F7;border:0;
  display:flex;align-items:center;justify-content:center;
  color:var(--aw-navy-900);
}
.aw-search-btn svg{width:14px;height:14px}
.aw-account-btn{
  height:30px;
  width:102px;
  padding-inline:18px;
  background:var(--aw-navy-900);
  color:var(--aw-white);
  border:0;
  border-radius:999px;
  font-size:11px;
  font-weight:700;
  display:flex;align-items:center;justify-content:center;
}
/* Higher-specificity override: `.awards-page a{color:inherit}` (0,1,1) otherwise
   beats the bare `.aw-account-btn{color:...}` (0,1,0) and the label inherits the
   dark body text color on the navy pill. Scoped to this one button only. */
.aw-header__actions .aw-account-btn,
.aw-header__actions .aw-account-btn:link,
.aw-header__actions .aw-account-btn:visited,
.aw-header__actions .aw-account-btn:hover,
.aw-header__actions .aw-account-btn:active,
.aw-header__actions .aw-account-btn:focus-visible{
  color:var(--aw-white);
  font-weight:600;
}
.aw-header__burger{display:none;background:none;border:0;color:var(--aw-navy-900)}

@media(max-width:900px){
  .aw-header__nav{display:none}
  .aw-header__burger{display:flex;align-items:center;justify-content:center}
}

/* ---------- 02. HERO ---------- */
/* Approved final banner asset (2089x753, ratio ~2.774:1). Title, subtitle,
   benefits, trophy, ARF watermark and script text are all baked into the
   image — see resources/views/pages/awards.blade.php. Width:100%/height:auto
   preserves the real aspect ratio at every breakpoint: never stretched,
   never cropped, full composition always visible. Only the vote CTA is
   real HTML, absolutely positioned in the banner's own lower-left free
   area using percentages so it tracks the image at any size. */
.aw-hero{
  position:relative;
  background:var(--aw-navy-900);
}
.aw-hero__banner-wrap{
  position:relative;
  width:100%;
  line-height:0;
}
.aw-hero__banner{
  display:block;
  width:100%;
  height:auto;
}
.aw-hero__cta{
  position:absolute;
  left:5%;
  bottom:6%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  width:200px;height:34px;
  background:var(--aw-gold-500);
  color:var(--aw-navy-900);
  font-size:13.5px;
  font-weight:800;
  letter-spacing:1.2px;
  border-radius:5px;
  border:0;
  box-shadow:0 10px 26px -12px rgba(194,146,78,.65);
}
.aw-hero__cta svg{width:15px;height:15px;flex:0 0 auto}

@media(max-width:430px){
  .aw-hero__cta{
    left:5%;
    bottom:4%;
    width:auto;
    min-height:44px;
    padding-inline:16px;
    font-size:11.5px;
    gap:6px;
  }
}

/* ---------- 03. STATISTICS STRIP ---------- */
.aw-stats{
  background:var(--aw-white);
  padding-block:18px;
}
.aw-stats__row{
  display:grid;
  grid-template-columns:1fr 1fr 1fr 1.15fr 1.25fr;
  align-items:center;
  gap:20px;
}
.aw-stat{
  display:flex;
  align-items:center;
  gap:10px;
}
.aw-stat__icon{flex:0 0 auto;width:36px;height:36px;color:var(--aw-gold-600)}
.aw-stat__value{display:block;font-size:13.5px;font-weight:700;color:var(--aw-navy-900);line-height:1.2}
.aw-stat__label{font-size:11px;color:var(--aw-muted);line-height:1.25;margin-top:1px}
.aw-stat--period{
  width:190px;height:66px;
  background:var(--aw-blue-surface);
  border-radius:7px;
  padding:11px 12px;
  display:flex;
  align-items:center;
  gap:10px;
  justify-self:end;
}
.aw-stat--period svg{flex:0 0 auto;width:29px;height:29px;color:var(--aw-navy-900)}
.aw-stat--period__body{font-size:11px;line-height:1.3}
.aw-stat--period__body b{display:block;font-weight:700}
.aw-stat--period a{
  display:block;
  margin-top:2px;
  font-size:10.5px;
  text-decoration:underline;
  color:var(--aw-navy-900);
}

@media(max-width:900px){
  .aw-stats__row{grid-template-columns:1fr 1fr;row-gap:16px}
  .aw-stat--period{grid-column:1 / -1;justify-self:stretch;width:100%}
}

/* ---------- ACTION CARDS ---------- */
.aw-actions{
  margin-top:16px;
  padding-block:0 8px;
}
.aw-actions__grid{
  display:grid;
  grid-template-columns:1.15fr .93fr;
  gap:13px;
  align-items:stretch;
}
.aw-card{
  border-radius:8px;
  padding:20px;
  position:relative;
}
.aw-card--voting{background:var(--aw-blue-surface)}
.aw-card--qr{background:var(--aw-cream)}
.aw-card__title{
  font-size:25px;
  font-weight:800;
  color:var(--aw-navy-900);
  line-height:1.08;
  margin:0;
}
.aw-card__subtitle{
  font-size:12.5px;
  color:var(--aw-muted);
  margin:4px 0 0;
  max-width:80%;
}
.aw-card__body{
  font-size:12.5px;
  line-height:1.5;
  color:var(--aw-muted);
  margin:12px 0 0;
  max-width:85%;
}
.aw-card__body--tight{margin-top:14px}
.aw-card__institutional{
  font-size:12px;
  line-height:1.55;
  color:var(--aw-text);
  margin:14px 0 0;
  max-width:94%;
}
.aw-card__methodology{
  font-size:11px;
  line-height:1.5;
  color:var(--aw-muted);
  margin:10px 0 0;
  max-width:94%;
}
.aw-card__methodology a{color:var(--aw-navy-900);text-decoration:underline;font-weight:600}

.aw-card__cta{
  margin-top:14px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  height:34px;
  padding-inline:23px;
  background:var(--aw-gold-500);
  color:var(--aw-navy-900);
  font-size:13px;
  font-weight:600;
  border-radius:5px;
  border:0;
}

/* ---------- RIGHT CARD — QR-FIRST NOMINATION ----------
   Deliberately minimal: title, one large scannable QR, one line of
   microcopy, one bordered institutional info box. Nothing else. The QR is
   a general distribution shortcut to the nomination form only — never the
   future per-franchise voting QR. */
.aw-card--qr{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}
.aw-card--qr .aw-card__title{align-self:flex-start}
.aw-qr-hero{
  flex:1 1 auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:12px;
  padding-block:18px;
}
.aw-qr-hero img{
  display:block;
  width:140px;height:140px;
  background:var(--aw-white);
  border:1px solid var(--aw-border);
  border-radius:8px;
  padding:10px;
}
.aw-qr-hero__caption{
  margin:0;
  font-size:12px;
  font-weight:700;
  color:var(--aw-navy-900);
}
.aw-qr-hero__info{
  margin:0;
  width:100%;
  max-width:320px;
  padding:14px 18px;
  background:var(--aw-white);
  border:1px solid var(--aw-gold-400);
  border-radius:11px;
  text-align:center;
}
.aw-qr-hero__info p{
  margin:0;
  font-size:12px;
  line-height:1.55;
  color:var(--aw-text);
}
.aw-qr-hero__info p + p{margin-top:8px}
.aw-qr-hero__info strong{font-weight:700;color:var(--aw-navy-900)}

@media(max-width:900px){
  .aw-actions__grid{grid-template-columns:1fr}
  .aw-card__body{max-width:100%}
  .aw-card__institutional{max-width:100%}
  .aw-card__methodology{max-width:100%}
  .aw-qr-hero{padding-block:20px}
}

/* ---------- ROW 2 — nomination form + trophy visual ----------
   Same column proportions as .aw-actions__grid so the trophy image sits
   directly under the QR card on the right. Presentation-only: the form
   keeps its own spacing/max-width, the image is purely decorative. */
.aw-actions__row2{
  display:grid;
  grid-template-columns:1.15fr .93fr;
  gap:13px;
  align-items:start;
}
.aw-trophy{
  margin-top:14px;
  border-radius:8px;
  overflow:hidden;
  border:1px solid var(--aw-border);
  box-shadow:0 1px 5px rgba(7,26,51,.05);
}
.aw-trophy__img{
  display:block;
  width:100%;
  height:auto;
}
@media(max-width:900px){
  .aw-actions__row2{grid-template-columns:1fr}
}

/* ---------- SECTION HEADS (shared: process / jury / calendar) ---------- */
.aw-section{padding-block:27px 0}
.aw-section__head h2{
  font-size:28px;
  font-weight:800;
  color:var(--aw-navy-900);
  line-height:1.05;
  margin:0;
}
.aw-section__head p{
  font-size:12.5px;
  color:var(--aw-muted);
  margin:2px 0 0;
}
.aw-section__head--split{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:16px;
  flex-wrap:wrap;
}
.aw-section__link{
  font-size:10.5px;
  color:var(--aw-navy-900);
  text-decoration:underline;
  white-space:nowrap;
}
.aw-section__head-right{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:8px;
}
.aw-jury-international{
  display:inline-flex;
  align-items:center;
  gap:9px;
  background:var(--aw-cream);
  border:1px solid var(--aw-border);
  border-radius:8px;
  padding:7px 14px;
}
.aw-jury-international__icon{flex:0 0 auto;width:20px;height:20px;color:var(--aw-gold-600)}
.aw-jury-international__title{
  display:block;
  font-size:10px;font-weight:800;
  letter-spacing:.04em;text-transform:uppercase;
  color:var(--aw-navy-900);
}
.aw-jury-international__desc{
  display:block;
  font-size:9.5px;
  color:var(--aw-muted);
  margin-top:1px;
}

/* ---------- PROCESS (6 steps) ---------- */
.aw-process{
  margin-top:17px;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  align-items:start;
}
.aw-step{
  position:relative;
  text-align:center;
  padding:0 10px;
}
.aw-step::after{
  content:"";
  position:absolute;
  right:-4px;
  top:38px;
  width:14px;height:14px;
  background:no-repeat center/contain;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C9CDD5' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 6l6 6-6 6'/%3E%3C/svg%3E");
}
.aw-step:last-child::after{display:none}
.aw-step__num{
  width:22px;height:22px;
  border-radius:50%;
  background:var(--aw-gold-500);
  color:var(--aw-white);
  font-size:10.5px;font-weight:700;
  display:flex;align-items:center;justify-content:center;
  margin:0 auto;
}
.aw-step__icon{margin-top:8px;color:var(--aw-gold-600)}
.aw-step__icon svg{width:29px;height:29px}
.aw-step__title{
  margin:6px 0 0;
  font-size:11.5px;font-weight:700;color:var(--aw-navy-900);
}
.aw-step__desc{
  margin:4px auto 0;
  font-size:10.5px;
  line-height:1.28;
  color:var(--aw-muted);
  max-width:140px;
}

@media(max-width:900px){
  .aw-process{grid-template-columns:repeat(3,1fr);row-gap:24px}
  .aw-step:nth-child(3)::after{display:none}
}
@media(max-width:430px){
  .aw-process{grid-template-columns:1fr 1fr;row-gap:22px}
  .aw-step::after{display:none}
}

/* ---------- JURY GROUPS — restrained institutional separators for the
   national/international display grouping of the ONE jury; neither group
   is styled as more prominent than the other. ---------- */
.aw-jury-group{margin-top:20px}
.aw-jury-group + .aw-jury-group{margin-top:36px}
.aw-jury-group__head{
  display:flex;
  align-items:center;
  gap:9px;
  padding-bottom:10px;
  margin-bottom:16px;
  border-bottom:1px solid var(--aw-border);
  flex-wrap:wrap;
}
.aw-jury-group__icon{
  flex:0 0 auto;
  width:20px;height:20px;
  display:flex;align-items:center;justify-content:center;
  color:var(--aw-gold-600);
  font-size:16px;line-height:1;
}
.aw-jury-group__title{
  display:block;
  font-size:10px;font-weight:800;
  letter-spacing:.04em;
  color:var(--aw-navy-900);
}
.aw-jury-group__subtitle{
  display:block;
  font-size:9.5px;
  color:var(--aw-muted);
  margin-top:1px;
}
.aw-jury-group .aw-jury{margin-top:0}

/* ---------- JURY — editorial professional card ---------- */
.aw-jury{
  margin-top:20px;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:20px;
}
.aw-jury-card{
  flex:1 1 320px;
  max-width:480px;
  display:flex;
  align-items:flex-start;
  background:var(--aw-white);
  border:1px solid #E1E5EA;
  border-radius:8px;
  overflow:hidden;
  box-shadow:0 1px 5px rgba(7,26,51,.05);
}
.aw-jury-card__img{
  /* Portrait geometry is deliberately independent of the card's content
     height (bio/expertise length) — a fixed aspect-ratio box, not a
     flex-stretched fill, so one juror's longer biography never forces
     another's photo into an extreme crop. */
  flex:0 0 35%;
  width:35%;
  aspect-ratio:4/5;
  object-fit:cover;
  object-position:center 18%;
  background:var(--aw-blue-surface);
}
.aw-jury-card__img--placeholder{
  display:flex;align-items:center;justify-content:center;
  color:var(--aw-gold-600);
}
.aw-jury-card__body{padding:16px 18px;min-width:0}
.aw-jury-card__name{font-size:15px;font-weight:800;line-height:1.25;color:var(--aw-navy-900)}
.aw-jury-card__country{
  display:flex;
  align-items:center;
  gap:5px;
  font-size:11px;font-weight:600;
  color:var(--aw-muted);
  margin-top:3px;
}
.aw-jury-card__country span:first-child{font-size:13px;line-height:1}
.aw-jury-card__title{font-size:12px;line-height:1.4;color:var(--aw-muted);margin-top:6px}
.aw-jury-card__role{
  display:inline-block;
  font-size:10px;font-weight:700;
  color:var(--aw-gold-700);
  text-transform:uppercase;
  letter-spacing:.04em;
  margin-top:8px;
}
.aw-jury-card__bio-wrap{margin-top:10px}
.aw-jury-card__bio{
  margin:0;
  font-size:12px;
  line-height:1.55;
  color:var(--aw-text);
  white-space:pre-line;
  display:-webkit-box;
  -webkit-line-clamp:4;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.aw-jury-card__bio--expanded{-webkit-line-clamp:unset;overflow:visible}
.aw-jury-card__bio-toggle{
  display:block;
  margin-top:6px;
  background:none;border:0;padding:0;
  font-size:11px;font-weight:700;
  color:var(--aw-navy-900);
  text-decoration:underline;
  cursor:pointer;
}
.aw-jury-card__expertise{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.aw-jury-card__chip{
  max-width:100%;
  font-size:10px;font-weight:600;
  line-height:1.35;
  color:var(--aw-navy-900);
  background:var(--aw-blue-surface);
  border-radius:14px;
  padding:4px 10px;
}

.aw-jury-empty{
  width:100%;
  text-align:center;
  padding:26px 16px;
  background:var(--aw-blue-surface);
  border-radius:8px;
  font-size:12.5px;
  color:var(--aw-muted);
}

@media(max-width:600px){
  .aw-jury-card{flex-direction:column;max-width:none}
  .aw-jury-card__img{width:100%;height:220px;flex-basis:auto}
  .aw-jury-card__body{text-align:left}
}

/* ---------- CALENDAR / TIMELINE ---------- */
.aw-timeline{
  margin-top:19px;
  display:grid;
  grid-template-columns:repeat(6,1fr);
  position:relative;
}
.aw-timeline::before{
  content:"";
  position:absolute;
  top:6px;left:0;right:0;
  height:2px;
  background:var(--aw-border);
}
.aw-milestone{
  position:relative;
  text-align:center;
  padding:0 8px;
}
.aw-milestone__node{
  width:14px;height:14px;
  border-radius:50%;
  background:var(--aw-gold-500);
  margin:0 auto;
  position:relative;
  z-index:1;
  border:2px solid var(--aw-white);
}
.aw-milestone__date{
  margin-top:11px;
  font-size:10.5px;font-weight:700;color:var(--aw-navy-900);
}
.aw-milestone__desc{
  margin-top:3px;
  font-size:9.5px;line-height:1.28;color:var(--aw-navy-900);
}

@media(max-width:900px){
  .aw-timeline{grid-template-columns:repeat(3,1fr);row-gap:26px}
  .aw-timeline::before{display:none}
}
@media(max-width:430px){
  .aw-timeline{grid-template-columns:1fr;row-gap:20px;text-align:left;padding-left:18px}
  .aw-timeline::before{display:none}
  .aw-milestone{padding:0;text-align:left}
  .aw-milestone::before{
    content:"";position:absolute;left:-18px;top:2px;bottom:-20px;width:1px;background:#D6DCE4;
  }
  .aw-milestone:last-child::before{display:none}
  .aw-milestone__node{position:absolute;left:-24px;top:0;margin:0}
}

/* ---------- DARK GALA CTA BAND ---------- */
/* Honest CSS gradient standing in for a real gala-audience photograph — no
   such asset exists in the project and none is fabricated here. Soft warm
   dots simulate distant stage lighting over a dark crowd silhouette. */
.aw-cta{
  margin-top:22px;
  position:relative;
  overflow:hidden;
  min-height:75px;
  display:flex;
  align-items:center;
  background:
    radial-gradient(circle 20px at 12% 30%, rgba(217,174,107,.35), transparent 70%),
    radial-gradient(circle 12px at 22% 65%, rgba(217,174,107,.3), transparent 70%),
    radial-gradient(circle 16px at 33% 20%, rgba(217,174,107,.25), transparent 70%),
    radial-gradient(ellipse 500px 300px at 15% 20%, rgba(194,146,78,.20), transparent 60%),
    linear-gradient(100deg, var(--aw-navy-950), var(--aw-navy-900));
  padding-block:14px;
}
.aw-cta::before{
  content:"";
  position:absolute;inset:0;
  background:rgba(14,24,48,.88);
}
.aw-cta__grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:1.35fr .7fr 1.35fr;
  align-items:center;
  gap:20px;
}
.aw-cta__text{
  color:var(--aw-white);
  font-size:19px;
  font-weight:700;
  line-height:1.25;
  max-width:330px;
  margin:0;
}
.aw-cta__button{
  justify-self:center;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  width:162px;height:30px;
  background:var(--aw-gold-500);
  color:var(--aw-navy-900);
  font-size:12px;font-weight:600;
  letter-spacing:1.2px;
  border-radius:4px;border:0;
}
.aw-cta__values{
  display:flex;
  justify-content:space-between;
  gap:12px;
}
.aw-cta__value{
  text-align:center;
  color:var(--aw-white);
}
.aw-cta__value svg{width:23px;height:23px;color:var(--aw-gold-500)}
.aw-cta__value span{display:block;margin-top:5px;font-size:10.5px}

@media(max-width:900px){
  .aw-cta__grid{grid-template-columns:1fr;text-align:center;justify-items:center}
  .aw-cta__values{flex-wrap:wrap;justify-content:center}
}

/* ---------- FOOTER ---------- */
.aw-footer{
  background:var(--aw-white);
  border-top:1px solid rgba(7,26,51,.06);
  padding-block:16px;
}
.aw-footer__row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  flex-wrap:wrap;
}
.aw-footer__logo{display:flex;flex-direction:column;line-height:1.05}
.aw-footer__logo strong{font-size:16px;font-weight:800;color:var(--aw-navy-900)}
.aw-footer__logo strong .gold{color:var(--aw-gold-600)}
.aw-footer__logo span{
  font-size:8px;
  color:var(--aw-soft);
  font-weight:600;
  letter-spacing:.02em;
  margin-top:2px;
}
.aw-footer__links{
  display:flex;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
}
.aw-footer__links a,
.aw-footer__links-item{
  font-size:10.5px;
  color:var(--aw-navy-900);
  border-right:1px solid var(--aw-border);
  padding-right:14px;
}
.aw-footer__links a:last-child,
.aw-footer__links-item:last-child{border-right:0;padding-right:0}
.aw-footer__social{display:flex;gap:12px}
.aw-footer__social svg{width:17px;height:17px;color:var(--aw-navy-900)}
.aw-footer__script{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-style:italic;
  font-weight:600;
  font-size:19px;
  color:var(--aw-navy-900);
  text-align:right;
  line-height:1.1;
}

@media(max-width:900px){
  .aw-footer__row{flex-direction:column;align-items:flex-start;text-align:left}
  .aw-footer__script{text-align:left}
}

/* ---------- form validation reuse (nomination/vote inert states) ---------- */
.aw-field-error{color:#B3261E;font-size:11px;margin-top:5px}
.aw-form-ok{
  background:var(--aw-blue-surface);
  border-radius:8px;
  padding:22px;
  text-align:center;
}
.aw-form-ok h3{margin:8px 0 4px;font-size:18px;color:var(--aw-navy-900)}
.aw-form-ok p{margin:0;font-size:13px;color:var(--aw-muted)}

/* ---------- standalone nomination form (compact, secondary block) ---------- */
.aw-nom-form{
  margin-top:14px;
  background:var(--aw-blue-surface-2);
  border-radius:8px;
  padding:20px;
  max-width:720px;
}
.aw-nom-form__title{
  font-size:19px;
  font-weight:800;
  color:var(--aw-navy-900);
  line-height:1.15;
  margin:0;
}
.aw-nom-form__intro{
  font-size:12.5px;
  line-height:1.5;
  color:var(--aw-text);
  margin:6px 0 0;
}
.aw-nom-form .aw-field{margin-bottom:14px}
.aw-nom-form .aw-field label{display:block;font-size:11px;font-weight:600;color:var(--aw-navy-900);margin-bottom:5px}
.aw-field__optional{font-weight:500;color:var(--aw-muted);text-transform:none}
.aw-field__helper{font-size:10.5px;line-height:1.45;color:var(--aw-muted);margin:5px 0 0}
.aw-field__counter{font-size:10.5px;color:var(--aw-muted);text-align:right;margin:4px 0 0}
.aw-field__counter--limit{color:var(--aw-inst-red);font-weight:600}
.aw-nom-form .aw-field input,
.aw-nom-form .aw-field select,
.aw-nom-form .aw-field textarea{
  width:100%;
  height:38px;
  border:1px solid var(--aw-border);
  border-radius:5px;
  background:var(--aw-white);
  padding:0 12px;
  font-size:12.5px;
  font-family:inherit;
  color:var(--aw-text);
}
.aw-nom-form .aw-field textarea{height:auto;padding:10px 12px;resize:vertical}
.aw-nom-form__row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:560px){ .aw-nom-form__row{grid-template-columns:1fr} }
.aw-nom-form__submit{
  height:39px;padding-inline:22px;
  background:var(--aw-navy-900);color:var(--aw-white);
  border:0;border-radius:5px;font-size:12.5px;font-weight:700;
}
.aw-nom-form__note{
  font-size:11px;
  line-height:1.5;
  color:var(--aw-muted);
  margin:10px 0 14px;
}
.aw-nom-form__note a{color:var(--aw-navy-900);text-decoration:underline}
