/*
Theme Name: Cruz del Sur
Theme URI: https://edicionescruzdelsur.com.uy
Description: Tema premium de Ediciones Cruz del Sur (editorial uruguaya desde 1987). Tema hijo de Storefront: estetica azul/dorado/crema con Playfair Display + Inter, sobre el motor de WooCommerce + MercadoPago.
Author: Ediciones Cruz del Sur
Template: storefront
Version: 1.0.0
Text Domain: cruzdelsur
*/

/* ═══════════════════════════════════════════════════════════
   1. MARCA — variables
   ═══════════════════════════════════════════════════════════ */
:root{
  --azul:#0D2B4E;
  --azul-claro:#1a3a5c;
  --azul-hondo:#071a30;
  --dorado:#C9A84C;
  --dorado-claro:#e6c66a;
  --crema:#F7F3ED;
  --negro:#0a0a0a;
  --tinta:#2b2b2b;
}

/* ═══════════════════════════════════════════════════════════
   2. TIPOGRAFIA
   ═══════════════════════════════════════════════════════════ */
body,
.woocommerce-page,
button, input, select, textarea, .button{
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  color:var(--tinta);
  -webkit-font-smoothing:antialiased;
}
body{ background:var(--crema); line-height:1.65; }

h1,h2,h3,h4,
.entry-title,
.product_title,
.section-title,
.storefront-product-section-title{
  font-family:'Playfair Display',Georgia,serif !important;
  font-weight:900;
  color:var(--azul);
  letter-spacing:-.01em;
  line-height:1.1;
}
h1,.entry-title,.product_title{ font-size:clamp(2rem,4vw,3.2rem); }

/* ═══════════════════════════════════════════════════════════
   3. ENLACES Y ACENTOS
   ═══════════════════════════════════════════════════════════ */
a{ color:var(--azul); text-decoration:none; transition:color .2s; }
a:hover{ color:var(--dorado); }

/* ═══════════════════════════════════════════════════════════
   4. BOTONES (incluye "Agregar al carrito" y checkout)
   ═══════════════════════════════════════════════════════════ */
button, .button, input[type=submit],
.woocommerce a.button, .woocommerce button.button,
.woocommerce input.button, .woocommerce #respond input#submit,
.woocommerce a.button.alt, .woocommerce button.button.alt,
.woocommerce input.button.alt, .woocommerce #place_order{
  background:var(--azul) !important;
  color:var(--crema) !important;
  border:none !important;
  border-radius:8px !important;
  font-family:'Inter',sans-serif !important;
  font-weight:700 !important;
  letter-spacing:.04em;
  text-transform:uppercase;
  font-size:13px !important;
  padding:.95em 1.8em !important;
  transition:transform .15s ease, filter .2s ease, background .2s ease !important;
  box-shadow:0 6px 18px rgba(13,43,78,.18) !important;
}
button:hover, .button:hover, input[type=submit]:hover,
.woocommerce a.button:hover, .woocommerce button.button:hover,
.woocommerce input.button:hover, .woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover, .woocommerce #place_order:hover{
  background:var(--azul-claro) !important;
  transform:translateY(-1px);
  filter:none;
}
/* CTA dorada para acciones principales (comprar / finalizar) */
.woocommerce a.button.alt, .woocommerce button.button.alt,
.woocommerce input.button.alt, .woocommerce #place_order,
.single_add_to_cart_button{
  background:var(--dorado) !important;
  color:var(--azul) !important;
}
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover,
.woocommerce #place_order:hover, .single_add_to_cart_button:hover{
  background:var(--dorado-claro) !important;
  color:var(--azul) !important;
}
button:active, .button:active, .woocommerce #place_order:active{ transform:scale(.98); }

/* ═══════════════════════════════════════════════════════════
   5. CABECERA
   ═══════════════════════════════════════════════════════════ */
