/*
Theme Name: WP Bootstrap Starter Child
Theme URI: https://quickcomputers.net
Description: WP Bootstrap Starter Child Theme
Author: Ruben Molina
Author URI: https://quickcomputers.net
Template: wp-bootstrap-starter
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
Tags: one-column, two-columns, right-sidebar, flexible-header, accessibility-ready, custom-colors, custom-header, custom-menu, custom-logo, editor-style, featured-images, footer-widgets, post-formats, rtl-language-support, sticky-post, theme-options, threaded-comments, translation-ready
Text Domain: wp-bootstrap-starter-child
*/

/* -----------------------------------------------------------------------------
   TRESORS – estilos base
   NOTA: pensado para cargarse DESPUÉS de Bootstrap (sobreescribe utilidades)
   ---------------------------------------------------------------------------*/

/* ============ Variables de diseño ============ */
:root {
  /* Colores marca */
  --tsr-bg: #fffdf8;
  --tsr-ink: #1f1b16;
  --tsr-muted: #6b655e;

  --tsr-primary: #b89b5e;      /* dorado */
  --tsr-primary-600: #a58651;
  --tsr-primary-700: #8c7244;

  --tsr-accent: #3a3a3a;       /* gris carbón */
  --tsr-accent-600: #2e2e2e;

  --tsr-sand: #f3eadc;         /* arenas suaves */
  --tsr-sand-200: #f7f1e8;
  --tsr-sand-300: #efe6d8;

  --tsr-white: #ffffff;
  --tsr-border: #e6e0d6;
  --tsr-success: #2fa97c;
  --tsr-danger: #d24c4c;

  /* Tipografía */
  --tsr-font-serif: "Playfair Display", ui-serif, Georgia, "Times New Roman", serif;
  --tsr-font-sans: "Inter", ui-sans-serif, -apple-system, "Segoe UI", Roboto, Arial, "Helvetica Neue", sans-serif;

  /* Radios / sombras */
  --tsr-radius: 14px;
  --tsr-shadow-sm: 0 6px 20px rgba(0,0,0,.06);
  --tsr-shadow-md: 0 10px 30px rgba(0,0,0,.10);
}

