/* Pump custom styles.
 * Kept as a real stylesheet because the Shop theme's compiled CSS does not
 * include every Tailwind utility, and layout-level partials (footer) render
 * after @stack('styles') so pushed <style> blocks are dropped.
 */
.pump-footer-inner {
            max-width: 1320px; margin: 0 auto;
            display: flex; align-items: flex-start; justify-content: space-between;
            gap: 72px; padding: 56px 60px;
        }
        .pump-footer-links {
            flex: 1 1 auto; max-width: 720px;
            display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px 32px;
        }
        .pump-footer-col { display: grid; align-content: start; gap: 14px; }
        .pump-footer-col .pump-footer-heading {
            font-size: 12px; font-weight: 700; letter-spacing: .12em;
            text-transform: uppercase; opacity: .55; margin: 0;
        }
        .pump-footer-col ul { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
        .pump-footer-col a { font-size: 14px; opacity: .85; transition: opacity .15s ease; }
        .pump-footer-col a:hover { opacity: 1; text-decoration: underline; }
        .pump-footer-brand { flex: 0 0 360px; display: grid; gap: 18px; justify-items: start; }
        .pump-footer-brand img { width: 132px; height: auto; border-radius: 10px; }
        .pump-footer-brand .pump-newsletter { display: grid; gap: 10px; width: 100%; }

        @media (max-width: 1060px) {
            .pump-footer-inner { flex-direction: column-reverse; gap: 32px; padding: 32px 24px; }
            /* Below this width the accordion takes over. This rule must win over
               .pump-footer-links{display:grid} above, which otherwise cancels the
               theme's own hide utility because this file loads later. */
            .pump-footer-links { display: none !important; }
            .pump-footer-brand { flex: 1 1 auto; width: 100%; justify-items: center; text-align: center; }
        }
        @media (max-width: 640px) {
            .pump-footer-inner { padding: 24px 16px; }
        }

/* Newsletter input: the Subscribe button is absolutely positioned on top of the
   field, so the input needs enough right padding for the text not to run under
   it. Measured against the rendered button width. */
.pump-newsletter input[type="email"] { padding-right: 175px !important; }
@media (max-width: 1060px) { .pump-newsletter input[type="email"] { padding-right: 170px !important; } }
@media (max-width: 640px)  { .pump-newsletter input[type="email"] { padding-right: 120px !important; } }
