/* Compact footer. Its editable headings and WordPress menu links stay intact. */
@media (max-width: 767px) {
  .sino-block-theme .footer-grid.sino-footer-compact {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    padding-block: 24px 12px;
  }

  .sino-block-theme .footer-brand .brand-with-logo,
  .sino-block-theme .footer-brand .brand-logo {
    width: 160px;
    max-width: 100%;
  }

  .sino-block-theme .footer-brand p {
    margin-top: 12px;
    font-size: 14px;
    line-height: 1.6;
  }

  .sino-block-theme .footer-brand p br { display: none; }

  .sino-block-theme .sino-footer-social {
    gap: 6px;
    margin-top: 12px;
    max-width: none;
    flex-wrap: wrap;
  }

  .sino-block-theme .sino-footer-social .sino-social-link {
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
  }

  .sino-block-theme .sino-footer-social .sino-social-link > svg {
    width: 19px;
    height: 19px;
  }

  .sino-block-theme .footer-brand .footer-contact {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    margin-top: 8px;
    font-size: 14px;
  }

  .sino-block-theme .footer-grid.sino-footer-compact .footer-brand {
    padding-bottom: 12px;
  }

  .sino-block-theme .sino-footer-disclosure {
    border-top: 1px solid var(--agri-line, #deded7);
  }

  .sino-block-theme .sino-footer-disclosure > summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-height: 52px;
    padding-block: 12px;
    cursor: pointer;
    list-style: none;
    color: var(--agri-green, #183d32);
    -webkit-tap-highlight-color: transparent;
  }

  .sino-block-theme .sino-footer-disclosure > summary::-webkit-details-marker { display: none; }

  .sino-block-theme .sino-footer-disclosure > summary::after {
    content: '+';
    flex: 0 0 24px;
    font-size: 22px;
    font-weight: 400;
    line-height: 1;
    text-align: center;
  }

  .sino-block-theme .sino-footer-disclosure[open] > summary::after { content: '−'; }

  .sino-block-theme .sino-footer-disclosure > summary:focus-visible {
    outline: 2px solid var(--agri-green, #183d32);
    outline-offset: 2px;
  }

  .sino-block-theme .sino-footer-disclosure > summary > h2 {
    margin: 0;
    min-width: 0;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.5;
    letter-spacing: .06em;
    overflow-wrap: anywhere;
  }

  .sino-block-theme .sino-footer-links { padding-bottom: 12px; }
  .sino-block-theme .sino-footer-disclosure:not([open]) > .sino-footer-links { display: none; }

  .sino-block-theme .sino-footer-links > a {
    display: flex;
    align-items: center;
    min-height: 44px;
    margin: 0;
    padding-block: 10px;
    color: #60655f;
    font-size: 14px;
    line-height: 1.5;
    overflow-wrap: anywhere;
  }

  .sino-block-theme .sino-footer-links > a:hover { color: #183d32; }

  .sino-block-theme .footer-bottom {
    gap: 8px;
    padding-top: 16px;
    font-size: 12px;
  }

  .sino-block-theme .footer-bottom > div { gap: 8px 16px; }
  .sino-block-theme .footer-bottom .image-disclosure { font-size: 11px; }

  /* Keep the original clearance if the observer is unavailable. */
  html.sino-footer-observer-ready .sino-block-theme .footer-bottom { padding-bottom: 24px; }
  html.sino-mobile-footer-visible .sino-block-theme .sino-contact-dock { visibility: hidden; }
}

/* Desktop keeps its existing columns with less space around the content. */
@media (min-width: 768px) {
  .sino-block-theme .footer-grid { padding-block: 28px 20px; }

  .sino-block-theme .footer-brand .brand-with-logo,
  .sino-block-theme .footer-brand .brand-logo {
    width: 220px;
    max-width: 100%;
  }

  .sino-block-theme .footer-brand p {
    margin-top: 12px;
    line-height: 1.6;
  }

  .sino-block-theme .sino-footer-social {
    gap: 6px;
    margin-top: 12px;
    max-width: none;
  }

  .sino-block-theme .sino-footer-social .sino-social-link {
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
  }

  .sino-block-theme .sino-footer-social .sino-social-link > svg {
    width: 19px;
    height: 19px;
  }

  .sino-block-theme .footer-brand .footer-contact {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    margin-top: 8px;
  }

  .sino-block-theme .footer-bottom { padding-top: 16px; }
}

/* Smaller windows still need the existing clearance for fixed contact controls. */
@media (min-width: 1401px) and (min-height: 721px) {
  .sino-block-theme .footer-bottom { padding-bottom: 16px; }
}

/* Editable business identity and contact details, kept in the existing brand column. */
.site-footer .footer-brand p.sino-footer-details{font-size:13px;line-height:1.65;margin:16px 0 0;overflow-wrap:anywhere}
.site-footer .sino-footer-details strong{font-size:inherit;font-weight:600}
.site-footer .sino-footer-details a{color:var(--agri-green);display:inline-flex;align-items:center;min-height:36px;text-decoration:underline;text-underline-offset:3px}
@media(max-width:767px){.site-footer .sino-footer-details a{min-height:44px}}
