/* Ajustes sobre la identidad existente. Solo se carga en la web pública. */
:root { --bety-reading: #d1d1d1; }
.contact-page { position: relative; z-index: 2; }
main :is(input, select, textarea, button, a):focus-visible,
.main-header :is(input, button, a):focus-visible,
.site-footer a:focus-visible { outline: 2px solid var(--dorado-claro, #ffd45a); outline-offset: 4px; }
.catalog-product-category, .catalog-product-original-price { font-size: 12px; }
.catalog-product-description { font-size: 14px; line-height: 1.6; }
.catalog-product-action { min-height: 44px; font-size: 12px; }
.catalog-product-original-price { color: #b5b5b5; }
.product-specs :is(dt, dd) { font-size: 14px; line-height: 1.65; }
.product-related-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr)); gap: 16px; text-align: left; }
.product-related-grid a { display: flex; flex-direction: column; gap: 12px; justify-content: center; padding: 18px; border: 1px solid var(--borde-dorado); border-radius: 12px; color: var(--dorado-claro); text-decoration: none; font-size: 14px; line-height: 1.6; }
.product-related-grid strong { color: #eee; }
.shop-page > h1 { letter-spacing: -.035em; line-height: 1.12; }
.shop-page > p { max-width: 68ch; }
.shop-panel, .shop-item { padding: clamp(20px, 2.5vw, 32px); }
.shop-panel p, .shop-policy p { color: var(--bety-reading); }
.shop-policy { max-width: 940px; }
.shop-policy-section { margin: 24px 0; padding: clamp(22px, 3vw, 38px); background: rgba(12,12,12,.89); border: 1px solid var(--borde-suave); border-radius: var(--radio-grande); }
.shop-policy-section h2 { margin-top: 0; font-size: clamp(20px, 2.3vw, 25px); letter-spacing: -.02em; }
.shop-policy-section p:last-child { margin-bottom: 0; }
.shop-policy > .shop-error { border-left: 3px solid var(--dorado); background: #17130ce8; padding: 16px 20px; margin: 24px 0; border-radius: 0 12px 12px 0; font-size: 14px; color: #e8cc96 !important; }
.policy-nav { display: flex; flex-wrap: wrap; gap: 8px; margin: 26px 0; }
.policy-nav a { display: inline-flex; align-items: center; padding: 9px 14px; min-height: 44px; border: 1px solid var(--borde-dorado); border-radius: 999px; font-size: 13px; text-decoration: none; background: #101010eb; }
.policy-nav a:hover { background: #27200e; }
.shop-policy :is(h2, section) { scroll-margin-top: 24px; }
.site-footer-inner { gap: clamp(28px, 4vw, 60px); }
@media (min-width: 901px) {
    .product-page { width: min(calc(100% - 160px), var(--ancho-maximo, 1280px)); }
    .site-footer-inner, .site-footer-bottom { width: min(calc(100% - 136px), var(--ancho-maximo, 1280px)); margin-left: auto; margin-right: auto; }
}
.site-footer-column a { min-height: 32px; display: inline-flex; align-items: center; }
.site-footer-bottom { line-height: 1.7; }
.global-search-panel { position: absolute; z-index: 2100; top: calc(100% + 10px); left: 0; width: 100%; min-width: 280px; max-height: min(520px, 65dvh); overflow-y: auto; overscroll-behavior: contain; padding: 12px; background: #10100ffb; border: 1px solid var(--borde-dorado); border-radius: 20px; box-shadow: 0 20px 50px #000b; }
.global-search-panel[hidden] { display: none; }
.search-feedback { font-size: 12px; color: #c7c7c7; line-height: 1.5; padding: 6px 10px 12px; }
.search-suggestion { display: flex; flex-direction: column; gap: 5px; color: #eee; padding: 12px; border-radius: 10px; text-decoration: none; min-height: 62px; }
.search-suggestion strong { font-size: 14px; line-height: 1.4; font-weight: 600; overflow-wrap: anywhere; }
.search-suggestion:hover, .search-suggestion[aria-selected="true"] { background: #f2b92716; outline: 1px solid #f2b92766; }
.search-result-type { color: var(--dorado, #f2b927); font-size: 11px; text-transform: uppercase; letter-spacing: .08em; }
.search-view-all { display: block; padding: 14px 10px 6px; color: var(--dorado-claro, #ffd45a); font-size: 13px; border-top: 1px solid var(--borde-suave); text-align: center; margin-top: 8px; }
.site-search-form { margin: 28px 0; }
.site-search-form label { display: block; margin-bottom: 12px; color: #ddd; font-size: 14px; }
.site-search-form > div { display: flex; gap: 12px; }
.site-search-form input { width: 100%; min-width: 0; min-height: 52px; padding: 14px 18px; background: #111; color: #fff; border: 1px solid var(--borde-dorado); border-radius: 12px; font: inherit; }
.site-search-form .shop-button.primary { width: auto; }
.site-search-results { display: grid; gap: 16px; margin-top: 24px; }
.site-search-result { display: flex; flex-direction: column; gap: 10px; padding: clamp(20px, 3vw, 30px); border: 1px solid var(--borde-suave); border-radius: 18px; background: #101010ee; text-decoration: none; }
.site-search-result:hover { border-color: var(--borde-dorado); }
.site-search-result strong { color: #fff; font-size: 20px; line-height: 1.4; }
.site-search-result p { font-size: 14px; margin: 0; }
@media (min-width: 901px) and (max-width: 1100px) {
    .site-footer-links { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
}
@media (max-width: 900px) {
    body:not(:has(#hero)) > #floating-panel .floating-social-panel { position: relative; left: auto; top: auto; transform: none; flex-direction: row; width: max-content; margin: 12px auto 30px; padding: 12px 18px; gap: 18px; }
    body:not(:has(#hero)) > #floating-panel .floating-divider { width: 1px; height: 24px; }
    .news-page .news-product-grid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 270px), 330px)); }
    .global-search-panel { min-width: 0; max-height: 55dvh; }
}
@media (max-width: 480px) {
    .shop-policy-section { padding: 22px 18px; }
    .policy-nav a { font-size: 12px; }
    .shop-item { padding: 16px; }
    .site-search-form > div { flex-wrap: wrap; }
    .site-search-form .shop-button.primary { width: 100%; }
}
@media (prefers-reduced-motion: no-preference) {
    .shop-button:not(:disabled), .site-search-result, .policy-nav a { transition: background-color 180ms ease, border-color 180ms ease, box-shadow 180ms ease; }
    .shop-button:not(:disabled):hover { box-shadow: 0 6px 22px #f2b92718; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
