/* Movement uses paint/compositing only: no changing margins, dimensions or font metrics. */
:root{--jj-feedback-green:#285d40;--jj-feedback-yellow:#f8d000}
body .jj-feedback-target{transition:translate .12s ease,scale .12s ease,box-shadow .12s ease,background-color .15s ease,color .15s ease,border-color .15s ease}
body :is(button,a[href],[role="button"],summary,input[type="submit"],input[type="button"]):not(:where(#jj-store-locator *,.leaflet-container *,.gm-style *,.mapboxgl-map *,.maplibregl-map *)){-webkit-tap-highlight-color:transparent;touch-action:manipulation}
body :is(button,.button,.jjh-btn,.jjh-text-link,.cw-text-button,.cw-action,.cw-help-button,.cw-install-button,.sqs-block-button-element,.sqs-add-to-cart-button,[role="button"],summary):not(:where(#jj-store-locator *,.leaflet-container *,.gm-style *,.mapboxgl-map *,.maplibregl-map *)){transition:translate .12s ease,scale .12s ease,box-shadow .12s ease,background-color .15s ease,color .15s ease,border-color .15s ease;translate:0 0}
body :is(button,a[href],[role="button"],summary):not(:where(#jj-store-locator *,.leaflet-container *,.gm-style *,.mapboxgl-map *,.maplibregl-map *)):focus-visible{outline:3px solid #bc8d10!important;outline-offset:4px}
body a.jj-feedback-target:not(:where(#jj-store-locator *,.leaflet-container *,.gm-style *,.mapboxgl-map *,.maplibregl-map *)):is(:active,.jj-is-pressed):not([aria-disabled="true"]){transform:none!important;translate:0 2px!important;scale:.985;filter:brightness(.96)}
body .jj-is-busy{cursor:progress!important}
body jj-busy{position:absolute;right:8px;top:8px;width:12px;height:12px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;pointer-events:none;animation:jj-feedback-spin .7s linear infinite}
@keyframes jj-feedback-spin{to{rotate:360deg}}
body jj-flare{position:absolute;inset:0;display:block;pointer-events:none;opacity:0;color:var(--jj-feedback-yellow);transition:opacity .12s;overflow:visible;z-index:1}
body jj-flare i{position:absolute;display:block;top:calc(50% - 2px);width:9px;height:4px;border-radius:9px;background:currentColor;transform-origin:center}
body jj-flare i:nth-child(-n+3){left:calc(-1 * var(--jj-flare-outset,8px))}
body jj-flare i:nth-child(n+4){right:calc(-1 * var(--jj-flare-outset,8px))}
body jj-flare i:nth-child(1){translate:0 -9px;rotate:35deg}body jj-flare i:nth-child(3){translate:0 9px;rotate:-35deg}
body jj-flare i:nth-child(4){translate:0 -9px;rotate:-35deg}body jj-flare i:nth-child(6){translate:0 9px;rotate:35deg}
body .jj-was-clicked>jj-flare{opacity:1}
body :is(.cw-install-button,.our-website-button,.cw-menu-button):not(:where(#jj-store-locator *,.leaflet-container *,.gm-style *,.mapboxgl-map *,.maplibregl-map *))>jj-flare{color:var(--jj-feedback-green)}
body .jj-feedback-compact>jj-flare,body :is(.header-title-logo,.brand,.product-gallery):not(:where(#jj-store-locator *,.leaflet-container *,.gm-style *,.mapboxgl-map *,.maplibregl-map *)) jj-flare{display:none}
@media(hover:hover) and (pointer:fine){
 body :is(button,.button,.jjh-btn,.jjh-text-link,.cw-text-button,.cw-action,.cw-help-button,.cw-install-button,.sqs-block-button-element,.sqs-add-to-cart-button,[role="button"],summary):not(:where(#jj-store-locator *,.leaflet-container *,.gm-style *,.mapboxgl-map *,.maplibregl-map *)):hover:not(:disabled):not([aria-disabled="true"]){transform:none!important;translate:0 -2px;filter:brightness(1.04)}
 body a.jj-feedback-target:not(:where(#jj-store-locator *,.leaflet-container *,.gm-style *,.mapboxgl-map *,.maplibregl-map *)):hover:not([aria-disabled="true"]){transform:none!important;translate:0 -2px;filter:brightness(1.04)}
}
/* The website header stays text navigation. Click splashes never remain selected. */
#header .header-display-desktop .header-nav-list{gap:24px!important;flex-wrap:nowrap!important;width:100%;max-width:none;margin-inline:0;justify-content:flex-start}
#header .header-display-desktop .header-nav{padding-left:32px!important;min-width:0;flex:1}
@media(min-width:1201px) and (max-width:1440px){#header .header-announcement-bar-wrapper{padding-left:20px!important;padding-right:20px!important}#header .header-display-desktop .header-actions{margin-left:16px!important}#header .jj-header-utility{gap:20px}}
#header :is(.header-nav-item>a,.header-menu-nav-item a,.jj-wholesale-login,.jj-header-help summary){translate:0 0!important;scale:1!important}
#header a.jj-was-clicked:not(:focus-visible){outline:none!important}
#header .header-menu-nav-item a{box-sizing:border-box;display:flex!important;align-items:center;justify-content:center;min-height:48px;padding:8px 12px!important;margin:3px 18px!important;border:0!important;border-radius:0!important;background:transparent!important;color:#285d40!important;font-size:24px!important;font-weight:700!important;line-height:1.35!important;box-shadow:none!important}
#header .header-title-logo img,.sitebar .brand img{transition:rotate .2s ease-in-out,scale .15s ease;rotate:0deg;transform-origin:center}
@media(hover:hover) and (pointer:fine){#header .header-title-logo a:hover img,.sitebar .brand:hover img{rotate:6deg}}
#header .header-title-logo a:active img,.sitebar .brand:active img{rotate:3deg;scale:.97}
/* Text actions in page content remain clear, usable buttons. */
#page :is(.sqs-block-html,.sqs-block-code) a[href]:not(:has(img,svg)):not(.jjh-btn):not([href="#page"]),.text-link,a.contact,.inventory-brand{position:relative;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:44px;padding:9px 16px;border:1.5px solid #285d40;border-radius:999px;background:#fffdf4;color:#285d40;box-shadow:0 2px 0 #cbd3bd;font-weight:700;line-height:1.4;text-align:center;text-decoration:none}

#jj-box-navigation a,.product-breadcrumb a,.product-breadcrumb-link{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 16px;border:1.5px solid #285d40;border-radius:999px;background:#fffdf4;color:#285d40;font-weight:700;line-height:1.4;text-decoration:none;box-shadow:0 2px 0 #cbd3bd}
#jj-box-navigation{box-sizing:border-box;gap:14px;padding-inline:24px}
#jj-home .jjh-text-link,#jj-home p a[href^="mailto:"],#jj-faq .jjf-answer a[href^="mailto:"],.product-nav .product-nav-breadcrumb-link,#jj-store-locator a[href^="https://www.google.com/maps/dir/"],#jj-store-locator a[href^="tel:"]{position:relative;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:44px;padding:9px 16px;border:1.5px solid #285d40;border-radius:999px;background:#fffdf4;color:#285d40;font-weight:700;line-height:1.4;text-align:center;text-decoration:none;box-shadow:0 2px 0 #cbd3bd}
#jj-store-locator a[href^="https://www.google.com/maps/dir/"],#jj-store-locator a[href^="tel:"]{margin:4px 6px 4px 0}
#jj-store-locator .jj-store-name{border:1px solid #c6cfb9;border-radius:12px;background:#f3f5eb;padding:8px 12px;min-height:44px;text-align:left}
#page .jjh-text-link{margin-block:4px}
body :is(button,a[href],[role="button"],summary):not(:where(#jj-store-locator *,.leaflet-container *,.gm-style *,.mapboxgl-map *,.maplibregl-map *)):disabled>jj-flare,body [aria-disabled="true"]>jj-flare{opacity:0!important}
@media(prefers-reduced-motion:reduce){#header .header-title-logo img,.sitebar .brand img{rotate:0deg!important;scale:1!important;transition:none!important}body :is(button,a[href],[role="button"],summary):not(:where(#jj-store-locator *,.leaflet-container *,.gm-style *,.mapboxgl-map *,.maplibregl-map *)):is(:hover,:active,.jj-is-pressed,.jj-was-clicked){translate:0 0!important;scale:1!important;transform:none!important;}body :is(button,a[href],[role="button"],summary):not(:where(#jj-store-locator *,.leaflet-container *,.gm-style *,.mapboxgl-map *,.maplibregl-map *)){transition:none!important;translate:0 0!important;scale:1!important}body jj-flare{transition:none}body jj-busy{animation:none;border-style:dotted}}

/* Lower banners mirror the text navigation in the header. */
#jj-footer-navigation a,footer h2 a[href^="mailto:"],.portal-footer .portal-policy-links a{position:relative;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:44px;width:auto!important;padding:10px 4px!important;margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;background-image:none!important;color:#285d40!important;box-shadow:none!important;text-decoration:none;font-weight:650;line-height:1.4;translate:0 0!important;scale:1!important;transform:none!important}
#jj-footer-navigation a{font-size:16px;margin-right:20px!important;justify-content:flex-start}
.portal-footer .portal-policy-links{display:flex!important;flex-wrap:wrap;justify-content:center;align-items:center;gap:4px 28px!important}
.portal-footer .portal-policy-links a{font-size:16px;max-width:none!important;flex:none}
:is(#jj-footer-navigation a,footer h2 a[href^="mailto:"],.portal-footer .portal-policy-links a).jj-was-clicked:not(:focus-visible){outline:none!important}
footer img[alt*="J&J"]{transition:rotate .2s ease-in-out;rotate:0deg;transform-origin:center}
@media(hover:hover) and (pointer:fine){footer img[alt*="J&J"]:hover{rotate:6deg}}
@media(max-width:600px){.portal-footer .portal-policy-links{gap:4px 20px!important}.portal-footer .portal-policy-links a{font-size:15px}}
@media(prefers-reduced-motion:reduce){footer img[alt*="J&J"]{rotate:0deg!important;transition:none!important}}

/* Pointer activation uses the fading splash; keyboard focus remains visible. */
body :is(button,a[href],[role="button"],summary):not(:where(#jj-store-locator *,.leaflet-container *,.gm-style *,.mapboxgl-map *,.maplibregl-map *)):focus:not(:focus-visible){outline:none!important}
#header a.jj-wholesale-login:hover,#header :is(.header-nav-item,.header-menu-nav-item) a:is(:hover,:active,[aria-current="page"]){text-decoration:none!important;text-shadow:none!important;background-image:none!important}
:is(#jj-footer-navigation a,footer h2 a[href^="mailto:"],.portal-footer .portal-policy-links a):is(:hover,:active,.jj-is-pressed,.jj-was-clicked){text-decoration:none!important;text-shadow:none!important}
/* The portal footer blends into the page; the website keeps its branded footer. */
.portal-footer{background:transparent;border-top:2px solid #f8d000;color:#285d40;padding:16px 24px calc(20px + env(safe-area-inset-bottom,0px));margin-top:24px}
#footer-sections a,#footer-sections #jj-footer-navigation a,#footer-sections h2 a[href^="mailto:"]{color:#f8d000!important}
.portal-footer .portal-policy-links a{font-size:18px;font-weight:700;color:#285d40!important}
.portal-footer .portal-policy-links a>jj-flare{color:#285d40}
#footer-sections a:is(:hover,:active,.jj-was-clicked){text-decoration:none!important;text-shadow:none!important}
#jj-footer-navigation h3{color:#fffaf0}
.button.outline>jj-flare,.cw-text-button>jj-flare,#header a>jj-flare,.cw-action:not([aria-pressed="true"])>jj-flare{color:#285d40}
#footer-sections a>jj-flare{color:#f8d000}
@media(max-width:760px){.portal-footer{padding:16px 16px calc(20px + env(safe-area-inset-bottom,0px))}.portal-footer .portal-policy-links a{font-size:16px}}
/* Deliberate phone footer layouts instead of incidental link wrapping. */
@media(max-width:760px){
 .portal-footer .portal-policy-links{display:grid!important;grid-template-columns:minmax(0,1fr);gap:0!important;max-width:360px}
 .portal-footer .portal-policy-links a{width:auto!important;min-width:168px;min-height:48px;justify-self:center;justify-content:center}
 #footer-sections #jj-footer-navigation .jj-footer-links{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:repeat(4,auto)!important;grid-auto-flow:column!important;gap:0 16px!important}
 #footer-sections #jj-footer-navigation a{margin:0!important;min-height:48px;font-size:16px;justify-content:flex-start;line-height:1.4}
 #footer-sections h2 a[href^="mailto:"]{font-size:clamp(20px,6vw,26px);max-width:100%;overflow-wrap:anywhere}
}

/* Use the actual image for logo motion, including Squarespace's overlaid footer link. */
#header .jj-logo-home-link,#footer-sections .jj-logo-motion-target,.sitebar .brand{transform:none!important;translate:0 0!important;scale:1!important}
#header .header-title-logo img,#footer-sections .jj-logo-motion-target img,.sitebar .brand img{transform-origin:center;rotate:0deg;scale:1;transition:rotate .18s ease,scale .18s ease}
@media(hover:hover) and (pointer:fine){
 #header .header-title-logo a:hover img,#footer-sections .jj-logo-motion-target:hover img,.sitebar .brand:hover img{rotate:-7deg!important;scale:1.025}
}
#header .header-title-logo a.jj-is-pressed img,#footer-sections .jj-logo-motion-target:has(.jj-is-pressed) img,.sitebar .brand.jj-is-pressed img{rotate:-9deg!important;scale:.97!important;transition:rotate .12s ease,scale .12s ease!important}
#header .header-title-logo a.jj-was-clicked:not(.jj-is-pressed) img,#footer-sections .jj-logo-motion-target:has(.jj-was-clicked):not(:has(.jj-is-pressed)) img,.sitebar .brand.jj-was-clicked:not(.jj-is-pressed) img{rotate:5deg!important;scale:1!important;transition:rotate .18s ease,scale .18s ease!important}
.jj-logo-home-hitarea>jj-flare{display:none!important}
/* Footer and header marks use the same responsive dimensions. */
#footer-sections .sqs-block-image:has(img[alt="J&J Tortilla Co. circle logo"]){width:160px!important;height:160px!important;min-height:160px!important;max-width:none!important}
#footer-sections .sqs-block-image:has(img[alt="J&J Tortilla Co. circle logo"]) :is(.sqs-block-content,.fluid-image-component-root,.fluid-image-animation-wrapper,.fluid-image-container,.js-content-mode-element-wrapper){width:160px!important;height:160px!important;max-width:none!important}
#footer-sections img[alt="J&J Tortilla Co. circle logo"]{width:160px!important;height:160px!important;max-width:none!important;object-fit:contain!important}
@media(max-width:1200px){
 #footer-sections .sqs-block-image:has(img[alt="J&J Tortilla Co. circle logo"]){width:104px!important;height:104px!important;min-height:104px!important}
 #footer-sections .sqs-block-image:has(img[alt="J&J Tortilla Co. circle logo"]) :is(.sqs-block-content,.fluid-image-component-root,.fluid-image-animation-wrapper,.fluid-image-container,.js-content-mode-element-wrapper),#footer-sections img[alt="J&J Tortilla Co. circle logo"]{width:104px!important;height:104px!important}
}
@media(prefers-reduced-motion:reduce){
 #header .header-title-logo a:not(.jj-is-pressed):not(.jj-was-clicked) img,#footer-sections .jj-logo-motion-target:not(:has(.jj-is-pressed,.jj-was-clicked)) img,.sitebar .brand:not(.jj-is-pressed):not(.jj-was-clicked) img{rotate:0deg!important;scale:1!important;transition:none!important}
}
@media(min-width:1201px){#footer-sections #jj-footer-navigation{box-sizing:border-box;margin-left:44px!important;max-width:calc(100% - 44px)}}

/* Map libraries retain ownership of marker positioning and map-control feedback. */
:is(.leaflet-container,.gm-style,.mapboxgl-map,.maplibregl-map) :is(jj-flare,jj-busy){display:none!important}
/* Keep filter chips from pushing the map down after Search this area. */
body #jj-store-locator .jj-context{display:flex!important;align-items:center;flex-wrap:nowrap;box-sizing:border-box;height:44px;min-height:44px;gap:8px}
body #jj-store-locator .jj-context[hidden]::before{content:'Choose a store or tap a pin for details.';color:#57705b;font:500 14px/1.4 'Work Sans',Arial,sans-serif}
body #jj-store-locator .jj-context button{min-width:0;max-width:100%;flex:0 1 auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body #jj-store-locator .jj-context button svg{flex-shrink:0}