.site-header{
  background:var(--azul) !important;
  border-bottom:3px solid var(--dorado);
  padding-top:1.1em; padding-bottom:1.1em;
}
.site-header .site-title a,
.site-header a,
.site-branding .site-title a{ color:var(--crema) !important; }
.main-navigation ul li a{ color:var(--crema) !important; font-weight:600; letter-spacing:.02em; }
.main-navigation ul li a:hover{ color:var(--dorado) !important; }
.site-header-cart .cart-contents,
.site-header .widget_shopping_cart .total{ color:var(--crema) !important; }

/* ═══════════════════════════════════════════════════════════
   6. TARJETAS DE PRODUCTO
   ═══════════════════════════════════════════════════════════ */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  background:#fff;
  border:1px solid rgba(13,43,78,.08);
  border-radius:12px;
  padding:14px 14px 20px;
  transition:transform .25s ease, box-shadow .25s ease;
}
.woocommerce ul.products li.product:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 40px rgba(13,43,78,.14);
}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family:'Playfair Display',Georgia,serif;
  font-weight:700; color:var(--azul); font-size:1.05rem;
}
.woocommerce ul.products li.product .price,
.woocommerce div.product p.price{ color:var(--azul) !important; font-weight:800; }
.woocommerce span.onsale{
  background:var(--dorado); color:var(--azul);
  font-weight:800; border-radius:50px;
}
/* FIX: botones "Comprar/Añadir" del listado salían cortados en vertical */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart,
.woocommerce ul.products li.product a.add_to_cart_button{
  display:block !important; width:100% !important; text-align:center;
  white-space:nowrap !important; word-break:normal !important;
  padding:.72em 1em !important; font-size:12px !important; letter-spacing:.03em !important;
  text-transform:none !important; margin-top:8px !important;
}

/* ─── Tienda a ancho completo (sin barra lateral) ─── */
.woocommerce-page #secondary,.woocommerce #secondary{ display:none !important; }
.woocommerce-page .content-area,.woocommerce .content-area,
.storefront-full-width-content .content-area{ width:100% !important; margin:0 !important; float:none !important; }
.woocommerce-page .col-full,.woocommerce .col-full{ max-width:1200px; }

/* ═══════════════════════════════════════════════════════════
   7. PIE
   ═══════════════════════════════════════════════════════════ */
.site-footer{
  background:var(--azul-hondo) !important;
  color:rgba(247,243,237,.8);
  border-top:3px solid var(--dorado);
}
.site-footer a{ color:rgba(247,243,237,.85) !important; }
.site-footer a:hover{ color:var(--dorado) !important; }

/* ═══════════════════════════════════════════════════════════
   8. DETALLES
   ═══════════════════════════════════════════════════════════ */
.woocommerce-message, .woocommerce-info{ border-top-color:var(--dorado) !important; }
.woocommerce-message::before, .woocommerce-info::before{ color:var(--dorado) !important; }
::selection{ background:var(--dorado); color:var(--azul); }

/* ═══════════════════════════════════════════════════════════
   9. PORTADA (front-page.php)
   ═══════════════════════════════════════════════════════════ */
.cds-home{ overflow-x:hidden; }
.cds-home .cds-eyebrow{
  font:700 11px/1 'Inter',sans-serif; letter-spacing:4px; text-transform:uppercase;
  color:var(--dorado); margin:0 0 18px;
}
.cds-eyebrow-dark{ color:var(--dorado); }
.cds-btn{
  display:inline-block; border-radius:8px; font:700 13px 'Inter',sans-serif;
  letter-spacing:.05em; text-transform:uppercase; padding:15px 30px; cursor:pointer;
  transition:transform .15s ease, background .2s ease, color .2s ease; text-decoration:none;
}
.cds-btn:hover{ transform:translateY(-2px); }
.cds-btn-gold{ background:var(--dorado); color:var(--azul); }
.cds-btn-gold:hover{ background:var(--dorado-claro); color:var(--azul); }
.cds-btn-ghost{ background:transparent; color:var(--crema); border:1.5px solid rgba(247,243,237,.35); }
.cds-btn-ghost:hover{ border-color:var(--dorado); color:var(--dorado); }
.cds-btn-blue{ background:var(--azul); color:var(--crema); }
.cds-btn-blue:hover{ background:var(--azul-claro); color:var(--crema); }

