/*
Theme Name: CIAO Cucina
Theme URI: https://ciaocucinabar.com
Description: Tema hijo a medida para CIAO Cucina — rediseño moderno manteniendo WooCommerce y el contenido. Hereda de restaurant-recipe-pro.
Author: CIAO Cucina
Template: restaurant-recipe-pro
Version: 1.2.3
Text Domain: ciao-cucina
*/

:root{
  --ciao-gold:#c9a55c;
  --ciao-gold-dark:#b3863c;
  --ciao-cream:#faf6ef;
  --ciao-ink:#2b2926;
  --ciao-muted:#8a857c;
}

/* ===== Tipografía ===== */
body, p, li, span, a, input, textarea, select, button, .menu li a{
  font-family:'Poppins', -apple-system, "Segoe UI", Roboto, sans-serif;
}
/* Fuente Playfair en TODOS los titulos (incluye spans del tema + enlaces de servicios) */
h1, h2, h3, h4, h5, h6,
h1 span, h2 span, h3 span, h4 span,
.banner-title, .widget-title, .widget-title span, .widgettitle, .widgettitle span,
.entry-title, .at-widget-title, .at-widget-title-wrapper h2, .at-widget-title-wrapper h2 span,
.single-item .title, .single-item .title span, .single-item .title a, .ciao-serv-a,
.accordion-title a{
  font-family:'Playfair Display', Georgia, serif !important;
}
.accordion-title a{ font-weight:600; font-size:18px; }
/* Color/peso SOLO en titulos base (NO en spans del tema, para respetar su color blanco original) */
h1, h2, h3, h4, h5, h6, .banner-title, .entry-title{
  font-weight:600;
  color:var(--ciao-ink);
  letter-spacing:.2px;
}
body{ color:var(--ciao-ink); font-size:16px; line-height:1.75; }
/* Formularios y botones: misma fuente del cuerpo (no heredan por defecto) */
input, textarea, select, button{ font-family:'Poppins', -apple-system, "Segoe UI", Roboto, sans-serif; }

