/*
Theme Name: PresuFácil1
Theme URI: https://presufacil.es
Author: PresuFácil
Author URI: https://presufacil.es
Description: Tema profesional para PresuFácil con páginas independientes para cada sección.
Version: 2.0.0
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: presufacil
Tags: negocios, servicios, landing, blog, responsive
*/

:root {
  --acento: #d97706;
  --acento-oscuro: #b45309;
  --acento-suave: #fffbeb;
  --texto: #0f172a;
  --texto-suave: #475569;
  --texto-tenue: #94a3b8;
  --fondo: #f8fafc;
  --blanco: #ffffff;
  --borde: #e2e8f0;
  --radio: 12px;
  --sombra: 0 1px 3px rgba(15,23,42,0.08),0 1px 2px rgba(15,23,42,0.04);
  --sombra-fuerte: 0 10px 30px rgba(15,23,42,0.10);
  --ancho: 1120px;
  --fuente: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--fuente);color:var(--texto);background:var(--fondo);line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto}
a{color:var(--acento-oscuro);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3{color:var(--texto);line-height:1.2;margin:0 0 .5em}
.contenedor{width:100%;max-width:var(--ancho);margin:0 auto;padding:0 24px}
.seccion{padding:72px 0}
.boton{display:inline-block;padding:12px 24px;border-radius:var(--radio);font-weight:600;font-size:15px;cursor:pointer;border:1px solid transparent;transition:background .15s,border-color .15s,transform .05s}
.boton:hover{text-decoration:none}
.boton:active{transform:translateY(1px)}
.boton-principal{background:var(--acento);color:var(--blanco)}
.boton-principal:hover{background:var(--acento-oscuro);color:var(--blanco)}
.boton-secundario{background:var(--blanco);color:var(--texto);border-color:var(--borde)}
.boton-secundario:hover{background:var(--fondo);color:var(--texto)}
.cabecera{position:sticky;top:0;z-index:50;background:rgba(255,255,255,0.9);backdrop-filter:blur(8px);border-bottom:1px solid var(--borde)}
.cabecera-fila{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:68px;position:relative}
.marca{font-size:20px;font-weight:700;color:var(--texto);letter-spacing:-.02em}
.marca:hover{text-decoration:none}
.marca img{max-height:40px;width:auto}
.navegacion{display:flex;align-items:center;gap:8px}
.navegacion ul{display:flex;align-items:center;gap:4px;list-style:none;margin:0;padding:0}
.navegacion ul a{display:block;padding:8px 12px;border-radius:8px;color:var(--texto-suave);font-size:15px;font-weight:500}
.navegacion ul a:hover{background:var(--fondo);color:var(--texto);text-decoration:none}
.cabecera-acciones{display:flex;align-items:center;gap:8px}
.menu-movil-boton{display:none;background:none;border:1px solid var(--borde);border-radius:8px;padding:8px 12px;cursor:pointer;font-size:18px;line-height:1}
.hero{padding:88px 0 64px;background:linear-gradient(180deg,var(--acento-suave)0%,var(--fondo)100%)}
.hero-rejilla{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.hero-texto h1{font-size:clamp(28px,4.5vw,48px);letter-spacing:-.03em;margin:0 0 20px;line-height:1.15}
.hero-texto p{font-size:clamp(16px,2vw,19px);color:var(--texto-suave);margin:0 0 28px}
.hero-acciones{display:flex;gap:12px;flex-wrap:wrap}
.hero-nota{margin-top:20px;font-size:14px;color:var(--texto-tenue)}
.vista-previa{display:flex;justify-content:center}
.vista-previa-card{background:var(--blanco);border:1px solid var(--borde);border-radius:16px;padding:24px;box-shadow:var(--sombra-fuerte);width:100%;max-width:400px}
.vp-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid var(--fondo)}
.vp-header-empresa{font-weight:700;font-size:16px;color:var(--texto)}
.vp-header-badge{font-size:12px;font-weight:600;background:var(--acento-suave);color:var(--acento-oscuro);padding:4px 10px;border-radius:999px}
.vp-items{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}
.vp-item{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;padding:10px 12px;background:var(--fondo);border-radius:10px}
.vp-item-nombre{font-weight:600;font-size:14px;color:var(--texto)}
.vp-item-detalle{font-size:13px;color:var(--texto-tenue);text-align:right}
.vp-item-precio{font-weight:700;font-size:15px;color:var(--texto);text-align:right;min-width:60px}
.vp-subtotal,.vp-iva{display:flex;justify-content:space-between;align-items:center;padding:6px 0}
.vp-subtotal-label,.vp-iva-label{font-size:13px;color:var(--texto-suave)}
.vp-subtotal-cantidad,.vp-iva-cantidad{font-size:14px;font-weight:600;color:var(--texto)}
.vp-total{display:flex;justify-content:space-between;align-items:center;padding:12px 0 0;border-top:2px solid var(--fondo);margin-top:4px}
.vp-total-label{font-size:14px;font-weight:700;color:var(--texto);text-transform:uppercase;letter-spacing:.03em}
.vp-total-cantidad{font-size:24px;font-weight:800;color:var(--acento)}
.vp-footer{text-align:center;padding-top:12px;border-top:1px solid var(--borde)}
.vp-footer-ia{font-size:12px;color:var(--texto-tenue)}
.pasos{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px}
.paso{background:var(--blanco);border:1px solid var(--borde);border-radius:var(--radio);padding:28px;box-shadow:var(--sombra)}
.paso-numero{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--acento-suave);color:var(--acento-oscuro);font-weight:700;margin-bottom:16px}
.paso h3{font-size:18px}
.paso p{color:var(--texto-suave);margin:0;font-size:15px}
.caracteristicas{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px}
.caracteristica{padding:24px;border-radius:var(--radio);background:var(--blanco);border:1px solid var(--borde)}
.caracteristica-icono{font-size:26px;margin-bottom:10px}
.caracteristica h3{font-size:17px}
.caracteristica p{color:var(--texto-suave);margin:0;font-size:15px}
.titulo-seccion{text-align:center;max-width:640px;margin:0 auto 12px}
.titulo-seccion h2{font-size:clamp(26px,3.5vw,36px);letter-spacing:-.02em}
.subtitulo-seccion{text-align:center;color:var(--texto-suave);max-width:560px;margin:0 auto 44px;font-size:17px}
.planes{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:start}
.plan{background:var(--blanco);border:1px solid var(--borde);border-radius:16px;padding:32px;box-shadow:var(--sombra)}
.plan-destacado{border-color:var(--acento);box-shadow:var(--sombra-fuerte);position:relative}
.plan-etiqueta{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--acento);color:var(--blanco);font-size:12px;font-weight:600;padding:4px 14px;border-radius:999px;white-space:nowrap}
.plan h3{font-size:20px;margin-bottom:4px}
.plan-para{color:var(--texto-tenue);font-size:14px;margin:0 0 20px}
.plan-precio{font-size:40px;font-weight:700;letter-spacing:-.02em}
.plan-precio span{font-size:16px;font-weight:500;color:var(--texto-tenue)}
.plan-lista{list-style:none;margin:24px 0;padding:0}
.plan-lista li{padding:8px 0 8px 28px;position:relative;color:var(--texto-suave);font-size:15px;border-top:1px solid var(--borde)}
.plan-lista li:first-child{border-top:none}
.plan-lista li::before{content:"\2713";position:absolute;left:0;color:var(--acento);font-weight:700}
.plan .boton{width:100%;text-align:center}
.faq{max-width:760px;margin:40px auto 0}
.faq details{background:var(--blanco);border:1px solid var(--borde);border-radius:var(--radio);padding:4px 20px;margin-bottom:12px}
.faq summary{cursor:pointer;padding:16px 0;font-weight:600;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";float:right;color:var(--texto-tenue);font-weight:400}
.faq details[open] summary::after{content:"\2013"}
.faq details p{margin:0 0 16px;color:var(--texto-suave)}
.cta-banda{background:var(--texto);border-radius:20px;padding:56px 32px;text-align:center;color:var(--blanco)}
.cta-banda h2{color:var(--blanco);font-size:clamp(26px,3.5vw,34px)}
.cta-banda p{color:#cbd5e1;max-width:520px;margin:0 auto 28px;font-size:17px}
.rejilla-blog{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.tarjeta-post{background:var(--blanco);border:1px solid var(--borde);border-radius:var(--radio);overflow:hidden;box-shadow:var(--sombra);display:flex;flex-direction:column}
.tarjeta-post img{width:100%;height:180px;object-fit:cover}
.tarjeta-post-cuerpo{padding:20px;display:flex;flex-direction:column;flex:1}
.tarjeta-post-cuerpo .fecha{font-size:13px;color:var(--texto-tenue);margin-bottom:8px}
.tarjeta-post-cuerpo h3{font-size:18px;margin-bottom:8px}
.tarjeta-post-cuerpo p{color:var(--texto-suave);font-size:15px;margin:0 0 16px;flex:1}
.cabecera-pagina{padding:56px 0 24px;text-align:center}
.cabecera-pagina h1{font-size:clamp(28px,4vw,40px)}
.cabecera-pagina p{color:var(--texto-suave);font-size:17px}
.contenido-articulo{max-width:720px;margin:0 auto;padding:48px 24px 72px}
.contenido-articulo h1{font-size:clamp(28px,4vw,40px);margin-bottom:12px}
.articulo-meta{color:var(--texto-tenue);font-size:14px;margin-bottom:32px}
.contenido-articulo h2{font-size:26px;margin:32px 0 12px}
.contenido-articulo h3{font-size:20px;margin:24px 0 8px}
.contenido-articulo p,.contenido-articulo li{color:var(--texto-suave);font-size:17px}
.contenido-articulo img{border-radius:var(--radio);margin:24px 0}
.contenido-articulo blockquote{border-left:4px solid var(--acento);margin:24px 0;padding:4px 20px;color:var(--texto);background:var(--acento-suave);border-radius:0 8px 8px 0}
.volver-blog{display:inline-block;margin-top:32px;font-weight:600}
.paginacion{display:flex;justify-content:center;gap:8px;margin-top:48px;flex-wrap:wrap}
.paginacion .page-numbers{display:inline-block;padding:8px 14px;border-radius:8px;border:1px solid var(--borde);background:var(--blanco);color:var(--texto-suave)}
.paginacion .page-numbers.current{background:var(--texto);color:var(--blanco);border-color:var(--texto)}
.pie{background:var(--blanco);border-top:1px solid var(--borde);padding:56px 0 32px;margin-top:40px}
.pie-rejilla{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px}
.pie-marca{font-size:20px;font-weight:700;color:var(--texto);display:inline-block;margin-bottom:12px}
.pie p{color:var(--texto-suave);font-size:15px;margin:0;max-width:320px}
.pie h4{font-size:14px;text-transform:uppercase;letter-spacing:.05em;color:var(--texto-tenue);margin:0 0 16px}
.pie ul{list-style:none;margin:0;padding:0}
.pie ul li{margin-bottom:10px}
.pie ul a{color:var(--texto-suave);font-size:15px}
.pie-abajo{border-top:1px solid var(--borde);margin-top:32px;padding-top:24px;text-align:center;color:var(--texto-tenue);font-size:14px}
.error-404{text-align:center;padding:88px 0}
.error-404 .numero{font-size:88px;font-weight:800;color:var(--acento);line-height:1;margin-bottom:16px}
@media(max-width:767px){
  .menu-movil-boton{display:block}
  .navegacion{display:none;flex-direction:column;position:absolute;top:68px;left:0;right:0;background:var(--blanco);border-bottom:1px solid var(--borde);padding:16px 24px;box-shadow:var(--sombra);gap:12px}
  .navegacion.abierto{display:flex}
  .navegacion ul{flex-direction:column;width:100%;gap:0}
  .navegacion ul a{padding:12px 0;border-bottom:1px solid var(--borde);width:100%}
  .cabecera-acciones{width:100%;flex-direction:column;gap:8px}
  .cabecera-acciones .boton{width:100%;text-align:center}
  .pasos,.caracteristicas,.planes,.rejilla-blog,.pie-rejilla{grid-template-columns:1fr}
  .hero{padding:56px 0 40px}
  .hero-rejilla{grid-template-columns:1fr;gap:32px}
  .hero-texto{text-align:center}
  .hero-texto h1{font-size:clamp(26px,8vw,36px)}
  .hero-acciones{justify-content:center}
  .seccion{padding:48px 0}
  .cta-banda{padding:40px 24px}
}
@media(min-width:768px)and (max-width:1024px){
  .pasos,.caracteristicas,.rejilla-blog{grid-template-columns:repeat(2,1fr)}
  .planes{grid-template-columns:1fr;max-width:480px;margin:0 auto}
  .pie-rejilla{grid-template-columns:1fr 1fr}
}
