/*
Theme Name: Automakely
Theme URI: https://www.automakely.es/
Author: Automakely
Author URI: https://www.automakely.es/
Description: Tema de una sola landing + paginas internas para Automakely: automatizacion e IA para administradores de fincas. Paleta corporativa purpura/azul/verde, tipografia Gadugi, hero con gradiente y secciones bento.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.6
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: automakely
*/

/* ============================================================
   AUTOMAKELY — Propuesta de rediseño (página de inicio)
   HTML autocontenido. Basado en la arquitectura del tema
   nucleo-entrefincas, rebrandeado por completo a Automakely.
   ============================================================ */

/* 1. RESET & BASE ------------------------------------------- */
*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{
  margin:0;
  font-family:'Gadugi','Segoe UI',system-ui,-apple-system,'Helvetica Neue',Arial,sans-serif;
  font-size:16px;line-height:1.6;color:var(--ink);background:var(--bg);
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
  display:flex;flex-direction:column;min-height:100vh;overflow-x:hidden;
}
#contenido{flex:1 0 auto;}
img{max-width:100%;height:auto;display:block;}
a{color:inherit;text-decoration:none;}
button{font-family:inherit;cursor:pointer;border:none;background:none;}
ul{list-style:none;padding:0;margin:0;}
h1,h2,h3,h4,h5,h6{font-family:inherit;font-weight:700;line-height:1.12;margin:0;color:var(--ink);letter-spacing:-.02em;}
p{margin:0;}

