@import url("https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap");

/* Shared by the React layout and generated Stitch pages; scope every rule.
   Values match the homepage footer (public/stitch-hushh-home.html). */
.unified-footer { width:100%; background:#fff; border-top:1px solid #f0e7ee; color:#5f5e62; font:400 16px/1.5 "Plus Jakarta Sans",system-ui,sans-serif; text-align:left; -webkit-font-smoothing:antialiased; }
.unified-footer *, .unified-footer *::before, .unified-footer *::after { box-sizing:border-box; }
/* The app's base layer sets a font on a/p/span/h*; pin the footer's own. */
.unified-footer :where(*) { font-family:"Plus Jakarta Sans",system-ui,sans-serif; text-rendering:auto; }
.unified-footer :where(h2, p, ul, li) { margin:0; padding:0; }
.unified-footer ul { list-style:none; }
.unified-footer a { color:inherit; text-decoration:none; transition:color .15s ease; }
.unified-footer a:hover { color:#1b1b1d; }
.unified-footer a:focus-visible { outline:2px solid #0071e3; outline-offset:2px; border-radius:4px; }

.unified-footer-inner { max-width:1280px; margin:0 auto; padding:64px 24px 48px; display:flex; flex-direction:column; gap:40px; }
.unified-footer-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; font-size:13px; line-height:1.5; }
.unified-footer-col { display:flex; flex-direction:column; gap:12px; }
.unified-footer-heading { font-size:11px; line-height:1.5; font-weight:700; letter-spacing:.05em; text-transform:uppercase; color:inherit; }
.unified-footer-col ul { display:flex; flex-direction:column; gap:8px; }

.unified-footer-note { display:flex; align-items:center; gap:14px; padding:16px; border-radius:16px; background:#fffbf2; border:1px solid #fde8c8; font-size:12px; line-height:1.625; }
.unified-footer-mark { flex-shrink:0; font-size:20px; line-height:28px; -webkit-user-select:none; user-select:none; }
.unified-footer-note strong { font-weight:600; }

.unified-footer-bottom { display:flex; flex-direction:column; align-items:center; gap:8px 16px; padding-top:16px; border-top:1px solid #f0e7ee; font-size:12px; line-height:16px; text-align:center; }
.unified-footer-legal { display:flex; flex-wrap:wrap; justify-content:center; gap:8px 12px; }

@media (min-width:640px) {
  .unified-footer-note { padding:20px; }
}
@media (min-width:768px) {
  .unified-footer-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .unified-footer-bottom { flex-direction:row; flex-wrap:wrap; justify-content:flex-start; text-align:left; }
}
@media (min-width:1024px) {
  .unified-footer-inner { padding-left:48px; padding-right:48px; }
  .unified-footer-grid { grid-template-columns:repeat(6,minmax(0,1fr)); }
}
