/* V23 — aligned compact premium footer */
.footer-v23.site-footer{
  padding:0 !important;
}

.footer-main-v23{
  min-height:190px;
  display:grid;
  grid-template-columns:minmax(300px,1.18fr) minmax(330px,1fr) minmax(235px,.72fr);
  gap:clamp(34px,4vw,62px);
  align-items:center;
  padding-top:31px;
  padding-bottom:27px;
}

.footer-brand-v23{
  display:grid;
  align-content:center;
  gap:20px;
  min-width:0;
}

.footer-v23 .footer-identity-v22{
  align-self:start;
}

.footer-statement-v23{
  margin:0;
  max-width:520px;
  color:#f4f8fa;
  font-family:var(--serif);
  font-size:clamp(1.22rem,1.45vw,1.58rem);
  line-height:1.15;
  letter-spacing:-.018em;
  text-wrap:balance;
}

/* Navigation becomes a deliberate set of compact controls rather than loose text. */
.footer-nav-v23{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
  align-content:center;
}

.footer-nav-v23 a{
  min-height:39px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:8px 11px 8px 13px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.025);
  color:#dce8ed;
  text-decoration:none;
  font-size:.75rem;
  font-weight:650;
  letter-spacing:.005em;
  transition:background .22s ease,border-color .22s ease,color .22s ease,transform .22s var(--ease);
}

.footer-nav-v23 a b{
  color:var(--sky);
  font-size:.78rem;
  font-weight:500;
  transition:transform .22s var(--ease);
}

.footer-nav-v23 a:hover,
.footer-nav-v23 a:focus-visible{
  color:#fff;
  background:rgba(141,198,219,.075);
  border-color:rgba(141,198,219,.36);
  transform:translateY(-1px);
}
.footer-nav-v23 a:hover b,
.footer-nav-v23 a:focus-visible b{transform:translate(2px,-1px);}

/* Primary footer CTA — compact but visibly premium. */
.footer-action-v23{
  min-height:88px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 42px;
  align-items:stretch;
  border:1px solid rgba(141,198,219,.42);
  background:linear-gradient(135deg,rgba(141,198,219,.09),rgba(141,198,219,.035));
  color:#fff;
  text-decoration:none;
  box-shadow:8px 8px 0 rgba(2,16,29,.13);
  transition:background .24s ease,border-color .24s ease,transform .24s var(--ease),box-shadow .24s ease;
}

.footer-action-copy-v23{
  display:grid;
  align-content:center;
  gap:6px;
  min-width:0;
  padding:15px 15px 15px 17px;
}
.footer-action-copy-v23 small{
  color:var(--sky);
  font-size:.55rem;
  line-height:1.22;
  letter-spacing:.15em;
  text-transform:uppercase;
  font-weight:800;
}
.footer-action-copy-v23 strong{
  font-family:var(--serif);
  font-size:1.02rem;
  line-height:1.16;
  font-weight:500;
}
.footer-action-arrow-v23{
  display:grid;
  place-items:center;
  border-left:1px solid rgba(141,198,219,.24);
  color:var(--sky);
  font-size:1rem;
  transition:background .24s ease,transform .24s var(--ease);
}
.footer-action-v23:hover,
.footer-action-v23:focus-visible{
  background:linear-gradient(135deg,rgba(141,198,219,.14),rgba(141,198,219,.055));
  border-color:rgba(141,198,219,.7);
  transform:translate(-2px,-2px);
  box-shadow:10px 10px 0 rgba(2,16,29,.14);
}
.footer-action-v23:hover .footer-action-arrow-v23,
.footer-action-v23:focus-visible .footer-action-arrow-v23{
  background:rgba(141,198,219,.09);
  transform:translate(1px,-1px);
}

.footer-v23 .footer-bottom-v23{
  min-height:47px;
  padding-top:12px !important;
  padding-bottom:13px !important;
}

/* Reuse the existing footer reveal motion for the new main block. */
.footer-v23 .footer-main-v23{
  opacity:0;
  transform:translateY(14px);
  transition:opacity .72s var(--motion-ease-out,var(--ease)),transform .72s var(--motion-ease-out,var(--ease));
}
.footer-v23.is-visible .footer-main-v23{opacity:1;transform:none;}

@media (max-width:1080px){
  .footer-main-v23{
    grid-template-columns:minmax(280px,1fr) minmax(300px,1fr);
    gap:26px 38px;
    align-items:start;
  }
  .footer-brand-v23{grid-column:1;grid-row:1 / span 2;align-self:center;}
  .footer-nav-v23{grid-column:2;grid-row:1;}
  .footer-action-v23{grid-column:2;grid-row:2;min-height:72px;}
}

@media (max-width:760px){
  .footer-main-v23{
    grid-template-columns:1fr;
    min-height:auto;
    gap:22px;
    padding-top:29px;
    padding-bottom:24px;
  }
  .footer-brand-v23,
  .footer-nav-v23,
  .footer-action-v23{grid-column:1;grid-row:auto;}
  .footer-brand-v23{gap:16px;}
  .footer-statement-v23{font-size:1.35rem;max-width:600px;}
  .footer-nav-v23{grid-template-columns:repeat(2,minmax(0,1fr));}
  .footer-action-v23{max-width:360px;width:100%;}
}

@media (max-width:480px){
  .footer-nav-v23{grid-template-columns:1fr;gap:7px;}
  .footer-nav-v23 a{min-height:38px;}
  .footer-action-v23{max-width:none;}
}

@media (prefers-reduced-motion:reduce){
  .footer-v23 .footer-main-v23{opacity:1!important;transform:none!important;transition:none!important;}
}