/* ============ Reset sutil y body ============ */
html, body { height: 100%; }
body {
  color: var(--tsr-ink);
  font-family: var(--tsr-font-sans);
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* ============ Utilidades genéricas (fuentes / colores / fondos) ============ */
/* Tipos */
.font-sans   { font-family: var(--tsr-font-sans) !important; }
.font-serif  { font-family: var(--tsr-font-serif) !important; }
.h1, h1 { letter-spacing:.2px; }
.h2, h2 { letter-spacing:.2px; }
.h3, h3 { letter-spacing:.2px; }

/* Pesos */
.fw-regular  { font-weight: 400 !important; }
.fw-medium   { font-weight: 500 !important; }
.fw-semibold { font-weight: 600 !important; }
.fw-bold     { font-weight: 700 !important; }
.fa-xxl{ font-size:40pt; }

/* Paleta texto */
.text-ink      { color: var(--tsr-ink) !important; }
.text-muted    { color: var(--tsr-muted) !important; }
.text-gold     { color: var(--tsr-primary) !important; }
.text-accent   { color: var(--tsr-accent) !important; }
.text-success  { color: var(--tsr-success) !important; }
.text-danger   { color: var(--tsr-danger) !important; }

/* Tamaños texto*/
.text-size-xxl { font-size: 43pt; }
.text-size-xl { font-size: 34pt; }

/* Fondos */
.bg-sand       { background: var(--tsr-sand) !important; }
.bg-sand-200   { background: var(--tsr-sand-200) !important; }
.bg-sand-300   { background: var(--tsr-sand-300) !important; }
.bg-ink        { background: var(--tsr-ink) !important; color: var(--tsr-white) !important; }
.bg-accent     { background: var(--tsr-accent) !important; color: var(--tsr-white) !important; }
.bg-white      { background: var(--tsr-white) !important; }

/* Bordes / radios */
.rounded-lg    { border-radius: var(--tsr-radius) !important; }
.border-sand   { border-color: var(--tsr-border) !important; }

/* Sombras */
.shadow-sm     { box-shadow: var(--tsr-shadow-sm) !important; }
.shadow-md     { box-shadow: var(--tsr-shadow-md) !important; }

/* Separadores finos */
.hr-soft {
  border: 0;
  border-top: 1px solid var(--tsr-border);
  margin: 1.5rem 0;
}

/* Navbar */ 
header{
	background:var(--tsr-ink)!important;
}
.navbar-brand {
  font-family: var(--tsr-font-serif);
  color: var(--tsr-white);
  letter-spacing:.5px;
}
.navbar-brand img{
	width:185px;
}
.navbar .nav-link {
  color: rgba(255,255,255,.85);
  transition: color .2s ease;
}
.navbar .nav-link:hover,
.navbar .nav-link:focus { color: var(--tsr-white); }

/* Botones */
.btn {
  border-radius: calc(var(--tsr-radius) - 6px);
  font-weight: 600;
  letter-spacing:.2px;
  padding: .65rem 1.1rem;
}
.btn-primary {
  background: var(--tsr-primary);
  border-color: var(--tsr-primary);
  color: #1e1a14;
}
.btn-primary:hover,
.btn-primary:focus {
  background: var(--tsr-primary-600);
  border-color: var(--tsr-primary-600);
  color: #1a1712;
}
.btn-outline-primary {
  color: var(--tsr-primary);
  border-color: var(--tsr-primary);
}
.btn-outline-primary:hover,
.btn-outline-primary:focus {
  background: var(--tsr-primary);
  border-color: var(--tsr-primary);
  color: #1e1a14;
}
.btn-dark {
  background: var(--tsr-accent);
  border-color: var(--tsr-accent);
}
.btn-dark:hover { background: var(--tsr-accent-600); border-color: var(--tsr-accent-600); }

/* Cards */
.card {
  border: 1px solid var(--tsr-border);
  border-radius: var(--tsr-radius);
  background: var(--tsr-white);
}
.card.border-0 { border: 0; }
.hero-card{
	overflow:hidden;
	display:flex;
	align-items:center;
	justify-content:center;
}
.hero-card.h-50{
	height:250px!important;
}
.hero-card.h-50:not(:last-child){
	margin-bottom:15px;
}
.hero-card.h-100{
	height:515px!important;
}
.hero-card img{
	height:100%;
	max-width:initial;
	width:auto;
}

/* List group (footer/menus) */
.list-group-item {
  border-color: var(--tsr-border);
  background: transparent;
  padding: .45rem .75rem;
}

/* Enlaces */
a { color: var(--tsr-accent); }
a:hover { color: var(--tsr-accent-600); text-decoration: none; }

/* Formularios */
.form-control,
.custom-select,
.input-group .form-control {
  border-radius: 10px;
  border-color: var(--tsr-border);
  background: #fff;
}
.form-control:focus,
.custom-select:focus {
  border-color: var(--tsr-primary);
  box-shadow: 0 0 0 .2rem rgba(184,155,94,.15);
}
.custom-control-input:checked ~ .custom-control-label::before {
  border-color: var(--tsr-primary);
  background-color: var(--tsr-primary);
}

/* Badges */
.badge-dark {
  background: var(--tsr-accent);
}
.badge-secondary {
  background: var(--tsr-sand-300);
  color: var(--tsr-ink);
}

/* Paginación */
.page-link {
  color: var(--tsr-accent);
  border-color: var(--tsr-border);
}
.page-item.active .page-link {
  background: var(--tsr-primary);
  border-color: var(--tsr-primary);
  color: #1e1a14;
}

/* ============ Bloques clave (secciones) ============ */
/* Hero */
article .lead { color: var(--tsr-muted); }
article .h2, article h2 { font-family: var(--tsr-font-serif); }
article h1, .display-4 {
  font-family: var(--tsr-font-serif);
  font-weight: 700;
}

/* Iconos (Font Awesome thin en tarjetas) */
.card i[class*="fa-"] {
  color: var(--tsr-primary);
  opacity: .9;
}

/* Footer */
footer .nav-link { color: var(--tsr-ink); opacity:.75; }
footer .nav-link:hover { opacity: 1; }
footer small { color: var(--tsr-muted); }

/* ============ WooCommerce mínimos ============ */
.woocommerce .products li.product {
  list-style: none;
  margin-bottom: 1.25rem;
}
.woocommerce .products li.product .price {
  color: var(--tsr-accent);
  font-weight: 600;
}
.woocommerce div.product .product_title {
  font-family: var(--tsr-font-serif);
  font-weight: 700;
}
.woocommerce div.product .woocommerce-tabs ul.tabs {
  border-color: var(--tsr-border);
}
.woocommerce .woocommerce-ordering .orderby,
.woocommerce .woocommerce-result-count { color: var(--tsr-muted); }

/* Sidebar tienda */
.woocommerce-sidebar .widget-title { font-weight: 700; font-size: .95rem; }
.woocommerce-sidebar .widget { border:1px solid var(--tsr-border); border-radius: var(--tsr-radius); padding: 1rem; background: var(--tsr-white); }

/* ============ Helpers responsivos ============ */
@media (max-width: 991.98px) {
  .btn { padding: .6rem 1rem; }
  .container-fluid > .row > [class*="col-"].mx-auto { padding: 0 16px; }
}
