/*
Theme Name: Fondo Editorial UP
Template: hello-elementor
Version: 1.0.0
Description: Child theme del Fondo Editorial de la Universidad del Pacífico
Author: Javier Yamashita
*/

.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-sub-item { flex-direction:column; align-items:flex-start; gap:0; }
.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-sub-item span { display:block; left:1; font-weight:normal; }

/* Suprimir elementos legacy en descripción de producto */
.woocommerce-product-details__short-description h2,
.woocommerce-product-details__short-description h3,
.woocommerce-product-details__short-description h4,
.woocommerce-product-details__short-description h5,
.woocommerce-product-details__short-description h5,
.woocommerce-product-details__short-description hr,
.woocommerce-product-details__short-description img,
.woocommerce-product-details__short-description button,
.woocommerce-product-details__short-description a[class*="sbs"],
.woocommerce-product-details__short-description a:has(button),
.woocommerce-product-details__short-description p:empty,
.woocommerce-product-details__short-description p:has(> a:only-child button) {
    display: none !important;
}

.elementor-button.fe-button { display:inline-flex; align-items:center; padding:12px 20px; background:transparent; border-radius:10px; border:1px solid; }
.elementor-button.fe-button-preview { font-weight:500; fill:var(--e-global-color-secondary); color: var(--e-global-color-secondary); border-color:var(--e-global-color-secondary); }
.elementor-button.fe-button-preview .elementor-button-text { white-space:nowrap; }

/* HEADER */
ul.elementor-nav-menu--dropdown a, ul.elementor-nav-menu--dropdown a:focus, ul.elementor-nav-menu--dropdown a:hover { border-inline-start: none !important; }