/* HERO */
.cds-hero{
  background:linear-gradient(135deg,var(--azul) 0%,var(--azul-claro) 55%,var(--azul-hondo) 100%);
  color:var(--crema); padding:0;
}
.cds-hero-inner{
  max-width:1200px; margin:0 auto; padding:clamp(60px,9vw,120px) 24px;
  display:grid; grid-template-columns:1.15fr .85fr; gap:56px; align-items:center;
}
.cds-hero-h{
  font-family:'Playfair Display',Georgia,serif; font-weight:900; color:var(--crema) !important;
  font-size:clamp(2.4rem,5.2vw,4.1rem); line-height:1.05; margin:0 0 22px; letter-spacing:-.015em;
}
.cds-hero-h em{ font-style:italic; color:var(--dorado); }
.cds-hero-sub{
  font:300 clamp(15px,1.5vw,18px)/1.7 'Inter',sans-serif;
  color:rgba(247,243,237,.82); max-width:30em; margin:0 0 34px;
}
.cds-hero-cta{ display:flex; gap:14px; flex-wrap:wrap; }

/* HERO arte: marco + Cruz del Sur */
.cds-hero-art{ display:flex; justify-content:center; }
.cds-art-frame{
  position:relative; width:100%; max-width:340px; aspect-ratio:4/5;
  border:1px solid rgba(201,168,76,.45); border-radius:6px;
  background:rgba(255,255,255,.03);
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  padding:30px; text-align:center;
}
.cds-art-frame::before{
  content:""; position:absolute; inset:9px; border:1px solid rgba(201,168,76,.22); border-radius:3px;
}
.cds-cross{ width:62%; height:auto; margin-bottom:10px; }
.cds-star{ transform-box:fill-box; transform-origin:center; animation:cdsTwinkle 3.4s ease-in-out infinite; animation-delay:var(--d); }
@keyframes cdsTwinkle{ 0%,100%{opacity:.55} 50%{opacity:1} }
.cds-art-quote{
  font-family:'Playfair Display',Georgia,serif; font-style:italic; font-weight:700;
  font-size:1.32rem; line-height:1.35; color:var(--crema); margin:6px 0 14px;
}
.cds-art-sign{ font:700 9px 'Inter',sans-serif; letter-spacing:3px; text-transform:uppercase; color:var(--dorado); margin:0; }

/* BANDA */
.cds-band{ background:var(--dorado); color:var(--azul); }
.cds-band-inner{
  max-width:1200px; margin:0 auto; padding:16px 24px;
  display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:12px;
  font:700 12px 'Inter',sans-serif; letter-spacing:.06em; text-transform:uppercase;
}
.cds-band-inner i{ opacity:.5; font-style:normal; }