/* Menu principal: color uniforme para todos los items (Productos apunta a /shop/ y el tema lo pintaba gris) */
.main-navigation .navbar-nav > li.menu-item > a{ color:#e6af4b !important; }
.main-navigation .navbar-nav > li.menu-item > a:hover{ color:#c9a55c !important; }
/* Puntos indicadores permanentes en TODOS los items (no solo el actual/hover) */
.main-navigation .navbar-nav > li.menu-item > a:before{
	position:absolute; left:0; right:0; width:100%; z-index:1; display:block;
	content:'\25CF\25CF\25CF'; bottom:-10px; margin:0 auto; text-align:center;
	font-size:11px; letter-spacing:4px; color:#e6af4b;
}
.main-navigation .navbar-nav > li.menu-item.menu-item-has-children > a:before{ content:''; }

/* ===== Color de marca ===== */
a{ color:var(--ciao-gold-dark); transition:color .2s ease; }
a:hover{ color:var(--ciao-gold); }
.primary-bg, .primary-color-bg, .at-primary-bg{ background-color:var(--ciao-gold) !important; }
.primary-color, .at-primary-color{ color:var(--ciao-gold) !important; }

/* ===== Botones ===== */
.at-btn, .at-btn-wrap > a, .button, button:not(.navbar-toggle):not(.menu-toggle),
input[type="submit"], .wpcf7-submit, .added_to_cart,
.single_add_to_cart_button, .woocommerce a.button, .woocommerce button.button{
  background:var(--ciao-gold) !important;
  color:#fff !important;
  border:none !important;
  border-radius:40px !important;
  padding:13px 34px !important;
  font-weight:500 !important;
  letter-spacing:.3px !important;
  box-shadow:0 5px 16px rgba(201,165,92,.32) !important;
  transition:transform .25s ease, background .25s ease, box-shadow .25s ease !important;
}
.at-btn:hover, .at-btn-wrap > a:hover, .button:hover, input[type="submit"]:hover,
.wpcf7-submit:hover, .single_add_to_cart_button:hover, .woocommerce a.button:hover{
  background:var(--ciao-gold-dark) !important;
  transform:translateY(-2px);
  box-shadow:0 8px 22px rgba(201,165,92,.45) !important;
}

/* ===== Títulos de sección con acento ===== */
.widget-title, .widgettitle{ font-size:36px !important; line-height:1.2 !important; margin-bottom:14px !important; }
.at-widget-title-wrapper, .wrapper.inner-main-title{ text-align:center; margin-bottom:34px; }
.at-widget-title-wrapper:after, .wrapper.inner-main-title:after{
  content:""; display:block; width:64px; height:3px; background:var(--ciao-gold);
  margin:16px auto 0; border-radius:2px;
}

/* ===== Ritmo de secciones ===== */
.at-widgets{ padding-top:80px !important; padding-bottom:80px !important; }

/* ===== Header ===== */
.site-header{ box-shadow:0 2px 22px rgba(0,0,0,.06); }
.menu li a{ font-weight:500; letter-spacing:.4px; }

/* ===== Inputs ===== */
input[type="text"], input[type="email"], input[type="tel"], textarea, .wpcf7-form-control{
  border-radius:10px !important; border:1px solid #e4ddd0 !important; padding:12px 14px !important;
}
input:focus, textarea:focus{ border-color:var(--ciao-gold) !important; outline:none !important; box-shadow:0 0 0 3px rgba(201,165,92,.15) !important; }

/* ===== Footer ===== */
.site-footer{ background:#211f1b !important; }
.site-footer, .site-footer a, .site-footer p, .site-footer li{ color:#d8d2c6 !important; }
.site-footer a:hover{ color:var(--ciao-gold) !important; }

/* ===== Hero (título legible sobre imagen) ===== */
.banner-title, .banner-title *, .inner-banner .banner-title, .banner-caption .banner-title{
  color:#fff !important; text-shadow:0 2px 22px rgba(0,0,0,.55) !important;
}
.banner-caption p, .banner-description, .inner-banner p, .banner-content p{ color:#f4efe6 !important; }

/* ===== Velo oscuro sobre el hero (slider) para legibilidad ===== */
.image-slider-wrapper.home-fullscreen{ position:relative; }
.image-slider-wrapper.home-fullscreen:after{
  content:""; position:absolute; inset:0; z-index:1; pointer-events:none;
  background:linear-gradient(180deg, rgba(25,18,12,.30) 0%, rgba(25,18,12,.50) 60%, rgba(25,18,12,.62) 100%);
}
.image-slider-wrapper.home-fullscreen .container,
.image-slider-wrapper.home-fullscreen .banner-caption,
.image-slider-wrapper.home-fullscreen .banner-title,
.image-slider-wrapper.home-fullscreen .at-btn-wrap{ position:relative; z-index:2; }

/* ===== MEJORAS VISIBLES v1 ===== */
/* Fondos alternos de sección (look premium) */
.at-widgets{ background:#ffffff; }
.at-widgets:nth-of-type(even){ background:var(--ciao-cream); }

/* Hero más imponente */
.banner-title{ font-size:80px !important; line-height:1.08 !important; letter-spacing:.5px !important; }
.banner-caption p, .banner-description, .inner-banner p{
  font-size:17px !important; letter-spacing:3px !important; text-transform:uppercase; font-weight:300 !important;
  margin-top:10px;
}
@media (max-width:768px){
  .banner-title{ font-size:38px !important; }
  .at-widgets{ padding-top:48px !important; padding-bottom:48px !important; }
}

/* Títulos de sección más presencia */
.widget-title, .widgettitle{ font-size:40px !important; }

/* Tarjetas: sombra suave y bordes redondeados en bloques comunes */
.at-single-service, .at-single-feature, .at-single-testimonial, .service-item, .feature-item, .testimonial-item{
  border-radius:16px !important; box-shadow:0 10px 30px rgba(0,0,0,.06) !important; background:#fff !important;
  padding:26px !important; transition:transform .25s ease, box-shadow .25s ease;
}
.at-single-service:hover, .at-single-feature:hover, .at-single-testimonial:hover{
  transform:translateY(-4px); box-shadow:0 16px 40px rgba(0,0,0,.10) !important;
}

/* ===== Footer premium (reconstruido tras pérdida de CSS) ===== */
.site-footer.ciao-footer{ background:#1f1d1a !important; color:#cfc9bd; padding:64px 26px 26px; }
.ciao-foot-grid{ max-width:1180px; margin:0 auto; display:grid; grid-template-columns:1.6fr 1.3fr 1fr 1.1fr; gap:40px; }
.ciao-foot-brand{ font-family:'Playfair Display',Georgia,serif; font-size:26px; font-weight:700; color:#fff; margin-bottom:14px; }
.ciao-foot-col h4{ color:#fff; font-size:19px; font-weight:700; margin:0 0 18px; }
.ciao-foot-col > p{ font-size:14px; line-height:1.75; color:#b3ada1; margin:0 0 14px; }
.ciao-foot-list{ list-style:none; margin:0; padding:0; }
.ciao-foot-list li{ display:flex; gap:11px; align-items:flex-start; margin:0 0 13px; font-size:14px; line-height:1.5; color:#cfc9bd; }
.ciao-foot-list li i{ color:#c9a55c; margin-top:3px; min-width:16px; text-align:center; }
.ciao-foot-links li{ display:block; margin:0 0 11px; }
.ciao-foot-links a{ color:#cfc9bd; text-decoration:none; transition:color .2s ease; }
.ciao-foot-links a:hover{ color:#c9a55c; }
.ciao-btn-gold{ display:inline-block; background:#c9a55c; color:#fff !important; padding:12px 30px; border-radius:30px; text-decoration:none; font-weight:500; margin-top:6px; transition:background .2s ease; }
.ciao-btn-gold:hover{ background:#b3863c; }
.ciao-foot-bottom{ max-width:1180px; margin:42px auto 0; padding-top:22px; border-top:1px solid rgba(255,255,255,.12); display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:14px; }
.ciao-foot-copy{ font-size:13px; color:#9c968b; }
.ciao-foot-socials{ list-style:none; margin:0; padding:0; display:flex; gap:16px; align-items:center; }
.ciao-foot-socials a{ color:#cfc9bd; font-size:17px; transition:color .2s ease; }
.ciao-foot-socials a:hover{ color:#c9a55c; }
.ciao-wa-float{ position:fixed; right:22px; bottom:22px; width:56px; height:56px; background:#25d366; border-radius:50%; display:flex; align-items:center; justify-content:center; box-shadow:0 6px 22px rgba(0,0,0,.28); z-index:9999; }
@media (max-width:900px){ .ciao-foot-grid{ grid-template-columns:1fr 1fr; gap:30px; } }
@media (max-width:560px){ .ciao-foot-grid{ grid-template-columns:1fr; } .ciao-foot-bottom{ flex-direction:column; text-align:center; } }

/* ===== Botones custom + WhatsApp (reconstruidos) ===== */
.ciao-btn{ display:inline-block; padding:13px 30px; border-radius:30px; font-weight:500; text-decoration:none; text-align:center; line-height:1.2; border:none; cursor:pointer; transition:all .2s ease; }
.ciao-btn-gold{ background:#c9a55c; color:#fff !important; }
.ciao-btn-gold:hover{ background:#b3863c; }
.ciao-btn-wa{ background:#25d366 !important; color:#fff !important; box-shadow:0 4px 14px rgba(37,211,102,.35); }
.ciao-btn-wa:hover{ background:#1ebe5a !important; }
.ciao-wa-product{ display:inline-block; vertical-align:middle; margin:0 0 0 12px; }
.ciao-wa-checkout{ display:block; margin-top:12px; text-align:center; }
@media (max-width:560px){ .ciao-wa-product{ display:block; margin:12px 0 0; } }

/* ===== Busqueda en tienda ===== */
.ciao-shop-search{ max-width:440px; margin:0 0 22px; }
.ciao-shop-search form{ display:flex; gap:8px; }
.ciao-shop-search input[type="search"]{ flex:1; border:1px solid #e2d7c2; border-radius:30px; padding:10px 16px; }
.ciao-shop-search button{ background:#c9a55c; color:#fff; border:none; border-radius:30px; padding:10px 24px; cursor:pointer; }

/* ===== Seccion B2B (home) ===== */
.ciao-b2b{ background:linear-gradient(160deg,#312d27 0%,#201d19 100%); padding:80px 24px; }
.ciao-b2b-inner{ max-width:880px; margin:0 auto; text-align:center; }
.ciao-b2b-eyebrow{ display:inline-block; text-transform:uppercase; letter-spacing:2.6px; font-size:13px; font-weight:600; color:#c9a55c; margin:0 0 16px; }
.ciao-b2b-eyebrow:before,.ciao-b2b-eyebrow:after{ content:""; display:inline-block; width:26px; height:1px; background:#c9a55c; vertical-align:middle; margin:0 12px 3px; opacity:.6; }
.ciao-b2b-inner h2{ font-size:37px; margin:0 0 16px; color:#fbf8f2; line-height:1.14; }
.ciao-b2b-inner p{ font-size:17px; color:#c9c2b6; line-height:1.7; margin:0 auto 32px; max-width:730px; }
.ciao-b2b-list{ list-style:none; padding:0; margin:0 auto 34px; max-width:820px; display:grid; grid-template-columns:1fr 1fr; gap:14px; text-align:left; }
.ciao-b2b-list li{ position:relative; padding:16px 18px 16px 52px; color:#efeae0; line-height:1.45; font-size:15.5px; background:rgba(255,255,255,.045); border:1px solid rgba(201,165,92,.28); border-radius:12px; display:flex; align-items:center; transition:border-color .2s ease,background .2s ease; }
.ciao-b2b-list li:hover{ background:rgba(201,165,92,.10); border-color:rgba(201,165,92,.55); }
.ciao-b2b-list li:before{ content:"\2713"; position:absolute; left:16px; top:50%; transform:translateY(-50%); width:24px; height:24px; line-height:24px; text-align:center; border-radius:50%; background:#c9a55c; color:#2b2926; font-size:13px; font-weight:700; }
.ciao-b2b .ciao-btn-gold{ box-shadow:0 10px 30px rgba(201,165,92,.28); }
@media(max-width:640px){ .ciao-b2b-list{ grid-template-columns:1fr; max-width:460px; } .ciao-b2b-inner h2{ font-size:27px; } }

/* ===== Contacto + mapa (home) ===== */
.ciao-contact-info{ list-style:none; padding:0; margin:0 0 22px; }
.ciao-contact-info li{ display:flex; gap:12px; align-items:flex-start; margin:0 0 14px; font-size:15px; color:#4a463f; line-height:1.5; }
.ciao-contact-info li i{ color:#c9a55c; margin-top:3px; min-width:16px; text-align:center; }
.ciao-map{ width:100%; min-height:300px; border:0; border-radius:14px; box-shadow:0 8px 26px rgba(0,0,0,.10); }
.ciao-anchor{ display:block; height:0; visibility:hidden; }

/* ===== Alineacion cabecera de tienda (titulo + buscador + conteo/orden) ===== */
.woocommerce-products-header{ overflow:hidden; }
.woocommerce-products-header__title,
.woocommerce-products-header h1.page-title{ float:none !important; clear:both !important; display:block; margin:0 0 16px !important; }
.ciao-shop-search{ clear:both !important; display:block; max-width:520px; margin:0 0 28px; }
.woocommerce-result-count{ float:left !important; clear:both !important; margin:0 0 18px !important; line-height:40px; }
.woocommerce-ordering{ float:right !important; clear:none !important; margin:0 0 18px !important; }

/* ===== Ocultar titulo "Productos" duplicado del area de contenido (ya esta en el banner) ===== */
.woocommerce h1.page-title,
.content-area .site-main > header.woocommerce-products-header,
.woocommerce-page .content-area h1.page-title{ display:none !important; }

/* ===== Grilla de productos: tarjetas de igual altura y botones alineados ===== */
.woocommerce ul.products{ display:grid !important; grid-template-columns:repeat(4, minmax(0,1fr)); gap:34px 24px; margin:0 0 34px !important; }
.woocommerce ul.products:before, .woocommerce ul.products:after{ content:none !important; display:none !important; }
.woocommerce ul.products li.product{ float:none !important; width:auto !important; margin:0 !important; clear:none !important; display:flex !important; flex-direction:column; }
.woocommerce ul.products li.product > a.woocommerce-loop-product__link{ display:flex !important; flex-direction:column; flex:1 1 auto; }
.woocommerce ul.products li.product .price{ margin-top:8px; }
.woocommerce ul.products li.product > a.button,
.woocommerce ul.products li.product > .button{ margin-top:14px; align-self:center; }
@media (max-width:1024px){ .woocommerce ul.products{ grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:768px){ .woocommerce ul.products{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:480px){ .woocommerce ul.products{ grid-template-columns:1fr; } }

/* ===== A11y v1: dorado con contraste, hero legible, sentence case ===== */
/* Botones dorados: dorado mas oscuro (texto blanco -> contraste ~4.9:1) */
.ciao-btn-gold,
.at-btn, .at-btn-wrap > a,
.button:not(.ciao-btn-wa), button.button:not(.ciao-btn-wa),
input[type="submit"], .wpcf7-submit,
.single_add_to_cart_button, .woocommerce a.button, .woocommerce button.button,
.ciao-foot .ciao-btn-gold{ background:#8f6a1e !important; color:#fff !important; }
.ciao-btn-gold:hover, .button:hover, input[type="submit"]:hover, .wpcf7-submit:hover,
.single_add_to_cart_button:hover, .woocommerce a.button:hover{ background:#76561a !important; }
/* Boton WhatsApp se mantiene verde (re-asegurado) */
.ciao-btn-wa{ background:#25d366 !important; color:#fff !important; }
.ciao-btn-wa:hover{ background:#1ebe5a !important; }
/* Precios legibles (dorado oscuro sobre blanco ~4.9:1) */
.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce .price, .woocommerce-Price-amount,
.ciao-lp .price{ color:#8a6418 !important; }

/* Hero: velo mas fuerte + titulo blanco con sombra + sentence case */
.image-slider-wrapper.home-fullscreen:after{
  background:linear-gradient(180deg, rgba(20,14,9,.44) 0%, rgba(20,14,9,.58) 55%, rgba(20,14,9,.70) 100%) !important;
}
.banner-title, .banner-title *{
  color:#fff !important;
  text-shadow:0 2px 26px rgba(0,0,0,.78), 0 1px 3px rgba(0,0,0,.55) !important;
  text-transform:none !important;
}
.banner-caption p, .banner-description, .inner-banner p{
  color:#f4efe6 !important; text-shadow:0 1px 10px rgba(0,0,0,.6) !important;
}

/* ===== CTA en el hero ===== */
.ciao-hero-cta{ position:absolute; left:0; right:0; bottom:9%; z-index:6; display:flex; gap:16px; justify-content:center; flex-wrap:wrap; padding:0 16px; }
.ciao-hero-cta .ciao-btn{ font-size:16px; padding:14px 32px; box-shadow:0 6px 22px rgba(0,0,0,.35); }
@media (max-width:560px){ .ciao-hero-cta{ bottom:8%; } .ciao-hero-cta .ciao-btn{ font-size:14px; padding:12px 22px; } }

/* ===== Ocultar banda vacía del acordeón (sin página destacada) en el home ===== */
.home .wrapper.inner-main-title{ display:none !important; }
