/* Printo_Landing sitewide footer. Uses the theme's own Roboto so it sits with the header. */
.lpf { position: relative; padding: 56px 40px 26px; background: #f6f7f9; border-top: 1px solid #e6e8eb; color: #1d2127; font-family: Roboto, system-ui, -apple-system, "Segoe UI", sans-serif; -webkit-font-smoothing: antialiased; }
.lpf *, .lpf *::before, .lpf *::after { box-sizing: border-box; }
.lpf h2, .lpf h3, .lpf p, .lpf ul, .lpf li { margin: 0; padding: 0; list-style: none; }
.lpf a { color: inherit; text-decoration: none; transition: color .2s ease, background .2s ease, border-color .2s ease; }
.lpf a:focus-visible { outline: 2px solid #0a7f90; outline-offset: 3px; border-radius: 4px; }
.lpf .lp-ico { width: 18px; height: 18px; flex: none; }
.lpf .lp-sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

.lpf__inner { display: grid; grid-template-columns: minmax(260px, 1.1fr) 2fr; gap: 56px; max-width: 1170px; margin: 0 auto; }
.lpf__logo { display: inline-block; }
.lpf__logo img { display: block; width: 210px; height: auto; mix-blend-mode: multiply; }
.lpf__tm { margin-bottom: 4px !important; color: #4b5260; }
.lpf__line { margin: 10px 0 22px !important; max-width: 38ch; font-size: 14px; line-height: 1.6; color: #5b6270; }
.lpf__contact { display: flex; flex-direction: column; gap: 10px; }
.lpf__contact a { display: inline-flex; align-items: center; gap: 10px; font-size: 14px; color: #2a2f36; }
.lpf__contact a:hover { color: #0a7f90; }
.lpf__wa { padding: 9px 16px 9px 12px; border-radius: 999px; background: #fff; box-shadow: inset 0 0 0 1px #dde1e6; }
.lpf__wa .lp-ico { color: #1f9d55; width: 20px; height: 20px; }
.lpf__wa b { font-weight: 600; }
.lpf__wa:hover { box-shadow: inset 0 0 0 1px #1f9d55; }
.lpf__social { display: flex; gap: 8px; margin-top: 22px !important; }
.lpf__social a { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: #fff; color: #2a2f36; box-shadow: inset 0 0 0 1px #dde1e6; }
.lpf__social a:hover { background: #15181d; color: #fff; box-shadow: none; }

.lpf__nav { display: grid; grid-template-columns: 1.35fr 1fr 1fr 1fr; gap: 28px; }
.lpf__col h3 { margin-bottom: 14px !important; font-size: 12px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; color: #5b6270; }
.lpf__col li a { display: inline-block; padding: 5px 0; font-size: 14px; line-height: 1.45; color: #2a2f36; }
.lpf__col li a:hover { color: #0a7f90; text-decoration: underline; text-underline-offset: 3px; }

.lpf__news { max-width: 1170px; margin: 36px auto 0; }

.lpf__base { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 18px 32px; max-width: 1170px; margin: 40px auto 0; padding-top: 22px; border-top: 1px solid #e3e6ea; font-size: 12.5px; line-height: 1.6; color: #6b7280; }
.lpf__legal { flex: 1 1 420px; }
.lpf__copy, .lpf__copy small { font-size: 12.5px; color: #6b7280; }
.lpf__copy hr, .lpf__copy br { display: none; }
.lpf__copy .canva-disclaimer { margin-bottom: 4px; }
.lpf__legal p a { margin-left: 10px; text-decoration: underline; text-underline-offset: 3px; }
.lpf__legal p a:hover { color: #15181d; }
.lpf__pay { display: flex; align-items: center; gap: 12px; }
.lpf__pay img { height: 28px; width: auto; }
.lpf__store .store-switcher { margin: 0; padding: 0; float: none; display: flex; align-items: center; gap: 8px; }
.lpf__store label { margin: 0; font-size: 12px; text-transform: uppercase; letter-spacing: .06em; }
.lpf__store select { height: 34px; padding: 0 28px 0 10px; border-radius: 8px; border: 1px solid #d5d9de; background-color: #fff; color: #1d2127; font-size: 13px; }

@media (max-width: 1000px) {
  .lpf__inner { grid-template-columns: 1fr; gap: 36px; }
  .lpf__nav { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 767px) {
  .lpf { padding: 40px 18px 96px; }
  .lpf__nav { gap: 24px 16px; }
  .lpf__base { flex-direction: column; align-items: flex-start; }
}

/* Pinch-zoom is allowed sitewide; inputs at 16px stop iOS Safari from zooming in on focus. */
@media (max-width: 767px) {
  input[type="text"], input[type="email"], input[type="tel"], input[type="password"],
  input[type="number"], input[type="search"], input:not([type]), select, textarea { font-size: 16px !important; }
}
