@font-face {
  font-family: Inter;
  src: url("../fonts/InterVariable.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

:root {
  /* Paleta única, compartida con los presets del editor. */
  --jav-primary: var(--wp--preset--color--primary, #006B67);
  --jav-primary-dark: var(--wp--preset--color--primary-dark, #004F4D);
  --jav-primary-light: var(--wp--preset--color--primary-light, #009C91);
  --jav-primary-soft: var(--wp--preset--color--primary-soft, #F3F8F7);
  --jav-background: var(--wp--preset--color--background, #F3F8F7);
  --jav-surface: var(--wp--preset--color--surface, #FFFFFF);
  --jav-surface-low: var(--jav-background);
  --jav-dark: var(--wp--preset--color--dark, #092E2D);
  --jav-header-bg: var(--wp--preset--color--header, #092E2D);
  --jav-footer-bg: var(--wp--preset--color--footer, #092E2D);
  --jav-text: var(--wp--preset--color--text, #263A3A);
  --jav-muted: var(--wp--preset--color--muted, #667777);
  --jav-border: var(--wp--preset--color--border, #D7E5E3);
  --jav-border-dark: #293243;
  --jav-on-dark: #fff;
  --jav-muted-dark: #aeb9cb;
  --jav-error: #ba1a1a;
  --jav-success: #15803d;
  --jav-container: 80rem;
  --jav-content-width: 50rem;
  --jav-gutter: 1.5rem;
  --jav-space-xs: 0.25rem;
  --jav-space-sm: 0.5rem;
  --jav-space-md: 1rem;
  --jav-space-lg: 1.5rem;
  --jav-space-xl: 2.5rem;
  --jav-space-section: 4rem;
  --jav-radius-sm: 0.125rem;
  --jav-radius: 0.25rem;
  --jav-radius-lg: 0.5rem;
  --jav-radius-pill: 999px;
  --jav-shadow-sm: 0 2px 8px rgb(11 15 23 / 5%);
  --jav-shadow: 0 4px 20px rgb(11 15 23 / 8%);
  --jav-shadow-lg: 0 12px 32px rgb(11 15 23 / 14%);
  --jav-topbar-height: 2.25rem;
  --jav-main-header-height: 5rem;
  --jav-navigation-height: 3rem;
  --jav-header-height: calc(var(--jav-topbar-height) + var(--jav-main-header-height) + var(--jav-navigation-height));
  --jav-admin-offset: 0px;
  --jav-font: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --jav-font-technical: ui-monospace, SFMono-Regular, Consolas, monospace;
  --jav-font-display: 2.5rem;
  --jav-font-headline: 1.75rem;
  --jav-font-body: 0.875rem;
  --jav-font-label: 0.75rem;
  /* Breakpoints documentados: sm 640, md 768, lg 1024, xl 1280 px.
     Las custom properties no se pueden usar en condiciones @media. */
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-padding-top: calc(var(--jav-header-height) + var(--jav-admin-offset) + var(--jav-space-md)); }
body { margin: 0; background: var(--jav-background); color: var(--jav-text); font-family: var(--jav-font); font-size: var(--jav-font-body); line-height: 1.6; }
body.admin-bar { --jav-admin-offset: 32px; }
h1, h2, h3, h4, h5, h6 { margin: 0 0 var(--jav-space-md); font-weight: 600; line-height: 1.25; }
p { margin: 0 0 var(--jav-space-md); }
a { color: var(--jav-primary-dark); text-decoration: none; text-underline-offset: 0.2em; }
a:hover { text-decoration: underline; }
img { max-width: 100%; height: auto; }
svg { flex-shrink: 0; }
button, input, select, textarea { font: inherit; }
button, summary, select { cursor: pointer; }
button, input, select, textarea { border-radius: var(--jav-radius); }
input, select, textarea { max-width: 100%; }
:where(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]), select, textarea) { padding: 0.65rem 0.75rem; border: 1px solid var(--jav-border); background: var(--jav-surface); color: var(--jav-text); }
button { border: 0; }
button:disabled, [aria-disabled="true"] { cursor: default; }
:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible { outline: 3px solid var(--jav-focus, var(--jav-primary-light)); outline-offset: 3px; }
[hidden] { display: none !important; }
.jav-container { width: 100%; max-width: var(--jav-container); margin-inline: auto; padding-inline: var(--jav-gutter); }
.jav-main { min-height: 45vh; }
.jav-content { padding-block: var(--jav-space-section); }
.jav-icon { width: 1.25rem; height: 1.25rem; }
.jav-display { font-size: var(--jav-font-display); font-weight: 700; letter-spacing: -0.035em; line-height: 1.2; }
.jav-headline { font-size: var(--jav-font-headline); letter-spacing: -0.02em; }
.jav-body-large { font-size: 1rem; line-height: 1.65; }
.jav-label { font-size: var(--jav-font-label); font-weight: 500; }
.jav-technical { font-family: var(--jav-font-technical); }
.jav-eyebrow { display: block; margin-bottom: var(--jav-space-sm); color: var(--jav-primary-dark); font-size: 0.6875rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.14em; }
.jav-eyebrow--light { color: var(--jav-primary-soft); }
.jav-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.jav-skip-link { position: fixed; top: var(--jav-space-sm); left: var(--jav-space-sm); z-index: 100001; transform: translateY(-200%); padding: var(--jav-space-md); background: var(--jav-surface); color: var(--jav-text); }
.jav-skip-link:focus { transform: translateY(0); }
.jav-button, .wp-block-button__link { display: inline-flex; align-items: center; justify-content: center; gap: var(--jav-space-sm); min-height: 44px; padding: 0.8rem 1.5rem; border: 1px solid transparent; border-radius: var(--jav-radius); background: var(--jav-primary); color: var(--jav-on-primary); font-weight: 700; line-height: 1.3; transition: background 160ms ease, box-shadow 160ms ease; }
.jav-button:hover, .wp-block-button__link:hover { background: var(--jav-primary-light); color: var(--jav-on-primary-light); text-decoration: none; box-shadow: var(--jav-shadow-sm); }
.jav-button--outline { border-color: var(--jav-primary); background: transparent; color: var(--jav-primary-dark); }
.jav-text-link { display: inline-flex; align-items: center; gap: var(--jav-space-sm); font-weight: 600; }

/* Header global: sticky ocupa su espacio normal y evita offsets arbitrarios. */
.jav-header { position: sticky; top: var(--jav-admin-offset); z-index: 50; box-shadow: var(--jav-shadow); }
.jav-topbar { min-height: var(--jav-topbar-height); background: var(--jav-dark); color: var(--jav-muted-dark); border-bottom: 1px solid var(--jav-border-dark); font-size: var(--jav-font-label); }
.jav-topbar__row, .jav-topbar__group { display: flex; align-items: center; gap: var(--jav-space-lg); }
.jav-topbar__row { min-height: var(--jav-topbar-height); justify-content: space-between; }
.jav-social { display: flex; gap: var(--jav-space-md); }
.jav-topbar a, .jav-header__main a { color: inherit; }
.jav-topbar a:hover { color: var(--jav-primary-light); }
.jav-contact-item { display: inline-flex; align-items: center; gap: var(--jav-space-sm); overflow-wrap: anywhere; }
.jav-contact-item .jav-icon { width: 1rem; height: 1rem; color: var(--jav-primary); }
.jav-currency { display: inline-flex; gap: 0.35rem; align-items: center; white-space: nowrap; font-size: var(--jav-font-label); }
.jav-topbar .jav-currency strong { color: var(--jav-on-dark); }
.jav-header__main { background: var(--jav-header-bg); color: var(--jav-on-dark); }
.jav-header__row { display: flex; align-items: center; gap: var(--jav-space-lg); min-height: var(--jav-main-header-height); padding-block: var(--jav-space-sm); }
.jav-header__brand { flex: 0 0 auto; max-width: 15rem; }
.jav-brand { display: flex; gap: 0.65rem; align-items: center; font-weight: 700; line-height: 1.2; color: inherit; }
.jav-brand:hover { text-decoration: none; }
.jav-brand__mark { font-size: 1.75rem; letter-spacing: -0.08em; color: var(--jav-primary-light); }
.jav-brand__name { max-width: 10rem; font-size: 0.75rem; letter-spacing: 0.05em; text-transform: uppercase; overflow-wrap: anywhere; }
.custom-logo-link { display: inline-flex; align-items: center; }
.custom-logo { display: block; width: auto; max-height: 4rem; max-width: 15rem; object-fit: contain; }
.jav-header__search { flex: 1 1 22rem; min-width: 0; }
.jav-search { display: flex; min-width: 0; border: 1px solid var(--jav-border); border-radius: var(--jav-radius-lg); overflow: hidden; background: var(--jav-surface); }
.jav-search:focus-within { outline: 2px solid var(--jav-primary); outline-offset: 2px; }
.jav-search input[type="search"] { flex: 1; min-width: 0; width: 100%; min-height: 44px; border: 0; border-radius: 0; font-size: var(--jav-font-label); }
.jav-search select { width: 10.5rem; border: 0; border-right: 1px solid var(--jav-border); border-radius: 0; font-size: var(--jav-font-label); }
.jav-search button { display: flex; align-items: center; justify-content: center; flex: 0 0 48px; border-radius: 0; background: var(--jav-primary); color: var(--jav-on-primary); }
.jav-search button:hover { background: var(--jav-primary-light); }
.jav-search :is(input, select, button):focus-visible { outline-offset: -3px; }
.jav-header__search .jav-search { border-color: var(--jav-border-dark); background: var(--jav-dark); }
.jav-header__search .jav-search :is(input, select) { background: var(--jav-dark); color: var(--jav-on-dark); border-color: var(--jav-border-dark); }
.jav-header__search .jav-search input::placeholder { color: var(--jav-muted-dark); }
.jav-header__actions { display: flex; align-items: center; gap: var(--jav-space-lg); flex-shrink: 0; }
.jav-header-action { display: inline-flex; gap: var(--jav-space-sm); align-items: center; min-height: 44px; font-size: var(--jav-font-label); font-weight: 600; }
.jav-header-action > .jav-icon { width: 1.5rem; height: 1.5rem; color: var(--jav-primary); }
.jav-header-action__text { display: flex; flex-direction: column; }
.jav-header-action__text small { font-size: 0.625rem; font-weight: 500; text-transform: uppercase; color: var(--jav-muted-dark); }
.jav-header-action--quote { padding: 0.65rem 0.8rem; border-radius: var(--jav-radius); background: var(--jav-primary); color: var(--jav-on-primary) !important; }
.jav-header-action--quote > .jav-icon { color: inherit; }
a.jav-header-action:hover { text-decoration: none; color: var(--jav-primary-light); }
a.jav-header-action--quote:hover { background: var(--jav-primary-light); }
.jav-header-action--pending { opacity: 0.75; }
.jav-header-action__mobile-label { display: none; }
.jav-icon-button { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; background: transparent; color: var(--jav-primary-light); }
.jav-menu-toggle { display: none; }
.jav-navigation { background: var(--jav-surface); border-bottom: 1px solid var(--jav-border); }
.jav-navigation__row { display: flex; align-items: center; gap: var(--jav-space-lg); min-height: var(--jav-navigation-height); }
.jav-categories { position: relative; align-self: stretch; flex-shrink: 0; }
summary { list-style: none; }
summary::-webkit-details-marker { display: none; }
.jav-categories > summary { display: flex; align-items: center; gap: var(--jav-space-sm); min-height: var(--jav-navigation-height); padding: 0.75rem 1rem; background: var(--jav-header-bg); color: var(--jav-on-dark); text-transform: uppercase; font-size: var(--jav-font-label); font-weight: 700; }
.jav-categories[open] > summary, .jav-categories > summary:hover { background: var(--jav-primary); color: var(--jav-on-primary); }
.jav-categories__panel { position: absolute; left: 0; top: 100%; width: 19rem; max-height: min(60vh, 28rem); overflow-y: auto; padding: var(--jav-space-sm); background: var(--jav-surface); box-shadow: var(--jav-shadow-lg); border: 1px solid var(--jav-border); }
.jav-primary-nav { flex: 1; min-width: 0; }
.jav-menu { margin: 0; padding: 0; list-style: none; }
.jav-menu li { position: relative; }
.jav-primary-nav > .jav-menu { display: flex; flex-wrap: wrap; column-gap: var(--jav-space-lg); }
.jav-primary-nav > .jav-menu > li > a { display: flex; align-items: center; min-height: var(--jav-navigation-height); font-size: var(--jav-font-label); font-weight: 600; color: var(--jav-muted); border-bottom: 2px solid transparent; }
.jav-primary-nav .current-menu-item > a, .jav-primary-nav .current-menu-ancestor > a, .jav-primary-nav a[aria-current="page"] { border-bottom-color: var(--jav-primary); color: var(--jav-primary-dark); }
.jav-menu .sub-menu { list-style: none; margin: 0; padding: var(--jav-space-sm); }
.jav-primary-nav .sub-menu { position: absolute; width: 15rem; background: var(--jav-surface); border: 1px solid var(--jav-border); box-shadow: var(--jav-shadow); visibility: hidden; opacity: 0; }
.jav-primary-nav li:is(:hover, :focus-within) > .sub-menu { visibility: visible; opacity: 1; }
.jav-primary-nav .sub-menu .sub-menu { left: 100%; top: 0; }
.jav-menu--categories a, .jav-primary-nav .sub-menu a { display: block; padding: 0.65rem 0.75rem; color: var(--jav-text); font-size: var(--jav-font-label); overflow-wrap: anywhere; }
.jav-menu--categories a:hover, .jav-primary-nav .sub-menu a:hover { background: var(--jav-surface-low); color: var(--jav-primary-dark); }
.jav-menu-empty { padding: var(--jav-space-md); margin: 0; color: var(--jav-muted); font-size: var(--jav-font-label); }
.jav-catalog-link { display: flex; align-items: center; gap: var(--jav-space-sm); padding: 0.35rem 0.6rem; border: 1px solid var(--jav-border); border-radius: var(--jav-radius); font-size: var(--jav-font-label); }
.jav-mobile-navigation { display: none; background: var(--jav-surface); border-top: 1px solid var(--jav-border); max-height: 65vh; overflow-y: auto; }
.jav-mobile-navigation .jav-container { padding-block: var(--jav-space-md); }
.jav-menu--mobile a { display: block; min-height: 44px; padding: 0.6rem 0; font-weight: 600; color: var(--jav-text); }
.jav-menu--mobile .sub-menu { padding-left: var(--jav-space-md); border-left: 1px solid var(--jav-border); }
.jav-mobile-categories { margin-block: var(--jav-space-md); border-block: 1px solid var(--jav-border); }
.jav-mobile-categories summary { display: flex; justify-content: space-between; align-items: center; padding-block: var(--jav-space-md); font-weight: 600; }

/* Footer de cuatro columnas; sin garantías ni datos comerciales inventados. */
.jav-footer { padding-top: var(--jav-space-section); background: var(--jav-footer-bg); color: var(--jav-muted-dark); border-top: 4px solid var(--jav-primary); font-size: var(--jav-font-label); }
.jav-footer__grid { display: grid; grid-template-columns: 1.25fr 1fr 1fr 1fr; gap: var(--jav-space-xl); }
.jav-footer__column { min-width: 0; }
.jav-footer__heading { display: flex; align-items: center; gap: var(--jav-space-sm); padding-bottom: var(--jav-space-sm); margin-bottom: var(--jav-space-md); border-bottom: 1px solid var(--jav-border-dark); color: var(--jav-on-dark); font-size: 0.875rem; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; }
.jav-footer__heading::before { content: ""; width: 0.25rem; height: 1rem; background: var(--jav-primary); }
.jav-footer a { color: var(--jav-muted-dark); }
.jav-footer a:hover { color: var(--jav-primary-light); }
.jav-footer .jav-brand { margin-bottom: var(--jav-space-lg); color: var(--jav-on-dark); }
.jav-footer .custom-logo-link { margin-bottom: var(--jav-space-lg); }
.jav-footer .custom-logo { max-height: 3rem; }
.jav-footer__contact { display: flex; flex-direction: column; gap: var(--jav-space-sm); font-style: normal; }
.jav-footer__contact:empty { display: none; }
.jav-footer__contact .jav-contact-item { align-items: flex-start; }
.jav-footer__contact .jav-icon { margin-top: 0.2rem; }
.jav-menu--footer a { display: inline-block; padding-block: 0.4rem; }
.jav-menu--footer .sub-menu { padding-left: var(--jav-space-md); }
.jav-footer .jav-button--outline { color: var(--jav-primary-light); padding: 0.6rem 0.75rem; }
.jav-footer .jav-button--outline:hover { color: var(--jav-dark); }
.jav-footer__column > .jav-currency { display: flex; margin-top: var(--jav-space-lg); }
.jav-footer__bottom { display: flex; align-items: center; justify-content: space-between; gap: var(--jav-space-lg); margin-top: var(--jav-space-xl); padding-block: var(--jav-space-lg); border-top: 1px solid var(--jav-border-dark); }
.jav-footer__bottom > div { display: flex; flex-wrap: wrap; gap: var(--jav-space-md); }

/* Home de revisión: placeholders explícitos, sin catálogo ni slider. */
.jav-foundation-hero { padding-block: 5rem; background: linear-gradient(120deg, var(--jav-dark), var(--jav-header-bg)); color: var(--jav-on-dark); }
.jav-foundation-hero .jav-display { margin-block: var(--jav-space-lg); font-size: clamp(2rem, 4.7vw, 3.75rem); max-width: 50rem; }
.jav-foundation-hero .jav-display span { color: var(--jav-primary-light); }
.jav-foundation-hero p { max-width: 40rem; color: var(--jav-muted-dark); margin-bottom: var(--jav-space-xl); }
.jav-foundation-section { padding-block: var(--jav-space-section); }
.jav-foundation-intro { max-width: 44rem; color: var(--jav-muted); }
.jav-foundation-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--jav-space-lg); margin-top: var(--jav-space-xl); }
.jav-card { padding: var(--jav-space-lg); border: 1px solid var(--jav-border); border-radius: var(--jav-radius-lg); background: var(--jav-surface); box-shadow: var(--jav-shadow-sm); }
.jav-card h3 { font-size: 1rem; }
.jav-card p { color: var(--jav-muted); }
.jav-card__number { display: inline-block; margin-bottom: var(--jav-space-lg); padding: var(--jav-space-sm) 0.8rem; border-radius: var(--jav-radius); background: var(--jav-surface-low); color: var(--jav-primary-dark); font-weight: 600; }
.jav-foundation-note { padding: var(--jav-space-lg); margin-top: var(--jav-space-xl); border-left: 3px solid var(--jav-primary); background: var(--jav-surface-low); }
.jav-foundation-note p { margin: var(--jav-space-sm) 0 0; color: var(--jav-muted); }

/* Contenido nativo y estilos mínimos de integración WooCommerce. */
.jav-page-heading { margin-bottom: var(--jav-space-xl); }
.jav-post-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--jav-space-lg); }
.jav-post-card { display: flex; flex-direction: column; gap: var(--jav-space-md); }
.jav-post-card h2 { font-size: 1.25rem; margin: 0; }
.jav-post-card__image img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.jav-post-card .jav-text-link { margin-top: auto; }
.jav-featured-image { display: block; margin-bottom: var(--jav-space-xl); }
.jav-prose { overflow-wrap: anywhere; }
.jav-prose :is(ul, ol) { padding-left: 1.5rem; }
.jav-prose a { text-decoration: underline; }
.jav-entry-content > * { max-width: var(--jav-content-width); margin-inline: auto; }
.jav-entry-content > .alignwide { max-width: 100%; }
.jav-entry-content > .alignfull { max-width: none; }
.jav-prose :is(table, pre) { max-width: 100%; overflow-x: auto; }
.jav-prose table { display: block; border-collapse: collapse; }
.jav-prose td, .jav-prose th { padding: 0.6rem; border: 1px solid var(--jav-border); }
.jav-prose iframe { max-width: 100%; }
.jav-prose blockquote { padding-left: var(--jav-space-lg); border-left: 3px solid var(--jav-primary); }
.jav-not-found, .jav-empty-state { max-width: 50rem; }
.jav-not-found .jav-search, .jav-empty-state .jav-search { margin-block: var(--jav-space-lg); }
.pagination, .post-navigation { margin-top: var(--jav-space-xl); }
.nav-links { display: flex; flex-wrap: wrap; gap: var(--jav-space-md); justify-content: space-between; }
.page-numbers { padding: 0.5rem 0.75rem; border: 1px solid var(--jav-border); border-radius: var(--jav-radius); }
.page-numbers.current { background: var(--jav-primary); color: var(--jav-on-primary); }
.jav-comments { margin-top: var(--jav-space-xl); }
.jav-comments__list { padding-left: var(--jav-space-lg); }
.comment-form label { display: block; }
.comment-form textarea { width: 100%; }
.comment-form-cookies-consent label { display: inline; }
.comment-form .submit, .woocommerce :is(a.button, button.button, input.button), .woocommerce-page :is(a.button, button.button, input.button) { min-height: 44px; padding: 0.8rem 1rem; border-radius: var(--jav-radius); background: var(--jav-primary); color: var(--jav-on-primary); font-weight: 600; }
.woocommerce :is(a.button.alt, button.button.alt, input.button.alt) { background: var(--jav-primary); color: var(--jav-on-primary); }
.woocommerce :is(a.button, button.button, input.button):hover { background: var(--jav-primary-light); color: var(--jav-on-primary-light); }
.woocommerce .woocommerce-breadcrumb { font-size: var(--jav-font-label); color: var(--jav-muted); }
.woocommerce div.product p.price, .woocommerce ul.products li.product .price { color: var(--jav-primary-dark); }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 1rem; }
.woocommerce table.shop_table { border-color: var(--jav-border); border-radius: var(--jav-radius-lg); }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea { border: 1px solid var(--jav-border); }

@media (max-width: 1279px) {
  .jav-header__brand { max-width: 11rem; }
  .custom-logo { max-width: 11rem; }
  .jav-header-action__text { display: none; }
  .jav-header-action__mobile-label { display: block; }
  .jav-header__actions { gap: var(--jav-space-md); }
  .jav-header-action--wishlist .jav-header-action__label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .jav-header__search .jav-search select { width: 9rem; }
  .jav-catalog-link { max-width: 9rem; }
}
@media (max-width: 1023px) {
  :root { --jav-header-height: 8.25rem; --jav-main-header-height: 4.5rem; }
  .jav-topbar, .jav-navigation { display: none; }
  .jav-header__row { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: var(--jav-space-sm) var(--jav-space-md); padding-block: var(--jav-space-md); }
  .jav-header__brand { max-width: 100%; }
  .jav-header__search { grid-row: 2; grid-column: 1 / -1; }
  .jav-header__actions { justify-self: end; gap: var(--jav-space-sm); }
  .jav-header-action--wishlist { display: none; }
  .jav-header-action--quote { padding: 0.5rem; }
  .jav-header-action--quote .jav-header-action__label { font-size: 0.6875rem; }
  .jav-js .jav-menu-toggle { display: inline-flex; }
  .jav-mobile-navigation { display: block; }
  .jav-header .custom-logo { max-height: 2.75rem; max-width: min(11rem, 100%); }
  .jav-footer__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .jav-foundation-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .jav-post-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 782px) { body.admin-bar { --jav-admin-offset: 46px; } }
@media (max-width: 767px) {
  :root { --jav-gutter: 1rem; --jav-font-display: 2rem; --jav-font-headline: 1.5rem; --jav-space-section: 3rem; }
  .jav-footer__bottom { flex-direction: column; align-items: flex-start; }
  .jav-foundation-hero { padding-block: var(--jav-space-section); }
}
@media (max-width: 639px) {
  .jav-header__search .jav-search select { width: 7.5rem; font-size: 0.6875rem; padding-inline: 0.4rem; }
  .jav-header__row { column-gap: var(--jav-space-sm); }
  .jav-brand__mark { font-size: 1.5rem; }
  .jav-header .jav-brand__name { display: none; }
  .jav-header-action--quote .jav-header-action__label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .jav-header-action { min-width: 44px; justify-content: center; }
  .jav-footer__grid, .jav-foundation-grid, .jav-post-grid { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 600px) { .admin-bar .jav-header { top: 0; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; scroll-behavior: auto !important; } }
.jav-currency-selector button{padding:.2rem .35rem;background:transparent;color:inherit;font-size:inherit;min-height:28px}.jav-currency-selector [aria-pressed=true]{color:var(--jav-on-dark);font-weight:700;text-decoration:underline;text-underline-offset:4px}.jav-currency-selector button:disabled{opacity:.4}.jav-currency-selector{flex-wrap:nowrap}.jav-price-disclaimer{display:block;font-size:.65rem;font-weight:400;color:var(--jav-muted);margin-top:.35rem}.jav-header-action--quote,.jav-search button,.jav-brand-badge,.jav-categories[open]>summary{color:var(--jav-on-primary)!important}.jav-header-action--quote>.jav-icon{color:var(--jav-on-primary)}.jav-search button:hover{color:var(--jav-on-primary-light)}.jav-primary-nav .current-menu-item>a{color:var(--jav-primary-dark)}.jav-button:focus-visible{box-shadow:0 0 0 2px var(--jav-surface)}.jav-hero [data-jav-whatsapp]{margin-top:1rem}.jav-b2b-actions [data-jav-whatsapp]{flex:1}.jav-pdf-download{white-space:normal;text-align:center}.jav-corporate-hero,.jav-corporate-cta{color:var(--jav-on-dark)}.jav-topbar{color:var(--jav-primary-light)}

.jav-header-action > .jav-icon,.jav-topbar .jav-contact-item .jav-icon{color:var(--jav-on-dark-accent)}
.jav-header-action--quote > .jav-icon{color:var(--jav-on-primary)}
.jav-footer,.jav-footer__heading,.jav-footer .jav-brand__name{color:var(--jav-on-footer)}
.jav-footer .jav-button--outline:hover{color:var(--jav-on-primary-light)}
.jav-catalog-heading .jav-pdf-download{margin-top:1rem}
@media(max-width:480px){.jav-pdf-download{white-space:normal;max-width:100%;text-align:center}}

.wc-block-components-button:not(.is-link){background:var(--jav-primary);color:var(--jav-on-primary)}
.wc-block-components-button:not(.is-link):hover{background:var(--jav-primary-light);color:var(--jav-on-primary-light)}

/* Descarga pública: comparte colores, hover y focus del botón global. */
.jav-pdf-download{cursor:pointer;max-width:100%;gap:var(--jav-space-sm)}
.jav-pdf-download .jav-icon{flex-shrink:0}
.jav-home-catalog-download{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-top:2rem;padding:1.5rem;border:1px solid var(--jav-border);border-radius:var(--jav-radius);background:var(--jav-surface)}
.jav-home-catalog-download h3{margin:0 0 .5rem}.jav-home-catalog-download p{margin:0}
@media(max-width:767px){.jav-home-catalog-download{flex-direction:column;align-items:stretch}.jav-home-catalog-download .jav-pdf-download,.jav-catalog-heading .jav-pdf-download{width:100%}}
