/* Actualización visual compartida. Conserva la identidad azul y roja de JASAMOTOS. */
html { scroll-behavior: smooth; }
body .page-header.page-header-transparent { position: absolute; top: 45px; background: transparent; border-top: 1px solid #fff; border-bottom: 1px solid rgba(255,255,255,.25); }
body .page-header__inner { max-width: 1600px; margin: auto; padding: 12px 32px; gap: 24px; }
body .page-header__left { padding: 0; flex-shrink: 0; }
body .page-header__left .logo__icon { width: 195px; }
body .page-header__left .logo__icon img { width: 100%; height: auto; }
body .page-header__center { padding: 0; margin-left: auto; }
body .page-nav .uk-navbar-nav > li > a { min-height: 56px; padding: 0 13px; font-size: 16px; }
body .page-header__right { gap: 16px; flex-shrink: 0; }
body .page-header__right .uk-navbar-toggle { width: 48px; height: 48px; min-height: 48px; padding: 0; box-sizing: border-box; border: 1px solid rgba(255,255,255,.3); border-radius: 4px; }
body .page-header__right .uk-navbar-toggle img { width: 24px; max-width: none; flex-shrink: 0; }
.jasa-header-quote { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: 0 18px; border-radius: 4px; color: #fff; background: #ee2d3d; font-family: Oswald, sans-serif; font-size: 17px; text-transform: uppercase; white-space: nowrap; }
.jasa-header-quote:hover { color: #fff; background: #ce2130; text-decoration: none; }
body a:focus-visible, body button:focus-visible { outline: 3px solid #ee2d3d; outline-offset: 4px; }
body .page-header a:focus-visible { outline-color: #fff; }
.jasa-home-shortcuts { display: grid; grid-template-columns: 1.15fr 1fr 1fr; gap: 20px; padding-top: 32px; padding-bottom: 12px; }
.jasa-home-shortcut { display: flex; flex-direction: column; justify-content: center; gap: 6px; min-height: 112px; padding: 20px 24px; background: #f3f5f9; color: #0c3688; border: 1px solid #e0e5ee; border-radius: 6px; box-sizing: border-box; transition: box-shadow .2s, border-color .2s; }
.jasa-home-shortcut span { font: 600 27px/1.2 Oswald, sans-serif; }
.jasa-home-shortcut small { color: #535d6e; font-size: 14px; }
.jasa-home-shortcut:hover { text-decoration: none; color: #0c3688; border-color: #0c3688; box-shadow: 0 5px 20px rgba(12,54,136,.08); }
.jasa-home-shortcut--primary { background: #0c3688; border-top: 4px solid #ee2d3d; color: #fff; }
.jasa-home-shortcut--primary small { color: #e2e9f6; }
.jasa-home-shortcut--primary:hover { color: #fff; }
#section-products, #section-motos { scroll-margin-top: 24px; }
.page-home #section-products > .uk-section-large { padding-top: 64px; padding-bottom: 64px; }
.page-home .section-title .uk-h2 { font-size: clamp(30px, 3.3vw, 44px); }
.page-home .product-item { border-radius: 6px; border: 1px solid #e2e7ef; overflow: hidden; box-shadow: 0 5px 18px rgba(12,54,136,.05); }
@media (min-width: 1200px) { body .page-header__right .menu-btn { display: none; } }
@media (max-width: 1199px) {
  body .page-header__center { display: none; }
  body .page-header__right { margin-left: auto; }
}
@media (max-width: 767px) {
  body .page-header__inner { padding: 12px 16px; gap: 12px; }
  body .page-header__left .logo__icon { width: 142px; }
  body .page-header__right { gap: 10px; }
  .jasa-header-quote { min-height: 42px; font-size: 14px; padding: 0 10px; }
  body .page-header__right .uk-navbar-toggle { width: 44px; height: 44px; min-height: 44px; }
  .jasa-home-shortcuts { grid-template-columns: 1fr; gap: 12px; padding-top: 20px; }
  .jasa-home-shortcut { min-height: 96px; padding: 18px 22px; }
  .page-home #section-products > .uk-section-large { padding-top: 44px; padding-bottom: 44px; }
}
@media (max-width: 359px) { .jasa-header-quote { display: none; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
/* Espacio para el menú transparente superpuesto en las páginas interiores. */
.page-article .section-hero, .page-contacts .section-hero, .page-shop .section-hero { padding: 0; clip-path: none; -webkit-clip-path: none; }
.page-article .section-hero__bg, .page-contacts .section-hero__bg, .page-shop .section-hero__bg { padding: 160px 0 64px; background-attachment: scroll; }
.page-article .section-hero__breadcrumb, .page-contacts .section-hero__breadcrumb, .page-shop .section-hero__breadcrumb { margin-top: 24px; justify-content: flex-start; }
.page-article .section-hero__title .uk-h1, .page-contacts .section-hero__title .uk-h1, .page-shop .section-hero__title .uk-h1 { font-size: clamp(34px, 4.3vw, 60px); overflow-wrap: anywhere; }
@media (max-width: 767px) {
  .page-article .section-hero__bg, .page-contacts .section-hero__bg, .page-shop .section-hero__bg { padding: 130px 0 40px; }
}

.page-shop .jasa-product-photo { margin: 0; padding: 16px; background: #fff; }
.page-shop .jasa-product-photo img { display: block; width: 100%; height: auto; max-height: 650px; object-fit: contain; margin: auto; }
/* Un solo panel de modelos, sin desplegables anidados. */
body .page-header .page-nav, body .page-header__center, body .page-header .jasa-motos-item { position: static; }
body .page-header .jasa-motos-menu { left: 50% !important; top: 100% !important; transform: translateX(-50%); width: min(960px, calc(100vw - 48px)); max-width: none; margin: 0; padding: 24px; box-sizing: border-box; background: #fff; border-top: 3px solid #ee2d3d; border-radius: 0 0 5px 5px; box-shadow: 0 16px 36px rgba(0,0,0,.22); max-height: calc(100vh - 180px); overflow-y: auto; overscroll-behavior: contain; }
.jasa-motos-menu__heading { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-bottom: 16px; margin-bottom: 16px; border-bottom: 1px solid #e1e6ed; }
.jasa-motos-menu__heading strong { color: #0c3688; font: 500 23px/1.4 Oswald, sans-serif; }
.jasa-motos-menu__heading > a { color: #0c3688; font-size: 14px; text-decoration: underline; padding: 10px 0; }
.jasa-motos-menu__grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 24px; }
.jasa-motos-menu__group h2 { margin: 0 0 12px; color: #0c3688; font-size: 19px; padding-bottom: 10px; border-bottom: 2px solid #ee2d3d; }
body .page-nav .jasa-motos-menu .uk-nav > li > a, body .page-nav .jasa-modelos-dropdown .uk-nav > li > a { display: flex; align-items: center; min-height: 44px; padding: 10px 8px; box-sizing: border-box; color: #333; font-size: 14px; line-height: 1.5; white-space: normal; overflow-wrap: anywhere; border-radius: 3px; }
body .page-nav .jasa-motos-menu .uk-nav > li > a:hover, body .page-nav .jasa-modelos-dropdown .uk-nav > li > a:hover { color: #0c3688; background: #edf2fa; text-decoration: none; }
body .page-header .jasa-modelos-dropdown { min-width: 270px; max-height: calc(100vh - 180px); overflow-y: auto; background: #fff; border-top: 3px solid #ee2d3d; padding: 18px; }
#offcanvas .uk-nav > li > a, #offcanvas .uk-nav-sub a { min-height: 44px; display: flex; align-items: center; padding-top: 10px; padding-bottom: 10px; box-sizing: border-box; line-height: 1.5; }
#offcanvas .uk-nav-sub { padding-left: 18px; border-left: 2px solid rgba(255,255,255,.25); margin-left: 8px; }
@media (min-width: 1200px) { body .page-header__center { display: flex; } }
.jasa-motos-menu__grid { grid-template-columns: 2fr 1fr 1fr 1fr; }
.jasa-motos-menu__group:first-child .uk-nav { columns: 2; column-gap: 12px; }
.jasa-motos-menu__group:first-child .uk-nav > li { break-inside: avoid; }
