.of-footer {
   --of-footer-text: var(--text-primary, #191f28);
   --of-footer-muted: var(--text-secondary, #4e5968);
   --of-footer-soft: var(--text-muted, #8b95a1);
   --of-footer-line: rgba(25, 31, 40, 0.08);
   --of-footer-bg: #fafbfc;
   margin-top: 48px;
   border-top: 1px solid var(--of-footer-line);
   background: var(--of-footer-bg);
   color: var(--of-footer-text);
}

.of-footer__container {
   max-width: 1180px;
   margin: 0 auto;
   padding: 24px 16px 28px;
}

.of-footer__top {
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 16px 24px;
   padding-bottom: 14px;
   border-bottom: 1px solid var(--of-footer-line);
}

.of-footer__brand {
   color: var(--of-footer-text);
   font-size: 1rem;
   font-weight: 700;
   letter-spacing: -0.02em;
   text-decoration: none;
   white-space: nowrap;
}

.of-footer__brand:hover {
   color: var(--of-footer-text);
}

.of-footer__nav {
   display: flex;
   flex-wrap: wrap;
   justify-content: flex-end;
   gap: 8px 18px;
}

.of-footer__nav-link {
   color: var(--of-footer-muted);
   font-size: 0.94rem;
   font-weight: 500;
   letter-spacing: -0.02em;
   text-decoration: none;
}

.of-footer__nav-link:hover {
   color: var(--secondary-color, #3182f6);
}

.of-footer__info {
   display: grid;
   gap: 8px;
   padding-top: 14px;
}

.of-footer__info-row {
   display: flex;
   flex-wrap: wrap;
   gap: 6px 16px;
   margin: 0;
   color: var(--of-footer-muted);
   font-size: 0.9rem;
   line-height: 1.7;
   letter-spacing: -0.02em;
}

.of-footer__info-row strong {
   color: var(--of-footer-text);
   font-weight: 600;
}

.of-footer__info-link {
   color: inherit;
   text-decoration: none;
}

.of-footer__info-link:hover {
   color: var(--secondary-color, #3182f6);
}

.of-footer__biz-link {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   margin-left: 10px;
   padding: 3px 10px;
   border: 1px solid rgba(25, 31, 40, 0.12);
   border-radius: 999px;
   background: #fff;
   color: var(--of-footer-muted);
   font-size: 0.8rem;
   font-weight: 600;
   line-height: 1.4;
   text-decoration: none;
   vertical-align: middle;
   transition:
      border-color 0.2s ease,
      color 0.2s ease,
      background-color 0.2s ease;
}

.of-footer__biz-link:hover {
   border-color: rgba(49, 130, 246, 0.26);
   background: rgba(49, 130, 246, 0.04);
   color: var(--secondary-color, #3182f6);
}

.of-footer__bottom {
   margin-top: 14px;
   padding-top: 14px;
   border-top: 1px solid var(--of-footer-line);
}

.of-footer__copyright {
   margin: 0;
   color: var(--of-footer-soft);
   font-size: 0.85rem;
   line-height: 1.6;
   letter-spacing: -0.02em;
}

@media (max-width: 767.98px) {
   .of-footer {
      margin-top: 40px;
   }

   .of-footer__container {
      padding: 20px 16px 24px;
   }

   .of-footer__top {
      flex-direction: column;
      align-items: flex-start;
   }

   .of-footer__nav {
      justify-content: flex-start;
   }

   .of-footer__info-row {
      flex-direction: column;
      gap: 4px;
   }

   .of-footer__biz-link {
      margin-left: 8px;
   }
}
