/* V22 — compact premium footer, site-wide */
.footer-v22.site-footer{
  position:relative !important;
  overflow:hidden !important;
  isolation:isolate;
  padding:0 !important;
  background:linear-gradient(112deg,#061a2f 0%,#08243f 66%,#092b47 100%) !important;
  color:#fff;
}

.footer-v22.site-footer::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:2px;
  background:linear-gradient(90deg,var(--sky) 0 16%,rgba(141,198,219,.22) 47%,transparent 82%);
}

/* Switch off V21 decorations completely. */
.footer-v22.site-footer::after,
.footer-v22 .footer-watermark{display:none !important;content:none !important;}

.footer-main-v22{
  min-height:190px;
  display:grid;
  grid-template-columns:minmax(190px,.78fr) minmax(280px,1.2fr) minmax(260px,1fr) minmax(230px,.9fr);
  gap:clamp(28px,3.4vw,52px);
  align-items:center;
  padding-top:36px;
  padding-bottom:30px;
}

.footer-identity-v22{
  display:inline-flex;
  align-items:center;
  gap:13px;
  color:#fff;
  text-decoration:none;
  width:max-content;
}

.footer-monogram-v22{
  width:42px;
  height:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.36);
  font-family:var(--serif);
  font-size:.88rem;
  letter-spacing:-.08em;
  flex:0 0 auto;
}
.footer-monogram-v22::after{
  content:"";
  position:absolute;
  width:14px;
  height:58px;
  right:-8px;
  top:-8px;
  background:var(--blue-2);
  transform:rotate(27deg);
}
.footer-monogram-v22 b{position:relative;z-index:1;font-weight:600;}
.footer-monogram-v22 b+b{margin-left:-3px;}

.footer-name-v22{display:grid;line-height:1.05;}
.footer-name-v22 strong{
  font-family:var(--serif);
  font-size:1rem;
  font-weight:600;
  letter-spacing:.02em;
}
.footer-name-v22 small{
  margin-top:6px;
  color:var(--sky);
  font-size:.58rem;
  text-transform:uppercase;
  letter-spacing:.18em;
  font-weight:800;
}

.footer-statement-v22{
  margin:0;
  max-width:430px;
  color:#f4f8fa;
  font-family:var(--serif);
  font-size:clamp(1.45rem,1.65vw,1.9rem);
  line-height:1.14;
  letter-spacing:-.025em;
  text-wrap:balance;
}

.footer-nav-v22{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 26px;
  align-content:center;
}
.footer-nav-v22 a{
  min-height:35px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  padding:6px 0;
  border-bottom:1px solid rgba(255,255,255,.11);
  color:#d7e5eb;
  text-decoration:none;
  font-size:.78rem;
  font-weight:600;
  transition:color .22s ease,border-color .22s ease,transform .22s var(--ease);
}
.footer-nav-v22 a:hover,
.footer-nav-v22 a:focus-visible{
  color:#fff;
  border-color:rgba(141,198,219,.42);
  transform:translateX(2px);
}
.footer-nav-v22 a span{color:var(--sky);}

.footer-action-v22{
  min-height:76px;
  position:relative;
  display:grid;
  align-content:center;
  gap:4px;
  padding:14px 46px 14px 16px;
  border-left:2px solid var(--sky);
  background:rgba(141,198,219,.055);
  color:#fff;
  text-decoration:none;
  transition:background .22s ease,transform .22s var(--ease);
}
.footer-action-v22 span{
  color:var(--sky);
  font-size:.58rem;
  line-height:1.2;
  letter-spacing:.14em;
  text-transform:uppercase;
  font-weight:800;
}
.footer-action-v22 strong{
  font-family:var(--serif);
  font-size:1.08rem;
  font-weight:500;
}
.footer-action-v22 b{
  position:absolute;
  right:16px;
  top:50%;
  transform:translateY(-50%);
  color:var(--sky);
  font-size:1rem;
  font-weight:500;
  transition:transform .22s var(--ease);
}
.footer-action-v22:hover,
.footer-action-v22:focus-visible{
  background:rgba(141,198,219,.1);
  transform:translateY(-2px);
}
.footer-action-v22:hover b{transform:translate(2px,-2px);}

.footer-v22 .footer-bottom-v22{
  min-height:48px;
  margin-top:0 !important;
  margin-inline:auto !important;
  padding:13px 0 14px !important;
  border-top:1px solid rgba(255,255,255,.11) !important;
  display:flex !important;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  color:#93abb7 !important;
  font-size:.67rem !important;
}
.footer-bottom-v22 a{
  color:#a9c0ca;
  text-decoration:none;
  transition:color .22s ease;
}
.footer-bottom-v22 a:hover{color:#fff;}
.footer-bottom-v22 a span{color:var(--sky);}

/* Preserve the existing footer reveal animation on the new structure. */
.footer-v22 .footer-main-v22,
.footer-v22 .footer-bottom-v22{
  opacity:0;
  transform:translateY(16px);
  transition:opacity .72s var(--motion-ease-out, var(--ease)),transform .72s var(--motion-ease-out, var(--ease));
}
.footer-v22.is-visible .footer-main-v22,
.footer-v22.is-visible .footer-bottom-v22{opacity:1;transform:none;}
.footer-v22.is-visible .footer-bottom-v22{transition-delay:.08s;}

@media (max-width:1100px){
  .footer-main-v22{
    grid-template-columns:minmax(180px,.72fr) minmax(280px,1.2fr) minmax(250px,1fr);
    min-height:auto;
    padding-top:34px;
    padding-bottom:28px;
  }
  .footer-action-v22{grid-column:3;}
  .footer-nav-v22{grid-column:1 / 3;grid-row:2;max-width:520px;margin-top:-6px;}
  .footer-action-v22{grid-row:2;align-self:center;}
}

@media (max-width:820px){
  .footer-main-v22{
    grid-template-columns:1fr 1fr;
    gap:24px 30px;
  }
  .footer-identity-v22{grid-column:1;}
  .footer-statement-v22{grid-column:1 / -1;max-width:620px;font-size:1.55rem;}
  .footer-nav-v22{grid-column:1;grid-row:auto;max-width:none;grid-template-columns:1fr;}
  .footer-action-v22{grid-column:2;grid-row:auto;align-self:start;}
}

@media (max-width:600px){
  .footer-main-v22{
    grid-template-columns:1fr;
    gap:21px;
    padding-top:30px;
    padding-bottom:24px;
  }
  .footer-identity-v22,
  .footer-statement-v22,
  .footer-nav-v22,
  .footer-action-v22{grid-column:1;}
  .footer-statement-v22{font-size:1.42rem;line-height:1.16;}
  .footer-nav-v22{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;}
  .footer-action-v22{min-height:68px;}
  .footer-v22 .footer-bottom-v22{
    min-height:auto;
    flex-direction:column !important;
    align-items:flex-start;
    gap:5px;
    padding:12px 0 15px !important;
  }
}

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