/* 2. DESIGN TOKENS ------------------------------------------ */
:root{
  --ink:#111827;                 /* tinta (swatch 4) — texto/títulos */
  --brand:#4b2e83;               /* púrpura de marca */
  --violet:#4b2e83;              /* púrpura — acento primario (swatch 1) */
  --violet-deep:#3a2368;
  --violet-soft:#efeaf7;
  --green:#22c55e;               /* verde marca — WhatsApp / éxito (swatch 3) */
  --green-deep:#16a34a;
  --blue:#4c9eeb;                /* azul secundario (swatch 2) */
  --lavender:#bfd1ff;            /* azul claro (swatch 9) */
  --cyan:#4c9eeb;                /* azul — detalles/acentos secundarios */
  --bg:#f7f8fa;
  --card:#ffffff;
  --muted:#eef1f6;
  --muted-fg:#6b7280;
  --border:#e6e8f0;
  --radius:.75rem;--radius-lg:1rem;--radius-xl:1.25rem;
  --gradient-hero:linear-gradient(135deg,#4b2e83 0%,#5a3aa0 22%,#4c9eeb 64%,#22c55e 108%); /* púrpura→azul→verde (paleta exacta) */
  --gradient-dark:linear-gradient(135deg,#321f5c 0%,#4b2e83 100%); /* púrpura profundo */
  --gradient-cta:linear-gradient(135deg,#6a44c4 0%,#4b2e83 100%);
  --gradient-foot:linear-gradient(180deg,#1b1733 0%,#111827 100%); /* casi-negro — separa del formulario */
  --shadow-sm:0 1px 2px 0 rgba(27,24,64,.05);
  --shadow-md:0 4px 6px -1px rgba(27,24,64,.1),0 2px 4px -2px rgba(27,24,64,.1);
  --shadow-lg:0 10px 15px -3px rgba(27,24,64,.12),0 4px 6px -4px rgba(27,24,64,.1);
  --shadow-xl:0 20px 25px -5px rgba(27,24,64,.14),0 8px 10px -6px rgba(27,24,64,.1);
  --shadow-2xl:0 25px 50px -12px rgba(27,24,64,.30);
}

/* 3. LAYOUT HELPERS ----------------------------------------- */
.container{max-width:1280px;margin:0 auto;padding:0 1.5rem;}
.container-md{max-width:768px;margin:0 auto;padding:0 1.5rem;}
.container-lg{max-width:1152px;margin:0 auto;padding:0 1.5rem;}
.section{padding:3.5rem 0;}
@media(min-width:768px){.section{padding:5.5rem 0;}}
.text-center{text-align:center;}
.bg-soft{background:var(--violet-soft);}
.bg-card{background:var(--card);}
.bg-bg{background:var(--bg);}
.gradient-hero{background:var(--gradient-hero);}

/* 4. NAVBAR ------------------------------------------------- */
.site-nav{
  position:fixed;top:0;left:0;right:0;z-index:50;padding:.7rem 1.5rem;
  transition:all .3s ease;background:rgba(255,255,255,0);
}
.site-nav.scrolled{
  background:rgba(255,255,255,.92);backdrop-filter:blur(14px);
  box-shadow:0 6px 30px -12px rgba(27,24,64,.25);padding:.55rem 1.5rem;
}
.nav-inner{max-width:1280px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;}
.brand{display:inline-flex;align-items:center;}
.brand img{height:36px;width:auto;display:block;}
@media(min-width:768px){.brand img{height:40px;}}
/* En el tope (hero oscuro) el logo va en blanco; al hacer scroll vuelve a su color */
.brand .logo-dark{display:none;}
.brand .logo-light{display:block;}
.scrolled .brand .logo-dark{display:block;}
.scrolled .brand .logo-light{display:none;}
.nav-links{display:none;gap:1.15rem;align-items:center;}
.nav-links a{
  color:rgba(255,255,255,.82);font-size:.9rem;font-weight:600;
  transition:color .2s;position:relative;padding-bottom:4px;
}
.nav-links a::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--violet);transform:scaleX(0);transform-origin:left;transition:transform .3s;}
.nav-links a:hover{color:#fff;}
.nav-links a:hover::after{transform:scaleX(1);}
.scrolled .nav-links a{color:var(--violet);}
.scrolled .nav-links a:hover{color:var(--violet-deep);}
@media(min-width:1024px){.nav-links{display:flex;}}
.nav-cta{
  display:none;align-items:center;gap:.45rem;background:var(--gradient-cta);color:#fff;
  border-radius:9999px;padding:.6rem 1.35rem;font-size:.875rem;font-weight:700;
  transition:all .3s;box-shadow:0 8px 20px -8px rgba(75,46,131,.7);
}
.nav-cta:hover{transform:translateY(-2px);box-shadow:0 12px 26px -8px rgba(75,46,131,.8);}
@media(min-width:1024px){.nav-cta{display:inline-flex;}}
.nav-toggle{color:#fff;padding:.5rem;min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;}
.scrolled .nav-toggle{color:var(--ink);}
@media(min-width:1024px){.nav-toggle{display:none;}}
.mobile-menu{display:none;margin-top:.75rem;background:var(--card);border-radius:var(--radius-lg);padding:1.25rem;box-shadow:var(--shadow-xl);}
.mobile-menu.open{display:block;}
.mobile-menu a{display:block;padding:.7rem 0;color:var(--violet);font-weight:600;min-height:44px;}
.mobile-menu .nav-cta{display:flex;justify-content:center;width:100%;margin-top:.75rem;color:#fff;background:var(--gradient-cta);border-radius:9999px;padding:.7rem 1rem;}

/* 5. BUTTONS ------------------------------------------------ */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;border-radius:9999px;padding:.95rem 1.9rem;font-size:1rem;font-weight:700;transition:all .3s;line-height:1;}
.btn:hover{transform:translateY(-2px);}
.btn:active{transform:translateY(0);}
.btn-violet{background:var(--gradient-cta);color:#fff;box-shadow:0 12px 28px -10px rgba(75,46,131,.75);}
.btn-violet:hover{box-shadow:0 16px 34px -10px rgba(75,46,131,.85);}
.btn-green{background:linear-gradient(135deg,#2bd06a 0%,#16a34a 100%);color:#fff;box-shadow:0 12px 28px -10px rgba(34,197,94,.6);}
.btn-green:hover{box-shadow:0 16px 34px -10px rgba(34,197,94,.7);}
.btn-light{background:#fff;color:var(--ink);box-shadow:var(--shadow-lg);}
.btn-light:hover{background:rgba(255,255,255,.92);}
.btn-outline-light{border:1px solid rgba(255,255,255,.45);background:rgba(255,255,255,.08);color:#fff;}
.btn-outline-light:hover{background:rgba(255,255,255,.18);}
.btn-ghost{background:var(--muted);color:var(--violet);}
.btn-ghost:hover{background:var(--violet-soft);}

/* 6. HERO --------------------------------------------------- */
.hero{position:relative;overflow:hidden;padding:8rem 0 4rem;background:var(--gradient-hero);}
@media(min-width:768px){.hero{padding:11rem 0 6rem;}}
.hero-bg{position:absolute;inset:0;z-index:0;}
.hero-bg img{width:100%;height:100%;object-fit:cover;opacity:.34;mix-blend-mode:soft-light;}
.hero-bg::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,8,38,.30) 0%,rgba(12,8,38,.55) 100%);}
.hero-glow{position:absolute;border-radius:50%;filter:blur(80px);z-index:0;opacity:.55;}
.hero-glow.g1{width:480px;height:480px;background:radial-gradient(circle,#6a44c4,transparent 70%);top:-120px;right:-80px;}
.hero-glow.g2{width:420px;height:420px;background:radial-gradient(circle,#22c55e,transparent 70%);bottom:-140px;left:-100px;opacity:.4;}
.hero-inner{position:relative;z-index:2;max-width:1280px;margin:0 auto;padding:0 1.5rem;text-align:center;}
.hero-badge{display:inline-flex;align-items:center;gap:.5rem;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#fff;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:.45rem 1.05rem;border-radius:9999px;margin-bottom:1.6rem;backdrop-filter:blur(6px);}
.hero-badge .dot{width:8px;height:8px;border-radius:50%;background:var(--cyan);box-shadow:0 0 10px var(--cyan);}
.hero h1{font-size:2.1rem;color:#fff;line-height:1.08;max-width:60rem;margin:0 auto;letter-spacing:-.025em;text-shadow:0 2px 26px rgba(8,6,30,.35);}
@media(min-width:768px){.hero h1{font-size:3.6rem;}}
@media(min-width:1024px){.hero h1{font-size:4.4rem;}}
.hero h1 .accent{background:linear-gradient(120deg,#cbb6ff,#4c9eeb);-webkit-background-clip:text;background-clip:text;color:transparent;}
.hero p.lead{margin:1.5rem auto 0;color:rgba(255,255,255,.78);max-width:42rem;font-size:1rem;line-height:1.65;}
@media(min-width:768px){.hero p.lead{font-size:1.18rem;}}
.hero-actions{margin-top:2.2rem;display:flex;flex-direction:column;gap:.85rem;align-items:center;justify-content:center;}
@media(min-width:640px){.hero-actions{flex-direction:row;}}
.hero-note{margin-top:1rem;color:rgba(255,255,255,.55);font-size:.85rem;display:flex;gap:1.25rem;justify-content:center;flex-wrap:wrap;}
.hero-note span{display:inline-flex;align-items:center;gap:.4rem;}
.hero-note svg{color:var(--cyan);}

/* Trust strip */
.hero-trusted{position:relative;z-index:2;margin-top:3.5rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.14);overflow:hidden;}
.hero-trusted-label{color:rgba(255,255,255,.6);font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;text-align:center;margin-bottom:1.25rem;}
.trusted-mask{position:relative;-webkit-mask-image:linear-gradient(to right,transparent 0,#000 8%,#000 92%,transparent 100%);mask-image:linear-gradient(to right,transparent 0,#000 8%,#000 92%,transparent 100%);}
.trusted-track{display:flex;gap:3rem;width:max-content;animation:scrollX 32s linear infinite;}
.trusted-item{display:flex;align-items:center;gap:.5rem;color:rgba(255,255,255,.85);font-weight:600;font-size:.92rem;white-space:nowrap;flex-shrink:0;}
.trusted-item svg{color:var(--cyan);}
@keyframes scrollX{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* 7. SECTION HEADINGS --------------------------------------- */
.section-head{text-align:center;margin-bottom:2.75rem;}
@media(min-width:768px){.section-head{margin-bottom:3.5rem;}}
.section-head h2{font-size:1.7rem;line-height:1.12;}
@media(min-width:768px){.section-head h2{font-size:2.75rem;}}
.section-head p{margin:1rem auto 0;color:var(--muted-fg);max-width:44rem;font-size:.98rem;}
@media(min-width:768px){.section-head p{font-size:1.08rem;}}
.eyebrow{display:inline-flex;align-items:center;gap:.5rem;color:var(--violet);font-size:.74rem;font-weight:800;padding:.4rem 1rem;border-radius:9999px;text-transform:uppercase;letter-spacing:.12em;margin-bottom:1.1rem;background:var(--violet-soft);}
.eyebrow.on-dark{color:#bfd1ff;background:rgba(255,255,255,.08);}

/* 8. PAIN / SOLUTION ---------------------------------------- */
.pain-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;}
@media(min-width:768px){.pain-grid{grid-template-columns:1fr 1fr;gap:2rem;}}
.pain-col{background:var(--card);border-radius:var(--radius-xl);padding:1.75rem;border:1px solid var(--border);box-shadow:var(--shadow-sm);}
@media(min-width:768px){.pain-col{padding:2.25rem;}}
.pain-col.gain{border-color:transparent;background:linear-gradient(160deg,#fff, #f4f0ff);box-shadow:0 18px 40px -22px rgba(75,46,131,.45);}
.pain-col h3{font-size:1.2rem;margin-bottom:1.5rem;display:flex;align-items:center;gap:.6rem;}
.pain-col h3 .tag{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;padding:.25rem .6rem;border-radius:6px;}
.pain-col h3 .tag.bad{background:#fdeaea;color:#d64545;}
.pain-col h3 .tag.good{background:#e7f9ee;color:var(--green-deep);}
.pain-list{display:flex;flex-direction:column;gap:1rem;}
.pain-list li{display:flex;align-items:flex-start;gap:.75rem;font-size:.95rem;color:var(--muted-fg);}
.pain-list.bad svg{color:#e06363;flex-shrink:0;margin-top:2px;}
.pain-list.good svg{color:var(--green);flex-shrink:0;margin-top:2px;}
.pain-list.good li{color:var(--ink);font-weight:500;}

/* 9. SERVICES (bento de tarjetas) --------------------------- */
.cards-grid{display:grid;grid-template-columns:1fr;gap:1.25rem;}
@media(min-width:768px){.cards-grid{grid-template-columns:repeat(3,1fr);}}
.svc-card{background:var(--card);border-radius:var(--radius-xl);padding:1.75rem;border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:transform .3s,box-shadow .3s;position:relative;overflow:hidden;}
.svc-card:hover{transform:translateY(-6px);box-shadow:0 22px 44px -20px rgba(75,46,131,.4);}
.svc-icon{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:var(--gradient-cta);color:#fff;margin-bottom:1.1rem;box-shadow:0 10px 22px -10px rgba(75,46,131,.8);}
.svc-card h3{font-size:1.2rem;margin-bottom:.5rem;}
.svc-card p{font-size:.92rem;color:var(--muted-fg);line-height:1.6;}
.svc-card .more{margin-top:1rem;color:var(--violet);font-weight:700;font-size:.85rem;display:inline-flex;align-items:center;gap:.35rem;}

/* 10. BENTO DASHBOARD --------------------------------------- */
.bento{display:grid;grid-template-columns:1fr;gap:1rem;}
.bento>*{min-width:0;}
@media(min-width:768px){.bento{grid-template-columns:repeat(3,1fr);}}
.bento-card{background:var(--card);border-radius:var(--radius-xl);padding:1.5rem;border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:transform .3s,box-shadow .3s;}
.bento-card:hover{transform:translateY(-4px);box-shadow:0 18px 44px -18px rgba(75,46,131,.32);}
.bento-card .head-row{display:flex;align-items:center;gap:.6rem;margin-bottom:.5rem;}
.bento-card .head-row svg{color:var(--violet);}
.bento-card h3{font-size:1.1rem;}
.bento-card p{font-size:.88rem;color:var(--muted-fg);line-height:1.55;}
.bento-card.wide{grid-column:span 1;}
@media(min-width:768px){.bento-card.wide{grid-column:span 2;}}
.lead-icon{display:inline-flex;width:44px;height:44px;border-radius:12px;align-items:center;justify-content:center;background:var(--violet-soft);color:var(--violet);margin-bottom:.75rem;}
.bento-charts{display:grid;grid-template-columns:1fr;gap:1rem;margin-top:1.25rem;background:var(--muted);border-radius:var(--radius);padding:1rem;}
@media(min-width:640px){.bento-charts{grid-template-columns:1fr 1fr;}}
.bento-chart-title{font-size:.82rem;font-weight:700;color:var(--ink);margin:0;}
.bento-chart-meta{font-size:.72rem;color:var(--muted-fg);margin:0 0 .5rem;}
.bar-chart{display:flex;align-items:flex-end;gap:8px;height:5.5rem;padding-top:.25rem;--bar-area:4.4rem;}
.bar-chart .bar-col{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:4px;}
.bar-chart .bar{width:100%;height:0;background:linear-gradient(180deg,#6a44c4,#4b2e83);border-radius:5px 5px 0 0;transition:height 1.2s cubic-bezier(.2,.8,.2,1);}
.bar-chart .bar-label{font-size:10px;color:var(--muted-fg);}
.line-chart{width:100%;height:5.5rem;margin-top:.25rem;}
.bento-table{width:100%;margin-top:1rem;font-size:.78rem;border-collapse:collapse;background:var(--muted);border-radius:var(--radius);overflow:hidden;}
.bento-table td{padding:.5rem .6rem;border-top:1px solid rgba(231,227,243,.8);color:var(--ink);}
.bento-table tr:first-child td{border-top:none;}
.bento-table td.ok{color:var(--green-deep);font-weight:700;text-align:right;}
.bento-table td.auto{color:var(--violet);font-weight:700;text-align:right;}
.bento-table td.pending{color:#d97706;font-weight:700;text-align:right;}
.badge-ia{display:inline-flex;align-items:center;gap:.3rem;font-size:.68rem;font-weight:800;color:var(--violet);background:var(--violet-soft);padding:.15rem .45rem;border-radius:6px;}
.donut{position:relative;width:4.5rem;height:4.5rem;flex-shrink:0;}
.donut svg{width:100%;height:100%;transform:rotate(-90deg);}
.donut-center{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:.95rem;font-weight:800;color:var(--ink);}
.bento-donut-row{display:flex;align-items:center;gap:1rem;margin-top:1rem;padding:.85rem 1rem;background:var(--muted);border-radius:var(--radius);}
.bento-donut-meta p{font-size:.82rem;color:var(--muted-fg);margin:0;line-height:1.5;}
.bento-donut-meta strong{color:var(--ink);font-weight:800;}
.bento-grad{background:var(--gradient-cta);border-radius:var(--radius-xl);padding:1.5rem;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:140px;color:#fff;text-align:center;}
.bento-grad .lead-icon{background:rgba(255,255,255,.16);color:#fff;}
.bento-grad .title{font-size:1.2rem;font-weight:700;}
.bento-grad .small{font-size:.78rem;opacity:.85;margin-top:.25rem;}
.bento-logo{background:var(--gradient-dark);border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;padding:1.75rem;min-height:140px;}
.bento-logo img{width:100%;max-width:190px;filter:brightness(0) invert(1);opacity:.95;}
.kpi-row{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-top:1rem;}
.kpi{background:var(--muted);border-radius:var(--radius);padding:.7rem .85rem;}
.kpi .l{display:block;font-size:.7rem;color:var(--muted-fg);}
.kpi .v{display:block;font-weight:800;font-size:1.15rem;margin-top:.1rem;line-height:1.1;color:var(--ink);}
.kpi .v.accent{color:var(--violet);}
.kpi .v.green{color:var(--green-deep);}

/* 11. PROCESS ----------------------------------------------- */
.proc-grid{display:grid;grid-template-columns:1fr;gap:1.25rem;}
@media(min-width:640px){.proc-grid{grid-template-columns:1fr 1fr;}}
@media(min-width:1024px){.proc-grid{grid-template-columns:repeat(3,1fr);}}
.proc-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-xl);padding:1.6rem 1.35rem;position:relative;backdrop-filter:blur(4px);transition:transform .3s,background .3s;}
.proc-card:hover{transform:translateY(-5px);background:rgba(255,255,255,.1);}
.proc-num{font-size:.85rem;font-weight:800;color:var(--cyan);letter-spacing:.05em;}
.proc-ico{width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.1);color:#fff;margin:.65rem 0 1rem;}
.proc-card h3{font-size:1.1rem;color:#fff;margin-bottom:.45rem;}
.proc-card p{font-size:.85rem;color:rgba(255,255,255,.66);line-height:1.55;}
.proc-connector{display:none;}

/* 12. CTA BAND ---------------------------------------------- */
.cta-band{position:relative;overflow:hidden;padding:3.5rem 0;}
@media(min-width:768px){.cta-band{padding:5.5rem 0;}}
.cta-inner{position:relative;z-index:2;max-width:56rem;margin:0 auto;padding:0 1.5rem;text-align:center;}
.cta-inner h2{font-size:1.7rem;color:#fff;margin-bottom:1rem;}
@media(min-width:768px){.cta-inner h2{font-size:2.75rem;}}
.cta-inner p{color:rgba(255,255,255,.72);max-width:38rem;margin:0 auto 2rem;font-size:1rem;}
.cta-actions{display:flex;flex-direction:column;gap:.85rem;align-items:center;justify-content:center;}
@media(min-width:640px){.cta-actions{flex-direction:row;}}
.cta-foot{margin-top:1rem;color:rgba(255,255,255,.5);font-size:.85rem;}

/* 13. WHY / IDEAL CLIENT ------------------------------------ */
.why-grid{display:grid;grid-template-columns:1fr;gap:1rem;}
@media(min-width:640px){.why-grid{grid-template-columns:1fr 1fr;}}
@media(min-width:1024px){.why-grid{grid-template-columns:repeat(4,1fr);}}
.why-card{background:var(--card);border-radius:var(--radius-xl);padding:1.6rem 1.35rem;border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:transform .3s,box-shadow .3s;}
.why-card:hover{transform:translateY(-6px);box-shadow:0 18px 38px -18px rgba(75,46,131,.3);}
.why-card .why-ico{width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:var(--violet-soft);color:var(--violet);margin-bottom:1rem;}
.why-card h3{font-size:1.02rem;margin-bottom:.4rem;}
.why-card p{font-size:.86rem;color:var(--muted-fg);line-height:1.55;}

/* 13b. CASOS DE ÉXITO --------------------------------------- */
.case-grid{display:grid;grid-template-columns:1fr;gap:1.25rem;}
@media(min-width:640px){.case-grid{grid-template-columns:1fr 1fr;}}
@media(min-width:1024px){.case-grid{grid-template-columns:repeat(3,1fr);}}
.case-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-xl);padding:1.6rem;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:.55rem;transition:transform .3s,box-shadow .3s;}
.case-card:hover{transform:translateY(-5px);box-shadow:0 20px 42px -20px rgba(75,46,131,.35);}
.case-tag{align-self:flex-start;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--violet);background:var(--violet-soft);padding:.25rem .6rem;border-radius:6px;}
.case-card h3{font-size:1.08rem;line-height:1.25;}
.case-card p{font-size:.88rem;color:var(--muted-fg);line-height:1.55;flex:1;}
.case-metric{display:flex;align-items:center;gap:.6rem;margin-top:.3rem;padding-top:.85rem;border-top:1px solid var(--border);}
.case-metric .big{font-size:1.5rem;font-weight:800;color:var(--violet);letter-spacing:-.02em;line-height:1;white-space:nowrap;}
.case-metric .lbl{font-size:.78rem;color:var(--muted-fg);line-height:1.3;}

/* 13c. PRECIOS ---------------------------------------------- */
.price-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;align-items:stretch;}
@media(min-width:900px){.price-grid{grid-template-columns:repeat(3,1fr);}}
.price-card{position:relative;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-xl);padding:1.9rem 1.6rem;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;transition:transform .3s,box-shadow .3s;}
.price-card:hover{transform:translateY(-5px);box-shadow:0 22px 44px -20px rgba(75,46,131,.3);}
.price-card.featured{border:2px solid var(--violet);box-shadow:0 24px 50px -22px rgba(75,46,131,.55);}
@media(min-width:900px){.price-card.featured{transform:scale(1.045);}.price-card.featured:hover{transform:scale(1.045) translateY(-5px);}}
.price-flag{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--gradient-cta);color:#fff;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:.32rem .9rem;border-radius:9999px;box-shadow:0 8px 18px -8px rgba(75,46,131,.8);white-space:nowrap;}
.price-name{font-size:1.18rem;font-weight:800;}
.price-sub{font-size:.85rem;color:var(--muted-fg);margin-top:.2rem;margin-bottom:1.1rem;min-height:2.4em;}
.price-amt{font-size:2rem;font-weight:800;letter-spacing:-.02em;color:var(--ink);line-height:1;}
.price-amt .cur{font-size:1rem;font-weight:700;color:var(--muted-fg);}
.price-rec{font-size:.85rem;color:var(--muted-fg);margin-top:.45rem;}
.price-rec strong{color:var(--violet);}
.price-feats{display:flex;flex-direction:column;gap:.6rem;margin:1.3rem 0 1.6rem;}
.price-feats li{display:flex;gap:.55rem;align-items:flex-start;font-size:.86rem;color:var(--ink);}
.price-feats svg{color:var(--green);flex-shrink:0;margin-top:2px;}
.price-card .btn{width:100%;margin-top:auto;}
.price-note{text-align:center;color:var(--muted-fg);font-size:.85rem;margin-top:1.85rem;}

/* 14. FAQ --------------------------------------------------- */
.faq-list{display:flex;flex-direction:column;gap:.5rem;}
.faq-item{border:1px solid var(--border);border-radius:var(--radius);background:var(--card);transition:box-shadow .2s;}
.faq-item.open{box-shadow:var(--shadow-md);}
.faq-q{width:100%;text-align:left;padding:1.1rem 1.25rem;font-weight:700;color:var(--ink);display:flex;justify-content:space-between;align-items:center;min-height:44px;font-size:1rem;}
.faq-q .chev{transition:transform .3s;flex-shrink:0;margin-left:1rem;color:var(--violet);}
.faq-item.open .faq-q .chev{transform:rotate(180deg);}
.faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease;color:var(--muted-fg);font-size:.93rem;padding:0 1.25rem;line-height:1.6;}
.faq-item.open .faq-a{max-height:500px;padding-bottom:1.1rem;}

/* 15. STATS ------------------------------------------------- */
.stats-row{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:3rem;}
@media(min-width:768px){.stats-row{grid-template-columns:repeat(4,1fr);gap:2rem;}}
.stat-num{font-size:2rem;font-weight:800;color:#fff;letter-spacing:-.02em;}
@media(min-width:768px){.stat-num{font-size:2.6rem;}}
.stat-num .u{background:linear-gradient(120deg,#cbb6ff,#4c9eeb);-webkit-background-clip:text;background-clip:text;color:transparent;}
.stat-label{font-size:.82rem;color:rgba(255,255,255,.65);margin-top:.25rem;}

/* 16. CONTACT / DEMO ---------------------------------------- */
.contact-grid{display:grid;grid-template-columns:1fr;gap:2rem;align-items:start;}
@media(min-width:768px){.contact-grid{grid-template-columns:1fr 1fr;gap:3rem;}}
.contact-info h2{color:var(--ink);font-size:1.7rem;margin-bottom:1rem;}
@media(min-width:768px){.contact-info h2{font-size:2.4rem;}}
.contact-info>p{color:var(--muted-fg);margin-bottom:1.75rem;font-size:1rem;}
.demo-box{background:rgba(255,255,255,.96);border-radius:var(--radius-xl);padding:1.5rem;margin-bottom:1.5rem;box-shadow:var(--shadow-xl);}
.demo-pill{display:inline-flex;background:var(--violet-soft);color:var(--violet);padding:.3rem .8rem;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;border-radius:9999px;margin-bottom:.85rem;}
.demo-box h3{font-size:1.25rem;margin-bottom:.4rem;}
.demo-box p{font-size:.9rem;color:var(--muted-fg);margin-bottom:1rem;}
.demo-box .checks{display:flex;flex-direction:column;gap:.6rem;}
.demo-box .checks li{display:flex;gap:.6rem;align-items:flex-start;font-size:.88rem;color:var(--ink);font-weight:500;}
.demo-box .checks svg{color:var(--green);flex-shrink:0;margin-top:2px;}
.contact-meta{display:flex;flex-direction:column;gap:.85rem;color:var(--ink);font-size:.92rem;}
.contact-meta a,.contact-meta p{display:flex;align-items:flex-start;gap:.7rem;transition:color .2s;}
.contact-meta a:hover{color:var(--violet);}
.contact-meta svg{color:var(--cyan);flex-shrink:0;margin-top:2px;}
.contact-form{background:var(--card);border-radius:var(--radius-xl);padding:1.75rem;box-shadow:var(--shadow-2xl);}
@media(min-width:768px){.contact-form{padding:2.25rem;}}
.form-grid{display:grid;grid-template-columns:1fr;gap:1rem;}
@media(min-width:640px){.form-grid{grid-template-columns:1fr 1fr;}}
.form-field.full{grid-column:1/-1;}
.form-field label{font-size:.74rem;font-weight:700;color:var(--violet);margin-bottom:.3rem;display:block;}
.form-field input,.form-field select,.form-field textarea{width:100%;min-height:44px;padding:.6rem .8rem;border:1px solid var(--border);background:var(--bg);border-radius:10px;font-size:.92rem;font-family:inherit;color:var(--ink);transition:border-color .2s,box-shadow .2s;}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:var(--violet);box-shadow:0 0 0 3px rgba(75,46,131,.18);}
.contact-form .btn{margin-top:1.5rem;width:100%;}
.form-note{margin-top:.8rem;font-size:.78rem;color:var(--muted-fg);text-align:center;}
.form-msg{margin-top:1rem;padding:.75rem 1rem;border-radius:10px;font-size:.9rem;}
.form-msg.ok{background:#e7f9ee;color:var(--green-deep);}
.form-msg.err{background:#fdeaea;color:#d64545;}

/* 17. FOOTER ------------------------------------------------ */
.site-foot{background:var(--gradient-foot);color:#fff;}
.foot-top{max-width:1152px;margin:0 auto;padding:3.5rem 1.5rem 2.5rem;display:grid;grid-template-columns:1fr;gap:2.25rem;}
@media(min-width:768px){.foot-top{grid-template-columns:1.6fr 1fr 1fr 1fr;gap:2rem;}}
.foot-brand img{height:42px;width:auto;filter:brightness(0) invert(1);margin-bottom:1rem;}
.foot-brand p{font-size:.9rem;color:rgba(255,255,255,.7);max-width:22rem;line-height:1.6;}
.foot-social{display:flex;gap:.6rem;margin-top:1.1rem;}
.foot-social a{width:38px;height:38px;border-radius:10px;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;color:#fff;transition:background .2s,transform .2s;}
.foot-social a:hover{background:rgba(255,255,255,.22);transform:translateY(-2px);}
.foot-col h4{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.55);margin-bottom:1rem;}
.foot-col a,.foot-col p{display:block;font-size:.9rem;color:rgba(255,255,255,.82);padding:.3rem 0;transition:color .2s;}
.foot-col a:hover{color:#fff;}
.foot-bottom{border-top:1px solid rgba(255,255,255,.12);}
.foot-bottom-inner{max-width:1152px;margin:0 auto;padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:.5rem;align-items:center;justify-content:space-between;font-size:.78rem;color:rgba(255,255,255,.6);text-align:center;}
@media(min-width:768px){.foot-bottom-inner{flex-direction:row;text-align:left;}}

/* 18. REVEAL ANIM ------------------------------------------- */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .6s ease,transform .6s ease;}
.reveal.is-visible{opacity:1;transform:translateY(0);}
.reveal.d1{transition-delay:.08s;}.reveal.d2{transition-delay:.16s;}.reveal.d3{transition-delay:.24s;}.reveal.d4{transition-delay:.32s;}

/* 19. A11Y -------------------------------------------------- */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
:focus-visible{outline:2px solid var(--violet);outline-offset:2px;}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;}html{scroll-behavior:auto;}}

/* 20. PÁGINAS INTERNAS -------------------------------------- */
/* Hero compacto para páginas que no son la home */
.hero.compact{padding:6.5rem 0 3rem;}
@media(min-width:768px){.hero.compact{padding:9rem 0 4rem;}}
.breadcrumb{display:flex;align-items:center;justify-content:center;gap:.5rem;font-size:.82rem;color:rgba(255,255,255,.6);margin-bottom:1rem;}
.breadcrumb a{color:rgba(255,255,255,.75);transition:color .2s;}
.breadcrumb a:hover{color:#fff;}
.breadcrumb .sep{opacity:.5;}
.breadcrumb .current{color:#fff;font-weight:600;}
/* Lista de puntos dentro de las tarjetas de servicio */
.svc-points{display:flex;flex-direction:column;gap:.45rem;margin-top:1rem;}
.svc-points li{display:flex;gap:.5rem;align-items:flex-start;font-size:.83rem;color:var(--muted-fg);}
.svc-points svg{color:var(--violet);flex-shrink:0;margin-top:3px;}
/* Tarjeta CTA sobre fondo claro (cierre de páginas internas) */
.cta-card{background:var(--card);border-radius:var(--radius-xl);box-shadow:var(--shadow-2xl);padding:2.5rem 1.5rem;text-align:center;max-width:46rem;margin:0 auto;}
@media(min-width:768px){.cta-card{padding:3rem 2.5rem;}}
.cta-card h2{font-size:1.6rem;margin-bottom:.75rem;}
@media(min-width:768px){.cta-card h2{font-size:2.2rem;}}
.cta-card p{color:var(--muted-fg);max-width:34rem;margin:0 auto 1.75rem;font-size:1rem;}
.cta-card .cta-actions{display:flex;flex-direction:column;gap:.75rem;align-items:center;justify-content:center;}
@media(min-width:640px){.cta-card .cta-actions{flex-direction:row;}}
/* Enlace "ver todo" al pie de una sección resumen en la home */
.see-all{display:inline-flex;align-items:center;gap:.4rem;margin-top:2rem;color:var(--violet);font-weight:700;font-size:.95rem;transition:gap .2s;}
.see-all:hover{gap:.7rem;}
.section-foot{text-align:center;}
/* Contenido de páginas genéricas (avisos legales, etc.) */
.page-content{font-size:1rem;line-height:1.7;color:var(--ink);}
.page-content h2{font-size:1.5rem;margin:2rem 0 .75rem;}
.page-content h3{font-size:1.2rem;margin:1.5rem 0 .5rem;}
.page-content p{margin-bottom:1rem;color:var(--muted-fg);}
.page-content ul,.page-content ol{margin:0 0 1rem 1.25rem;color:var(--muted-fg);}
.page-content li{margin-bottom:.4rem;}
.page-content a{color:var(--violet);text-decoration:underline;}
/* Compensar la barra de administración de WordPress (usuarios logueados) */
.admin-bar .site-nav{top:32px;}
@media(max-width:782px){.admin-bar .site-nav{top:46px;}}

/* 21. BLOG -------------------------------------------------- */
.blog-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;}
@media(min-width:640px){.blog-grid{grid-template-columns:1fr 1fr;}}
@media(min-width:1024px){.blog-grid{grid-template-columns:repeat(3,1fr);}}
.blog-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;transition:transform .3s,box-shadow .3s;}
.blog-card:hover{transform:translateY(-5px);box-shadow:0 20px 42px -20px rgba(75,46,131,.35);}
.blog-card-media{display:flex;align-items:flex-end;aspect-ratio:16/9;padding:.85rem;background:var(--gradient-hero);position:relative;overflow:hidden;}
.blog-card-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.blog-cat{position:relative;z-index:1;background:rgba(255,255,255,.92);color:var(--violet);font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:.25rem .6rem;border-radius:6px;}
.blog-card-body{padding:1.25rem 1.35rem 1.4rem;display:flex;flex-direction:column;gap:.5rem;flex:1;}
.blog-meta{font-size:.78rem;color:var(--muted-fg);margin:0;}
.blog-title{font-size:1.12rem;line-height:1.3;margin:0;}
.blog-title a{color:var(--ink);}
.blog-title a:hover{color:var(--violet);}
.blog-excerpt{font-size:.9rem;color:var(--muted-fg);line-height:1.55;flex:1;}
.blog-card .see-all{margin-top:.25rem;font-size:.85rem;}
.blog-pagination{display:flex;gap:.5rem;justify-content:center;margin-top:3rem;flex-wrap:wrap;}
.blog-pagination .page-numbers{display:inline-flex;min-width:42px;height:42px;align-items:center;justify-content:center;padding:0 .75rem;border-radius:10px;border:1px solid var(--border);background:var(--card);color:var(--ink);font-weight:600;font-size:.9rem;}
.blog-pagination .page-numbers.current{background:var(--violet);color:#fff;border-color:var(--violet);}
.blog-pagination a.page-numbers:hover{border-color:var(--violet);color:var(--violet);}
/* Imagen destacada dentro del artículo */
.post-banner{margin:1.75rem 0;}
.post-banner img{width:100%;height:auto;border-radius:14px;display:block;}
/* Meta de la entrada individual */
.post-meta{display:flex;align-items:center;gap:.6rem;justify-content:center;color:rgba(255,255,255,.72);font-size:.85rem;margin-top:.85rem;}
.post-meta .chip{background:rgba(255,255,255,.12);color:#fff;border-radius:9999px;padding:.2rem .7rem;font-size:.72rem;font-weight:700;}
/* Sigue leyendo */
.related{margin-top:3.5rem;}
.related h2{font-size:1.3rem;text-align:center;margin-bottom:1.5rem;}