.fe-autores-cards { display:grid; grid-template-columns:repeat(2, 1fr); gap:30px; }
.fe-autores-count-1 { grid-template-columns:1fr; }
.fe-autores-cards article { display:flex; gap:30px; background:#FFF; border-radius:10px; border:1px solid rgba(0,0,0,0.1); padding:2rem; transition: all 0.3s; }
.fe-autores-cards article .fe-author-avatar { flex:0 0 100px; width:100px; height:100px; border-radius:999px; border:5px solid #F1F3F5; overflow:hidden; transition: all 0.3s; }
.fe-autores-cards article .fe-author-avatar img { width:100%; height:100%; object-fit:cover; }
.fe-autores-cards article .fe-author-text { line-height:1.4; }
.fe-autores-cards article .fe-author-avatar:hover { border-color:var(--e-global-color-primary); }
.fe-autores-cards article .fe-author-name a { font-family:inherit; }
.fe-autores-cards article .fe-author-name a:hover, .fe-autores-cards article .fe-author-link:hover { color:var(--e-global-color-primary); }
@media ( max-width:767px ) { 
	.fe-autores-cards { grid-template-columns:1fr; } 
}

.elementor-widget-loop-grid .elementor-widget-image a { display:block; aspect-ratio:2/3; overflow:hidden; }
.elementor-widget-loop-grid .elementor-widget-image a img { width:100%; height:100%; object-fit:fill; }

/* Botón SBS */
.woocommerce-product-details__short-description .fe-btn-sbs { display:none; }

.woobt-wrap.woobt-wrap-custom-position { display:flex; align-items:center; gap:40px; }
.woobt-wrap.woobt-wrap-custom-position .woobt-products[class*=woobt-products-layout-grid] { margin-left:-15px; margin-right:-15px; }
.woobt-wrap.woobt-wrap-custom-position .woobt-products.woobt-products-layout-grid-3 .woobt-product { width: calc(33.3333333333% - 30px); }

.woobt-wrap.woobt-wrap-custom-position .woobt-products[class*=woobt-products-layout-grid] .woobt-product { background:#FFF; border-width:0; border-radius:10px; margin:0 15px; padding:1rem; }
.woobt-wrap.woobt-wrap-custom-position .woobt-img { display:block; width:100%; aspect-ratio:2/3; }
.woobt-wrap.woobt-wrap-custom-position .woobt-img img { width:100%; height:100%; object-fit:fill; }
.woobt-wrap.woobt-wrap-custom-position .woobt-summary { flex:0 0 25%; }

.fe-product-authors .fe-product-label { margin-right:5px; }
.fe-format-tabs { display:flex; gap:10px; margin-bottom:1.5rem; }
.fe-format-tabs .fe-format-tab { font-size:13px; font-weight:700; padding:8px 16px; border-radius:999px; background:#e9edf5 }
.fe-format-tabs a.fe-format-tab { color:#FFF; background:var( --e-global-color-secondary ); }

/* Estilos para el nuevo shortcode de versión alternativa */
.fe-format-version-container {  }
.fe-format-version-title { display:block; font-size:0.9em; color:#333; margin-bottom:5px; }
.fe-format-version-box { display:inline-flex; flex-direction:column; align-items:center; justify-content:center; gap:3px; border-radius:5px; border:1px solid #e9edf5; padding:10px 20px; text-decoration:none !important; transition:all 0.3s ease; }
.fe-format-version-box:hover { border-color:#004481; background-color:#f9f9f9; }
.fe-format-version-label { color:#004481; font-weight:700; line-height:1; margin-bottom:2px; }
.fe-format-version-price { color:#333; font-size:16px; font-weight:400; line-height:1 }
.fe-format-version-price del { font-size:0.85em; color:#999; }
.fe-format-version-price ins { text-decoration:none; font-weight:400; }
/* Cuando la versión alternativa está agotada */
.fe-format-version-box.is-out-of-stock { opacity:0.7; border-style:dashed; }
.fe-out-of-stock-label { font-size:12px; color:#d9534f; }

/* Botón de Descarga Libre */
.fe-btn-descarga, .fe-btn-descarga-loop { background-color:#28a745 !important; color:#fff !important;
    padding: 12px 25px !important;
    border-radius: 4px;
    font-weight: bold;
    text-transform: uppercase;
    border: none;
    display: inline-block;
    text-align: center;
}

.fe-btn-descarga:hover, .fe-btn-descarga-loop:hover {
    background-color: #218838 !important;
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}

.fe-label-gratis { display: block; color:#28a745; font-weight:bold; font-size:1em; }

.elementor-widget.elementor-widget-woocommerce-product-add-to-cart { /*margin-bottom:1.5rem !important;*/ }

.elementor-woo-meta--view-inline .product_meta { display:block !important; font-size:.9em; }
.elementor-woo-meta--view-inline .product_meta .sku_wrapper { display:block; }

.archive .woocommerce .woocommerce-result-count { margin-bottom:0; margin-top:10px; }
.archive .elementor-products-grid ul.products.elementor-grid li.product .onsale { display:none !important; }

.archive .elementor-products-grid ul.products.elementor-grid li.product { display:flex; flex-direction:column; justify-content:space-between; padding:15px; background:#FFF; border-radius:10px; box-shadow: 0 14px 30px rgba(0, 0, 0, .06); }
.archive .elementor-products-grid ul.products.elementor-grid li.product a img { border-radius:6px; }
.elementor-widget-wc-archive-products.elementor-wc-products ul.products li.product .woocommerce-loop-product__title { font-family:"Akzidenz Grotesk Pro", Sans-serif !important; font-weight:700 !important; color:#000 !important; }
.archive.woocommerce ul.products li.product .button { text-align:center; }

.archive aside .elementor-nav-menu .elementor-item { position:relative; padding-left:25px !important; }
.archive aside .elementor-nav-menu .elementor-item:before { position:absolute; left:0; top:8px; width:20px; height:20px; content:''; background-repeat:no-repeat; background-position:center center; background-size:80%; opacity:1 !important; }
.archive aside .elementor-nav-menu li.adm .elementor-item:before { background-color:#1B9B48; background-image:url('assets/img/icono-administracion-marketing.svg'); }
.archive aside .elementor-nav-menu li.cie .elementor-item:before { background-color:#4B2976; background-image:url('assets/img/icono-ciencias-sociales-historia.svg'); }
.archive aside .elementor-nav-menu li.con .elementor-item:before { background-color:#000F9F; background-image:url('assets/img/icono-contabilidad-finanzas.svg'); }
.archive aside .elementor-nav-menu li.der .elementor-item:before { background-color:#248097; background-image:url('assets/img/icono-derecho.svg'); }
.archive aside .elementor-nav-menu li.eco .elementor-item:before { background-color:#98378C; background-image:url('assets/img/icono-economia.svg'); }
.archive aside .elementor-nav-menu li.hum .elementor-item:before { background-color:#978000; background-image:url('assets/img/icono-humanidades.svg'); }
.archive aside .elementor-nav-menu li.mat .elementor-item:before { background-color:#C94726; background-image:url('assets/img/icono-matematicas.svg'); }

/* =====================================================
   NOVEDADES – Coverflow
   ===================================================== */

.fe-novedades-slider { position:relative; padding:0 50px; }
/* CRÍTICO: visible para que los slides laterales asomen */
.fe-novedades-slider .slick-list { overflow: visible !important; }
/* Evitar que el overflow rompa el layout de la página */
.fe-novedades-slider { overflow: hidden; }
.fe-novedades-slider .slick-track { display: flex !important; align-items: center; }
/* Slide base */
.fe-novedades-slider .slick-slide { padding: 0 5px; transform: scale(0.55); opacity: .35; z-index: 1; transition: transform .35s ease, opacity .35s ease; transform-origin: center center; }
/* Niveles */
.fe-novedades-slider .slick-slide.lv-0 { transform: scale(1.00); opacity: 1;   z-index: 5; }
.fe-novedades-slider .slick-slide.lv-1 { transform: scale(0.82); opacity: .78; z-index: 4; }
.fe-novedades-slider .slick-slide.lv-2 { transform: scale(0.70); opacity: .55; z-index: 3; }
.fe-novedades-slider .slick-slide.lv-3 { transform: scale(0.60); opacity: .38; z-index: 2; }
.fe-novedades-slider .slick-slide.lv-out { opacity: 0 !important; pointer-events: none; }

/* ── NOVEDADES CARD ─────────────────────────────── */
.fe-book-card { position:relative; text-align:center; }
.fe-book-card .fe-btn-atc { display:block; position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); opacity:0; background-color: var(--e-global-color-primary); transition: all 0.2s; pointer-events:none; white-space:nowrap; color:#fff !important; border:none; border-radius:50px; padding:12px 16px; font-family:'Akzidenz Grotesk Pro', Arial, sans-serif; font-weight:700; font-size:11px; letter-spacing:0.02em; text-transform:uppercase; text-decoration:none; line-height:1; z-index:3; }
.fe-book-card .fe-book-card__img-link { position:relative; display:block; width:100%; aspect-ratio:2/3; border-radius:10px; overflow:hidden; }
.fe-book-card .fe-book-card__img-link img { display:block; width:100%; height:100%; object-fit:fill; }
.fe-book-card:hover .fe-btn-atc { opacity:1; transform:translateX(-50%) translateY(0); pointer-events:auto; }
.fe-book-card .fe-price-old { text-decoration:line-through; color:var(--fe-muted); font-size:13px; margin-right:4px; }
.fe-book-card .fe-price-now { font-weight:700; color:var(--fe-text); }

/* Precio — solo visible en slide central */
.fe-book-price { display:inline-block; font-weight:600; font-size:15px; color:#0b1320; margin-top:18px; padding:10px 20px; background:#FFF; border-radius:999px; box-shadow:0 8px 20px rgba(0,0,0,.08); opacity:0; transform:translateY(-6px); transition:opacity .25s ease, transform .25s ease; }
.fe-novedades-slider .slick-slide.lv-0 .fe-book-price { opacity:1; transform:translateY(0); }

/* Flechas */
.fe-novedades-slider .slick-arrow { display:flex; align-items:center; justify-content:center; width:46px; height:46px; transform:translate(0, -85%); font-size:0px; padding:0; background:#FFF; border:0px none; border-radius:12px; box-shadow:0 10px 22px rgba(0,0,0,.10); z-index:10; }
.fe-novedades-slider .slick-arrow:before { font-family:'slick'; font-size:22px; color:#0062FF; opacity:1; line-height:1; margin-top:2px; }
.fe-novedades-slider [type=button].slick-arrow:hover, [type=button].fe-novedades-slider .slick-arrow:focus, { background-color:#0062FF; }
.fe-novedades-slider .slick-arrow:hover:before { color:#FFF; }
.fe-novedades-slider .slick-prev { left:5%; }
.fe-novedades-slider .slick-next { right:5%; }

div.product .fe-card-book .elementor-heading-title a { font-family:inherit; }
div.product .fe-card-book p.price, div.product .fe-card-book span.price { font-size:inherit; font-family:inherit; color:var(--e-global-color-primary); }

.single-product div.product p.price, 
.single-product div.product span.price { font-family:inherit; color:var(--e-global-color-primary); }
.single-product div.product p.stock { color:var(--e-global-color-primary); }
.single-product a.button.alt, .single-product div.product form.cart .button { background:var(--e-global-color-primary); border-radius:20px; }

/* =====================================================
   TEMAS
   ===================================================== */
.fe-temas-grid { display:grid; grid-template-columns:repeat(7, minmax(0, 1fr)); align-items:stretch; gap:15px; }
.fe-tema { display:flex; flex-direction:column; justify-content:flex-start; min-height:180px; padding:64px 18px 0; border-radius:10px; text-decoration:none; color:#FFF !important; position:relative; overflow:hidden; }
.fe-tema__icon { position:absolute; top:16px; left:16px; width:32px; height:32px; display:flex; align-items:center; justify-content:center; opacity:.85; }
.fe-tema__text { font-family:'AkzidenzGroteskPro-Md', system-ui, -apple-system, Arial, sans-serif; font-size:18px; line-height:1.15; }

/* Hover sutil */
.fe-tema:hover { transform:translateY(-10px); color:#FFF; }
@media (max-width:1399.98px) { 
  .fe-temas-grid { grid-template-columns:repeat(4, minmax(0, 1fr)); }
}

@media (max-width:991.98px) { 
  .fe-temas-grid { grid-template-columns:repeat(3, minmax(0, 1fr)); }
}

@media (max-width:575.98px) { 
  .fe-temas-grid { grid-template-columns:repeat(2, minmax(0, 1fr)); }
  .fe-tema { min-height:130px; }
  .fe-tema__text { font-size:16px; }
}

@media (max-width:575.98px) {
  .fe-card-book.fe-card-book--big { width:auto !important; max-width:none !important; }
}


/* Loop Grid: igual altura por fila, no global */
.post-type-archive-product .elementor-widget-loop-grid .elementor-loop-container { align-items:stretch !important; }
.post-type-archive-product .elementor-widget-loop-grid .elementor-loop-container > .e-loop-item { display:flex; flex-direction:column; height:auto !important; }
.post-type-archive-product .elementor-widget-loop-grid .elementor-loop-container > .e-loop-item > .elementor-element { flex:1; display:flex; flex-direction:column; height:100%; }
.elementor-widget-loop-grid .elementor-pagination { margin-top:40px !important; }

/**/
.elementor-widget-loop-carousel .elementor-widget-image > a { display:block; width:100%; aspect-ratio:2/3; }
.elementor-widget-loop-carousel .elementor-widget-image > a > img { display:block; width:100%; height:100%; object-fit:fill; }
/* ── LOOP CARD:hover overlay con botón ─────────────────────────────── */
.fe-card-book__img-wrap { position:relative; overflow:hidden; border-radius:8px; }
.fe-card-book__img-wrap::after { content:''; position:absolute; inset:0; background:rgba(0, 0, 0, 0.45); opacity:0; transition:opacity 0.25s ease; pointer-events:none; z-index:1; }
.fe-card-book:hover .fe-card-book__img-wrap::after { opacity:1; }
.fe-card-book__img-wrap .elementor-widget-woocommerce-product-add-to-cart { position:absolute; top:50%; left:50%; transform:translate(-50%, -50%) translateY(8px); z-index:2; opacity:0; transition:opacity 0.25s ease, transform 0.25s ease; width:max-content; pointer-events:none; }
.fe-card-book:hover .fe-card-book__img-wrap .elementor-widget-woocommerce-product-add-to-cart { opacity:1; transform:translate(-50%, -50%) translateY(0); pointer-events:auto; }
.fe-card-book__img-wrap .single_add_to_cart_button, .fe-card-book__img-wrap .add_to_cart_button, .fe-card-book__img-wrap .button { color:#fff !important; border:none !important; border-radius:50px !important; padding:12px 24px !important; font-family:'Akzidenz Grotesk Pro', Arial, sans-serif !important; font-weight:700 !important; font-size:11px !important; letter-spacing:0.02em !important; text-transform:uppercase !important; white-space:nowrap; }

.elementor-widget-heading .elementor-heading-title a, .fe-card-book .elementor-heading-title a { font-weight:inherit; }
.elementor-widget-heading .elementor-heading-title a { font-family:"Publico"; }

.fe-box-book .price { margin-bottom:0; }


/* Carrito / Checkout */
.elementor-widget-woocommerce-checkout-page .woocommerce #customer_details .col-1, .elementor-widget-woocommerce-checkout-page .woocommerce .e-checkout__order_review, .elementor-widget-woocommerce-checkout-page .woocommerce .e-coupon-box, .elementor-widget-woocommerce-checkout-page .woocommerce .e-woocommerce-login-section, .elementor-widget-woocommerce-checkout-page .woocommerce .shipping_address, .elementor-widget-woocommerce-checkout-page .woocommerce .woocommerce-additional-fields, .elementor-widget-woocommerce-checkout-page .woocommerce .woocommerce-checkout #payment { padding:30px !important; border-radius:20px !important; border:0px none !important; }
.elementor-widget-woocommerce-cart .woocommerce .cart_totals h2, .elementor-widget-woocommerce-checkout-page .woocommerce #order_review_heading, .elementor-widget-woocommerce-checkout-page .woocommerce-checkout .woocommerce-billing-fields h3,
#add_payment_method .checkout .col-2 h3#ship-to-different-address, .woocommerce-cart .checkout .col-2 h3#ship-to-different-address, .woocommerce-checkout .checkout .col-2 h3#ship-to-different-address { font-family:inherit; }
.elementor-widget-woocommerce-checkout-page .woocommerce-checkout .woocommerce-billing-fields h3 { margin-bottom:15px !important; }
.elementor-widget-woocommerce-checkout-page .woocommerce-checkout .woocommerce-billing-fields #billing_factura_field h3 { margin:30px 0 5px !important; }
.elementor-widget-woocommerce-cart .woocommerce a:not(.add_to_cart_button):not(.restore-item):not(.wc-backward):not(.wc-forward),
.elementor-widget-woocommerce-checkout-page a { color:var(--e-global-color-primary) !important; }
.elementor-widget-woocommerce-cart .woocommerce .wc-proceed-to-checkout .checkout-button, .elementor-widget-woocommerce-checkout-page .woocommerce-checkout #payment #place_order { background-color:var(--e-global-color-primary) !important; border-radius:30px !important; }
.elementor-widget-woocommerce-cart .woocommerce table.shop_table.cart .actions .button,
.elementor-widget-woocommerce-cart .woocommerce button.button,
.elementor-widget-woocommerce-checkout-page .woocommerce button.woocommerce-button { color:var(--e-global-color-primary) !important; border-radius:30px !important; border-color:var(--e-global-color-primary) !important; }
.elementor-widget-woocommerce-checkout-page .woocommerce .woocommerce-checkout-review-order-table .cart_item td.product-total, .elementor-widget-woocommerce-checkout-page .woocommerce .woocommerce-checkout-review-order-table tfoot td, .elementor-widget-woocommerce-checkout-page .woocommerce .shop_table tr:nth-child(odd)>th:last-child { text-align:right; }
.elementor-widget-woocommerce-checkout-page .woocommerce .woocommerce-checkout-review-order-table .cart_item td.product-name { font-weight:bold; }
.elementor-widget-woocommerce-checkout-page .woocommerce .woocommerce-checkout-review-order-table .cart_item td.product-name .woobt-item-name { font-weight:normal; }


/* Mi cuenta */
.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce h2, .elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce h3 { font-family:inherit; font-size:18px; font-weight:bold !important; margin:0 0 10px !important; }
.elementor-widget-woocommerce-my-account .e-my-account-tab .woocommerce .woocommerce-MyAccount-navigation ul li a:hover, 
.elementor-widget-woocommerce-my-account .e-my-account-tab .woocommerce .woocommerce-MyAccount-navigation ul li.is-active a,
.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce tbody .woocommerce-orders-table__cell.woocommerce-orders-table__cell-order-number>a,
.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce a { color:var(--e-global-color-primary) !important; }
.elementor-widget-woocommerce-my-account .e-my-account-tab .woocommerce .woocommerce-MyAccount-navigation ul li a { color:inherit !important; }
.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce-Address address, .elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce-Addresses address { border-radius:20px; border:0px none !important; }
.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce-EditAccountForm .button, .elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce-address-fields .button { background-color:var(--e-global-color-primary) !important; border-radius:30px !important; }

.woocommerce-orders-table__header-order-actions, .woocommerce-orders-table__cell-order-actions { text-align:right; }
.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .shop_table .button { border:1px solid var(--e-global-color-primary) !important; }

/* Login */
.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .login, .elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .register, .elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .woocommerce-ResetPassword { padding:30px !important; border-radius:20px !important; border:0px none !important; }
.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .login .button, .elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .register .button, .elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .woocommerce-ResetPassword .button { background-color:var(--e-global-color-primary) !important; border-radius:30px !important; }

/* Página simple */ 
.page-content .elementor-widget-text-editor ol, .page-content .elementor-widget-text-editor ul { margin-bottom:1rem; }

/* =====================================================
   FE-UP · AUTORES GLOSARIO
   ===================================================== */

.fe-autores-glosario { padding:0 0 80px; }

/* --- Buscador --- */
.fe-autores-search-wrap { margin:0 auto 32px; max-width:560px; }
.fe-autores-search-inner { position:relative; display:flex; align-items:center; }
.fe-autores-search-icon { position:absolute; right:16px; color:#8a8f99; pointer-events:none; flex-shrink:0; }
.fe-autores-search-input { width:100%; height:48px; border-radius:999px; border:1.5px solid rgba(11,19,32,.18); background:#fff; padding:0 48px 0 46px; font-size:14px; font-family:inherit; outline:none; transition:border-color .2s; -webkit-appearance:none; appearance:none; }
.fe-autores-search-input:focus { border-color:#0062FF; box-shadow:0 0 0 3px rgba(0,98,255,.1); }
.fe-autores-search-input::-webkit-search-cancel-button { display:none; }
.fe-autores-search-clear { position:absolute; right:14px; display:none; align-items:center; justify-content:center; width:22px; height:22px; border-radius:50%; background:#c0c5cf; color:#fff; font-size:16px; line-height:1; cursor:pointer; user-select:none; }

/* --- Índice alfabético --- */
.fe-autores-alpha-nav { display:flex; flex-wrap:wrap; justify-content:center; gap:4px 2px; margin-bottom:40px; }
.fe-alpha-btn { min-width:34px; height:34px; padding:0 6px; border-radius:8px; border:1.5px solid transparent; background:transparent; font-size:13px; font-weight:700; font-family:inherit; color:#0b1320; cursor:pointer; transition:background .15s, color .15s, border-color .15s; line-height:1; }
.fe-alpha-btn.is-active:hover { background:rgba(0,98,255,.08); border-color:rgba(0,98,255,.3); color:#0062FF; }
.fe-alpha-btn.is-selected { background:#0B2A4A; color:#fff; border-color:#0B2A4A; }
.fe-alpha-btn.is-disabled, .fe-alpha-btn[disabled] { color:#c0c5cf; cursor:default; pointer-events:none; }
.fe-alpha-all { padding:0 12px; border:1.5px solid rgba(11,19,32,.15); margin-left:8px; }
.fe-alpha-all.is-selected { background:#0B2A4A; color:#fff; border-color:#0B2A4A; }

/* --- Contenido con grupos --- */
.fe-autores-content { position:relative; transition:opacity .2s; }
.fe-autores-content.fe-autores-loading { opacity:.4; pointer-events:none; }

/* Spinner de carga */
.fe-autores-content.fe-autores-loading::after { content:''; position:absolute; top:40px; left:50%; transform:translateX(-50%); width:32px; height:32px; border-radius:50%; border:3px solid rgba(0,98,255,.15); border-top-color:#0062FF; animation:fe-spin .7s linear infinite; }
@keyframes fe-spin { 
  to { transform:translateX(-50%) rotate(360deg); } 
}

/* Grupo de letra */
.fe-autores-group { margin-bottom:52px; }
.fe-autores-group h2.fe-autores-group-letter { font-family:'Publico', Georgia, serif; font-size:48px; line-height:1; color:var(--e-global-color-primary); margin:0 0 24px; padding-bottom:12px; border-bottom:1px solid var(--e-global-color-primary); }
.fe-autores-group-grid { display:grid; grid-template-columns:repeat(5, minmax(0, 1fr)); gap:36px 28px; align-items:start; }
.fe-autores-group-grid .fe-author-tile:hover { color:var(--e-global-color-primary); }

/* Sin resultados */
.fe-autores-no-results { text-align:center; padding:60px 0; font-size:15px; color:#8a8f99; }

/* Responsive */
@media (max-width:1199.98px) { 
  .fe-autores-group-grid { grid-template-columns:repeat(4, minmax(0, 1fr)); }
}
@media (max-width:991.98px) { 
  .fe-autores-group-grid { grid-template-columns:repeat(3, minmax(0, 1fr)); }
  .fe-autores-alpha-nav { gap:3px 2px; }
  .fe-alpha-btn { min-width:30px; height:30px; font-size:12px; }
}
@media (max-width:575.98px) { 
  .fe-autores-group-grid { grid-template-columns:repeat(2, minmax(0, 1fr)); gap:24px 16px; }
  .fe-autores-search-wrap { max-width:100%; }
}

[type=button].fe-alpha-btn { color:var(--e-global-color-primary); padding:.5rem .75rem; border-color:var(--e-global-color-primary); }
[type=button].fe-alpha-btn:focus, [type=button].fe-alpha-btn:active, [type=button].fe-alpha-btn.is-selected { color:#FFF; background-color:var(--e-global-color-primary); border-color:var(--e-global-color-primary); }


/* Productos Relacionados */
/* =====================================================
   LIBRO DETALLE – Publicaciones relacionadas
   Fuente:styles.css de Camila Bustamante
   Destino:/wp-content/themes/fondoeditorial/css/fe-related-products.css
             (o pegar en style.css del child theme)
   ===================================================== */

/*.fe-related__inner { max-width:1320px; margin:0 auto; padding:0 24px; }*/
.fe-related__header { margin-bottom:34px; }
.fe-related__title { font-family:'Publico', Georgia, serif; font-size:40px; line-height:1.05; color:#0b1320; }
.fe-related__grid { display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:24px; }
.fe-related-card { display:flex; align-items:flex-start; gap:22px; }
.fe-related-card__thumb { display:block; width:120px; aspect-ratio:2/3; flex:0 0 120px; border-radius:8px; overflow:hidden; background:#cfcfcf; }
.fe-related-card__thumb img { display:block; width:100%; height:100%; object-fit:fill; }
.fe-related-card__body { flex:1 1 auto; min-width:0; }
.fe-related-card h3.fe-related-card__name { font-size:15px; line-height:1.25; margin:0 0 4px; color:#0b1320; }
.fe-related-card h3.fe-related-card__name a { color:inherit; text-decoration:none; }
.fe-related-card h3.fe-related-card__name a:hover { text-decoration:underline; }
.fe-related-card .fe-related-card__authors { margin-bottom:12px; font-size:13px; line-height:1.35; }
.fe-related-card .fe-related-card__authors a { font-weight:400; color:#0b56c7; text-decoration:none; }
.fe-related-card .fe-related-card__authors a:hover { text-decoration:underline; }
.fe-related-card__prices { display:flex; align-items:baseline; gap:10px; margin-bottom:14px; }
.fe-related-card__old { color:#8a8f99; text-decoration:line-through; font-size:14px; }
.fe-related-card__new { color:#0b1320; font-weight:400; font-size:14px; }
.fe-related-card__btn { display:inline-flex;  display:none; align-items:center; gap:10px; border:2px solid #0b56c7; color:#0b56c7; background:transparent; padding:10px 14px; border-radius:10px; font-weight:700; font-size:14px; line-height:1; text-decoration:none; }
.fe-related-card__btn:hover { background:rgba(11, 86, 199, 0.08); color:#0b56c7; }
.fe-related-card__btnicon { display:inline-flex; width:26px; height:26px; align-items:center; justify-content:center; border-radius:8px; border:2px solid #0b56c7; }

@media (max-width:1199px) { 
  .fe-related__grid { grid-template-columns:repeat(2, minmax(0, 1fr)); }
}

@media (max-width:599px) { 
  .fe-related__grid { grid-template-columns:1fr; }
  .fe-related-card { gap:14px; }
  .fe-related-card__thumb { width:96px; flex-basis:96px; }
  .fe-related-card__thumb img { height:132px; }
}

/* =====================================================
   USER MENU DROPDOWN
   ===================================================== */
.fe-user-dropdown { position:relative; display:inline-flex; align-items:center; }
.fe-user-icon { color:#fff !important; padding:0; display:flex; align-items:center; line-height:1; }
.fe-user-icon:hover, .fe-user-icon:focus { color:var(--e-global-color-primary) !important; }
.fe-user-menu { display:none; position:absolute; top:calc(100% + 12px); right:0; background:#fff; border-radius:8px; box-shadow:0 4px 24px rgba(0,0,0,.13); list-style:none; margin:0; padding:8px 0; min-width:210px; z-index:99999; }
.fe-user-menu.is-open { display:block; }
.fe-user-menu__header { border-bottom:1px solid #eef0f3; margin-bottom:4px; }
.fe-user-name { display:block; padding:10px 20px 12px; font-size:13px; color:#6c7a89; font-family:'Akzidenz Grotesk Pro', Arial, sans-serif; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:190px; }
.fe-user-menu li a { display:block; padding:10px 20px; color:#0B1320; text-decoration:none; font-size:14px; font-family:'Akzidenz Grotesk Pro', Arial, sans-serif; white-space:nowrap; transition:background .15s, color .15s; }
.fe-user-menu li a:hover,
.fe-user-menu li a:focus { background:#f5f7fa; color:#0062FF; }
.fe-user-menu__logout { color:#c0392b !important; }
.fe-user-menu__logout:hover,
.fe-user-menu__logout:focus { background:#fff5f5 !important; color:#a93226 !important; }
.fe-user-menu__divider { border-top:1px solid #eef0f3; margin:6px 0; }

.elementor-menu-cart__toggle .elementor-button { padding:0; }

.elementor-menu-cart--items-indicator-bubble .elementor-menu-cart__toggle .elementor-button-icon .elementor-button-icon-qty[data-counter] { font-family:"Akzidenz Grotesk Pro", Sans-serif !important; }

/* Search */
.elementor-widget-shortcode .dgwt-wcas-style-pirx.dgwt-wcas-style-pirx-compact .dgwt-wcas-sf-wrapp { border-radius:20px 20px 0 0; }
html:not(.dgwt-wcas-overlay-mobile-on) .elementor-widget-shortcode .dgwt-wcas-style-pirx.dgwt-wcas-style-pirx-compact .dgwt-wcas-sf-wrapp input[type=search].dgwt-wcas-search-input { box-shadow:none; }

/* Modo Vacaciones */
.fe-btn-sbs { display:inline-flex; gap:5px; padding:12px 20px; background-color:#219b69; color:#FFF !important; font-weight:700 !important; font-size:16px; text-decoration:none; border-radius:6px; transition:background-color 0.2s ease; }
.fe-btn-sbs span { display:block; width:100px; height:26px; content:''; font-size:0; color:transparent; background:url('assets/img/logo-sbs-libreria.png') no-repeat; background-size:cover; }
.fe-btn-sbs:hover { background-color:#1a7c54; }

/* Filter Everything */

.widget_wpc_filters_widget .wpc-filter-title { font-family:'Publico', Georgia, serif; }
.widget_wpc_filters_widget .wpc-filters-main-wrap li.wpc-term-item { margin-bottom:4px; }
.widget_wpc_filters_widget .wpc-filters-main-wrap li.wpc-term-item label { font-size:13px; }

.fe-alerta-ebook {
    background-color: #f0f7ff;
    border-left: 4px solid #0062FF;
    padding: 15px 20px;
    margin: 0 0 10px;
    border-radius: 4px;
}
.fe-alerta-ebook p {
    margin-bottom:0;
    color: #0b2a4a;
}
.fe-alerta-ebook a { font-weight:bold; color:var(--e-global-color-primary); }

.onsale { display:none !important; }