/* SECCIONES */
.cds-section{ max-width:1200px; margin:0 auto; padding:clamp(56px,7vw,90px) 24px; }
.cds-section-alt{ max-width:none; background:#fff; }
.cds-section-alt > *{ max-width:1200px; margin-left:auto; margin-right:auto; }
.cds-section-head{ text-align:center; margin-bottom:46px; }
.cds-section-title{
  font-family:'Playfair Display',Georgia,serif; font-weight:900; color:var(--azul);
  font-size:clamp(2rem,3.6vw,2.9rem); margin:0 0 12px; letter-spacing:-.01em;
}
.cds-section-lead{ font:300 16px/1.6 'Inter',sans-serif; color:#5a6472; max-width:34em; margin:0 auto; }
.cds-section-cta{ text-align:center; margin-top:44px; }

/* COLECCIONES (salida de [product_categories]) */
.cds-colecciones ul.products{ display:grid; grid-template-columns:repeat(4,1fr); gap:22px; margin:0; padding:0; list-style:none; }
.cds-colecciones li.product-category{ margin:0 !important; width:auto !important; float:none !important; text-align:center; }
.cds-colecciones li.product-category a{
  display:block; background:var(--azul); border-radius:12px; padding:34px 18px; color:var(--crema);
  transition:transform .25s ease, box-shadow .25s ease; border:1px solid rgba(201,168,76,.25);
}
.cds-colecciones li.product-category a:hover{ transform:translateY(-5px); box-shadow:0 18px 40px rgba(13,43,78,.22); }
.cds-colecciones li.product-category h2,
.cds-colecciones li.product-category .woocommerce-loop-category__title{
  font-family:'Playfair Display',Georgia,serif !important; color:var(--crema) !important;
  font-size:1.25rem !important; margin:0 !important; padding:0 !important;
}
.cds-colecciones li.product-category .count{
  display:block; margin-top:8px; color:var(--dorado); font:700 12px 'Inter',sans-serif;
  letter-spacing:.05em; background:none !important;
}
.cds-colecciones li.product-category img{ display:none; } /* tiles tipográficos, sin imagen de categoría */

/* DESTACADOS (salida de [products]) */
.cds-destacados ul.products{ display:grid !important; grid-template-columns:repeat(4,1fr); gap:24px; margin:0; }
.cds-destacados ul.products li.product{ width:auto !important; float:none !important; margin:0 !important; }

/* NOSOTROS */
.cds-nosotros{ background:var(--azul-hondo); color:var(--crema); }
.cds-nosotros-inner{
  max-width:1100px; margin:0 auto; padding:clamp(56px,7vw,90px) 24px;
  display:grid; grid-template-columns:1.1fr .9fr; gap:54px; align-items:center;
}
.cds-nos-h{
  font-family:'Playfair Display',Georgia,serif; font-weight:900; color:var(--crema) !important;
  font-size:clamp(1.9rem,3.4vw,2.7rem); line-height:1.1; margin:0 0 22px;
}
.cds-nos-h em{ font-style:italic; color:var(--dorado); }
.cds-nos-text p{ color:rgba(247,243,237,.8); font:300 16px/1.75 'Inter',sans-serif; margin:0 0 16px; }
.cds-nos-stats{ display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.cds-stat{ border:1px solid rgba(201,168,76,.3); border-radius:12px; padding:26px 20px; text-align:center; }
.cds-stat b{ display:block; font-family:'Playfair Display',Georgia,serif; font-size:2.4rem; font-weight:900; color:var(--dorado); line-height:1; }
.cds-stat span{ display:block; margin-top:8px; font:600 12px 'Inter',sans-serif; letter-spacing:.04em; color:rgba(247,243,237,.7); text-transform:uppercase; }

/* RESPONSIVE */
@media(max-width:900px){
  .cds-hero-inner,.cds-nosotros-inner{ grid-template-columns:1fr; gap:40px; }
  .cds-hero-art{ order:-1; }
  .cds-art-frame{ max-width:260px; aspect-ratio:4/4.4; }
  .cds-colecciones ul.products,.cds-destacados ul.products{ grid-template-columns:repeat(2,1fr) !important; }
}
@media(max-width:520px){
  .cds-hero-cta{ flex-direction:column; }
  .cds-hero-cta .cds-btn{ text-align:center; }
  .cds-band-inner i{ display:none; }
  .cds-nos-stats{ grid-template-columns:1fr 1fr; }
}
@media (prefers-reduced-motion:reduce){ .cds-star{ animation:none; opacity:.85; } }

/* ═══════════════════════════════════════════════════════════
   10. PÁGINAS INTERNAS (tienda · producto · carrito · checkout)
   ═══════════════════════════════════════════════════════════ */

/* Título de la tienda / categoría, centrado con acento dorado */
.woocommerce .woocommerce-products-header,
.woocommerce-page .woocommerce-products-header{ text-align:center; margin-bottom:40px; }
.woocommerce-products-header__title,
.woocommerce-products-header .page-title{
  color:var(--azul) !important; position:relative; padding-bottom:20px; margin:0 !important;
}
.woocommerce-products-header__title::after{
  content:""; display:block; width:62px; height:3px; background:var(--dorado); margin:20px auto 0;
}
.term-description{ color:#5a6472; max-width:46em; margin:0 auto 30px; text-align:center; line-height:1.7; }

/* Migas, conteo y orden */
.woocommerce .woocommerce-breadcrumb{
  font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:#8a929c; margin-bottom:26px;
}
.woocommerce .woocommerce-breadcrumb a{ color:var(--azul); }
.woocommerce .woocommerce-result-count{ color:#8a929c; font-size:13px; }
.woocommerce .woocommerce-ordering select,
.woocommerce select, .woocommerce-page select{
  border:1px solid rgba(13,43,78,.18) !important; border-radius:8px; padding:9px 12px; background:#fff;
}

/* Paginación (saca el violeta por defecto) */
.woocommerce nav.woocommerce-pagination ul{ border:none; display:flex; gap:6px; justify-content:center; }
.woocommerce nav.woocommerce-pagination ul li{ border:none; margin:0; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
  border:1px solid rgba(13,43,78,.15) !important; border-radius:8px; color:var(--azul) !important;
  padding:.55em .95em; background:#fff;
}
.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li a:hover{
  background:var(--azul) !important; color:var(--crema) !important; border-color:var(--azul) !important;
}

/* ── Ficha de producto ── */
.woocommerce div.product .product_title{ color:var(--azul); margin-bottom:.3em; }
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce div.product p.price ins{
  color:var(--azul) !important; font-family:'Playfair Display',Georgia,serif; font-weight:900; font-size:1.9rem;
}
.woocommerce div.product form.cart div.quantity input.qty{
  border:1px solid rgba(13,43,78,.2); border-radius:8px; padding:.55em; height:auto;
}
.woocommerce div.product .woocommerce-tabs ul.tabs{ padding:0; }
.woocommerce div.product .woocommerce-tabs ul.tabs::before{ border-color:rgba(13,43,78,.12); }
.woocommerce div.product .woocommerce-tabs ul.tabs li{
  background:transparent; border:none; border-radius:0;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{ color:#8a929c; font-weight:600; text-transform:uppercase; font-size:12px; letter-spacing:.05em; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{ color:var(--azul); }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{ border-bottom:2px solid var(--dorado); }
.stock.in-stock{ color:#2e7d32; font-weight:600; }

/* ── Tablas (carrito / pedido) ── */
.woocommerce table.shop_table{
  border:1px solid rgba(13,43,78,.1) !important; border-radius:12px; overflow:hidden;
}
.woocommerce table.shop_table thead th{ background:var(--azul); color:var(--crema); border:none; }
.woocommerce-cart table.cart img{ border-radius:6px; }
.woocommerce .cart_totals h2,
.woocommerce-checkout #order_review_heading,
.woocommerce-checkout h3{ color:var(--azul); }

/* ── Checkout / formularios ── */
.woocommerce form .form-row label{ color:var(--azul); font-weight:600; font-size:13px; }
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce-page form .form-row input.input-text,
.col2-set #billing_address_1{
  border:1px solid rgba(13,43,78,.2) !important; border-radius:8px !important; padding:12px 14px !important;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus{ border-color:var(--dorado) !important; outline:none; }
.woocommerce-checkout #payment{ background:var(--crema); border-radius:12px; }
.woocommerce-checkout #payment ul.payment_methods{ border-bottom-color:rgba(13,43,78,.1); }
.woocommerce-info, .woocommerce-message{ border-radius:8px; }

/* Botón de cantidad +/- si aparece, y “seguir comprando” */
.woocommerce a.button.wc-backward{ background:transparent !important; color:var(--azul) !important; border:1.5px solid var(--azul) !important; box-shadow:none !important; }

@media(max-width:768px){
  .woocommerce-products-header__title{ padding-bottom:14px; }
}
