/* WordPress glue for the RETO theme — keeps assets/css/reto.css pristine. */

/* WP menus render as flat <a> via reto_render_menu(); keep the flex row. */
.nav__links { display: flex; align-items: center; gap: 4px; }
.nav__links .current-menu-item > a,
.nav__links a.is-current { color: var(--reto-yellow); }
.nav__brand { max-height: 46px; flex-shrink: 0; }
.nav__brand .custom-logo-link { display: inline-flex; align-items: center; line-height: 0; }
/* Logo: altura fija, ancho proporcional. max-width:none anula el img{max-width:100%}
   global (que al estrecharse la barra recortaba el ancho y achataba el logo);
   object-fit:contain blinda la relación de aspecto pase lo que pase. */
.nav__brand img, .nav__brand .nav__logo, .nav__brand .custom-logo {
  height: 46px !important; width: auto !important; max-height: 46px !important;
  max-width: none !important; object-fit: contain; display: block; }
@media (max-width: 480px) {
  .nav__brand img, .nav__brand .nav__logo, .nav__brand .custom-logo { max-height: 38px !important; height: 38px !important; }
}

/* sticky nav offset under the WP admin bar */
.admin-bar .nav { top: 32px; }
@media (max-width: 782px) { .admin-bar .nav { top: 46px; } }

/* product teaser images wired in front-page */
.product .pmedia .pimg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }

/* ---- WooCommerce → design language ---- */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product { margin: 0 0 20px; text-align: left; }
.woocommerce ul.products li.product .price { font-family: var(--font-display); color: var(--reto-yellow-dark); font-weight: 400; }
.woocommerce a.button, .woocommerce button.button,
.woocommerce #respond input#submit, .woocommerce .button {
  font-family: var(--font-head); text-transform: uppercase; letter-spacing: .04em;
  background: var(--reto-yellow); color: var(--court-black);
  border: 2px solid var(--reto-yellow); border-radius: 0; padding: 14px 24px;
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0 100%);
}
.woocommerce a.button:hover, .woocommerce button.button:hover,
.woocommerce .button:hover { background: var(--court-black); color: var(--reto-yellow); }
.woocommerce span.onsale { background: var(--court-black); color: var(--reto-yellow); border-radius: 0; }
.woocommerce .star-rating span { color: var(--reto-yellow-dark); }
.woocommerce-message, .woocommerce-info { border-top-color: var(--reto-yellow); }

/* ---- Contact Form 7 → lenguaje de diseño ---- */
.wpcf7 .wpcf7-form-control-wrap { display: block; }
.wpcf7-form .input, .wpcf7-form .select, .wpcf7-form textarea.input { width: 100%; }
.wpcf7 .wpcf7-not-valid-tip { color: #c0392b; font-family: 'Archivo', sans-serif; font-size: 12px; margin-top: 4px; }
.wpcf7 form .wpcf7-response-output {
  border-width: 2px; border-radius: 0; margin: 18px 0 0; padding: 12px 16px;
  font-family: var(--font-head); text-transform: uppercase; font-size: 13px; letter-spacing: .04em;
}
.wpcf7 form.sent .wpcf7-response-output { border-color: #1F8A5B; color: #1F8A5B; }
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.failed .wpcf7-response-output { border-color: #c0392b; color: #c0392b; }

/* editor content (the_content) typography */
.entry { font-size: 17px; line-height: 1.7; color: var(--g333); }
.entry > * { margin: 0 0 1.1em; }
.entry h2 { font-family: var(--font-display); text-transform: uppercase; font-size: clamp(28px,4vw,44px); line-height: .95; color: var(--ink); margin-top: 1.4em; }
.entry h3 { font-family: var(--font-head); text-transform: uppercase; font-size: 22px; color: var(--ink); margin-top: 1.3em; }
.entry a { color: var(--ink); text-decoration: underline; text-decoration-color: var(--reto-yellow); text-decoration-thickness: 3px; }
.entry img { height: auto; }
.entry blockquote { border-left: 6px solid var(--reto-yellow); margin-left: 0; padding: 4px 0 4px 22px; font-family: var(--font-head); text-transform: uppercase; font-size: 20px; color: var(--ink); }
.entry ul, .entry ol { padding-left: 22px; }

/* CTA al final de una noticia (single.php, meta _reto_news_cta) */
.news-cta { display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap;
  border: 2px solid var(--court-black); background: var(--soft-white); padding: 26px 28px; margin-top: 8px; }
@media (max-width: 600px) { .news-cta { flex-direction: column; align-items: flex-start; } }
