/* SAPAMEFA V9.22 work — Mobile Footer row rhythm and optical arrow alignment.
   Ruleset: SAPAI-GOV-002 v2.0 — canonical component change; all routes, all affected breakpoints. */
.sapamefa-footer,.sapamefa-footer *{box-sizing:border-box;}
.sapamefa-footer{--smf-footer-head-height:var(--smf-space-10);--smf-footer-head-body-gap:var(--smf-space-2);--smf-footer-body-line-box:var(--smf-space-6);background:var(--smf-surface-footer);color:var(--smf-color-on-dark-muted);border-top:var(--smf-border-width-emphasis) solid var(--smf-color-footer-accent);font-family:var(--smf-font-sans);}
.sapamefa-footer a{color:inherit;text-decoration:none;transition:color var(--smf-motion-fast) var(--smf-ease-standard);}
.sapamefa-footer a:hover,.sapamefa-footer a:focus-visible{color:var(--smf-color-footer-accent);}
.sapamefa-footer address{margin:0;font-style:normal;}
.sapamefa-footer__inner{width:min(var(--smf-container-shell),calc(100% - var(--smf-gutter)*2));margin-inline:auto;}
.sapamefa-footer__main{padding-block:var(--smf-space-10) var(--smf-space-8);}
.sapamefa-footer__grid{display:grid;grid-template-columns:minmax(240px,1.15fr) minmax(205px,1fr) minmax(165px,.8fr) minmax(310px,1.35fr);align-items:stretch;}
.sapamefa-footer__column{position:relative;min-width:0;height:100%;display:flex;flex-direction:column;padding-inline:var(--smf-space-7);}
.sapamefa-footer__column:first-child{padding-left:0;}.sapamefa-footer__column:last-child{padding-right:0;}
.sapamefa-footer__column:not(:first-child)::before{content:"";position:absolute;left:0;top:var(--smf-space-4);bottom:var(--smf-space-1);width:var(--smf-border-width-hairline);background:var(--smf-color-on-dark-line);}
.sapamefa-footer__head{min-height:var(--smf-footer-head-height);display:flex;align-items:center;margin:0 0 var(--smf-footer-head-body-gap);}
.sapamefa-footer__logo-link{display:inline-flex;align-items:center;}
.sapamefa-footer__logo{display:block;width:min(230px,100%);height:auto;max-height:48px;object-fit:contain;object-position:left center;}
.sapamefa-footer__title{margin:0;color:var(--smf-color-white);font-size:var(--smf-font-size-sm);line-height:var(--smf-line-heading);font-weight:var(--smf-font-weight-bold);letter-spacing:var(--smf-tracking-normal);white-space:normal;}
.sapamefa-footer__body{min-width:0;flex:1;}
.sapamefa-footer__description,.sapamefa-footer__link,.sapamefa-footer__contact li,.sapamefa-footer__legal-name{font-size:var(--smf-font-size-xs);line-height:var(--smf-line-body);}
.sapamefa-footer__description{margin:0;max-width:31rem;color:var(--smf-color-on-dark-muted);}
.sapamefa-footer__links,.sapamefa-footer__contact{list-style:none;margin:0;padding:0;}
.sapamefa-footer__links{display:grid;gap:0;}
.sapamefa-footer__links li{min-width:0;margin:0;padding:0;}
.sapamefa-footer__link{position:relative;min-width:0;display:block;min-height:var(--smf-footer-body-line-box);padding:0 0 0 18px;color:var(--smf-color-on-dark-muted);white-space:normal;overflow-wrap:anywhere;}
.sapamefa-footer__link::before{content:"›";position:absolute;left:0;top:0;width:12px;height:var(--smf-footer-body-line-box);display:flex;align-items:center;justify-content:center;color:var(--smf-color-footer-accent);font-size:var(--smf-font-size-xl);line-height:1;font-weight:var(--smf-font-weight-bold);}
.sapamefa-footer__contact{display:grid;gap:0;}
.sapamefa-footer__contact li{min-width:0;display:grid;grid-template-columns:18px minmax(0,1fr);gap:var(--smf-space-2);align-items:start;margin:0;padding:0;color:var(--smf-color-on-dark-muted);}
.sapamefa-footer__contact a{min-width:0;display:inline;overflow-wrap:anywhere;}
.sapamefa-footer__contact-icon{padding-top:.15em;color:var(--smf-color-footer-accent);text-align:center;line-height:var(--smf-line-body);}
.sapamefa-footer__address{min-width:0;}.sapamefa-footer__address-line{display:block;overflow-wrap:anywhere;}
.sapamefa-footer__legal-name{color:var(--smf-color-white);font-weight:var(--smf-font-weight-bold);}
.sapamefa-footer__legal{border-top:var(--smf-border-width-hairline) solid var(--smf-color-on-dark-line);padding:var(--smf-space-4) 0 var(--smf-space-5);}
.sapamefa-footer__legal-row{display:flex;align-items:center;justify-content:space-between;gap:var(--smf-space-6);color:var(--smf-color-white-40);font-size:var(--smf-font-size-2xs);font-weight:var(--smf-font-weight-medium);line-height:var(--smf-line-title);font-variant-numeric:tabular-nums lining-nums;}
.sapamefa-footer__legal-links{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:var(--smf-space-5);}
.sapamefa-footer__legal-links a{display:inline-flex;align-items:center;min-height:32px;white-space:nowrap;}
/* Component-only breakpoint: footer switches to two columns when the four-column grid loses comfortable line length. */
@media(max-width:1119px){
  .sapamefa-footer__inner{width:min(var(--smf-container-content),calc(100% - var(--smf-gutter)*2));}
  .sapamefa-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:auto;align-items:stretch;row-gap:0;}
  .sapamefa-footer__column{padding:var(--smf-space-7);}
  .sapamefa-footer__column:nth-child(odd){padding-left:0;}.sapamefa-footer__column:nth-child(even){padding-right:0;}
  .sapamefa-footer__column::before{display:none;}
  .sapamefa-footer__column:nth-child(even)::before{display:block;top:var(--smf-space-7);bottom:var(--smf-space-7);}
  .sapamefa-footer__column:nth-child(n+3){border-top:var(--smf-border-width-hairline) solid var(--smf-color-on-dark-line);}
  .sapamefa-footer__head{min-height:var(--smf-footer-head-height);}
}
/* Component-only breakpoint: footer stacks once the two-column contact/link rhythm becomes too narrow. */
@media(max-width:699px){
  .sapamefa-footer__inner{width:min(var(--smf-container-content),calc(100% - var(--smf-gutter)*2));}
  .sapamefa-footer__main{padding-block:var(--smf-space-8) var(--smf-space-6);}
  .sapamefa-footer__grid{grid-template-columns:minmax(0,1fr);}
  .sapamefa-footer__column,.sapamefa-footer__column:nth-child(odd),.sapamefa-footer__column:nth-child(even),.sapamefa-footer__column:nth-child(n+3){padding:0 0 var(--smf-space-6);border-top:0;}
  .sapamefa-footer__column+.sapamefa-footer__column{padding-top:var(--smf-space-6);border-top:var(--smf-border-width-hairline) solid var(--smf-color-on-dark-line);}
  .sapamefa-footer__column::before,.sapamefa-footer__column:nth-child(even)::before{display:none;}
  .sapamefa-footer__head{min-height:0;margin-bottom:var(--smf-footer-head-body-gap);}
  .sapamefa-footer__logo{width:min(220px,72vw);}
  .sapamefa-footer__links{display:grid;gap:0;}
  .sapamefa-footer__links li{display:block;}
  .sapamefa-footer__link{
    min-height:var(--smf-touch-target);
    display:grid;
    grid-template-columns:10px minmax(0,1fr);
    column-gap:10px;
    align-items:start;
    align-content:start;
    padding:10px 0;
    line-height:var(--smf-line-body);
  }
  .sapamefa-footer__link::before{
    content:"";
    position:static;
    width:8px;
    height:8px;
    display:block;
    align-self:start;
    justify-self:start;
    margin-top:6px;
    border:solid currentColor;
    border-width:0 2px 2px 0;
    transform:rotate(-45deg);
  }
  .sapamefa-footer__contact{gap:var(--smf-space-1);}
  .sapamefa-footer__contact li{min-height:var(--smf-touch-target);align-items:center;padding-block:6px;}
  .sapamefa-footer__contact-icon{padding-top:0;}
  .sapamefa-footer__legal-row{align-items:flex-start;flex-direction:column;gap:var(--smf-space-3);}
  .sapamefa-footer__legal-links{justify-content:flex-start;gap:var(--smf-space-4);}
  .sapamefa-footer__legal-links a{min-height:var(--smf-touch-target);}
}


/* SAPAMEFA_V3.42 — Footer contact rhythm: six contact rows align with six quick-link rows. */
@media (min-width: 700px) {
  .sapamefa-footer__links li,
  .sapamefa-footer__contact li {
    min-height: var(--smf-footer-body-line-box);
  }
  .sapamefa-footer__contact li {
    align-items: start;
    line-height: var(--smf-line-body);
  }
  .sapamefa-footer__contact-icon {
    min-height: var(--smf-footer-body-line-box);
    display: flex;
    align-items: flex-start;
    justify-content: center;
  }
  .sapamefa-footer__contact-icon--placeholder {
    visibility: hidden;
  }
}
.sapamefa-footer__legal-name,
.sapamefa-footer__legal-name > span:last-child {
  color: var(--smf-color-white) !important;
}
