/* ARCED · hoja de estilos compartida de la web pública (02/10/2026).
   Va DESPUÉS del <style> de cada página: ordena tema oscuro/claro, cabecera, pie y tarjetas de producto.
   Contrato de tema: <html data-theme="dark|light"> lo pone /paneles/assets/arced-theme.js (público = oscuro). */

/* ---------- Tokens (oscuro por defecto; claro redefine) ---------- */
:root{
  --bg-a:#130719; --bg-b:#1b0a29; --surface:#241039;
  --card:rgba(255,255,255,.05); --card-hover:rgba(255,255,255,.085); --card-line:rgba(255,255,255,.12);
  --head:#ffffff; --body:#e6d9f1; --muted:#bcaacf; --accent-t:#FF8A52;
  --input:#1d0e2e; --input-line:rgba(255,255,255,.2);
  --nav-bg:rgba(24,9,36,.9); --nav-line:rgba(255,255,255,.14); --nav-shadow:0 14px 40px rgba(0,0,0,.45);
  --shadow:0 22px 50px rgba(0,0,0,.4);
  --eyebrow-bg:rgba(240,86,19,.14); --eyebrow-t:#FF9F6E;
  --menu-bg:rgba(19,7,25,.98);
}
html[data-theme="light"]{
  --bg-a:#fffaf6; --bg-b:#f6f0fa; --surface:#ffffff;
  --card:#ffffff; --card-hover:#ffffff; --card-line:rgba(34,8,51,.11);
  --head:#220833; --body:#3d2a4d; --muted:#5c4a6b; --accent-t:#C2430C;
  --input:#fbf7f3; --input-line:#dccfe6;
  --nav-bg:rgba(255,255,255,.93); --nav-line:rgba(34,8,51,.12); --nav-shadow:0 12px 34px rgba(34,8,51,.14);
  --shadow:0 18px 40px rgba(34,8,51,.12);
  --eyebrow-bg:#FFE9DC; --eyebrow-t:#B33C0A;
  --menu-bg:rgba(255,250,246,.99);
}

/* ---------- Base mínima (para páginas con CSS propio muy corto, p. ej. las legales) ---------- */
*{margin:0;padding:0;box-sizing:border-box;}
body{font-family:'Montserrat',sans-serif;-webkit-font-smoothing:antialiased;}
img{max-width:100%;display:block;}
a{text-decoration:none;color:inherit;}
button{font-family:inherit;cursor:pointer;border:none;background:none;}
.wrap{width:100%;max-width:1240px;margin:0 auto;padding:0 32px;}
.nav{position:fixed;top:14px;left:0;right:0;z-index:1000;padding:0 20px;}
.nav .wrap{max-width:1180px;display:flex;align-items:center;justify-content:space-between;gap:14px;border-radius:100px;}
.nav-logo{display:flex;align-items:center;gap:9px;flex-shrink:0;}
.nav-logo-wordmark{font-weight:700;font-size:14px;letter-spacing:.03em;line-height:1.1;white-space:nowrap;}
.nav-logo-wordmark span{display:block;font-weight:500;font-size:9.5px;letter-spacing:.16em;}
.burger{display:none;width:38px;height:38px;border-radius:50%;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer;}
.burger span,.burger span::before,.burger span::after{content:'';display:block;width:16px;height:1.5px;position:relative;transition:.3s;border-radius:2px;}
.burger span::before{position:absolute;top:-5px;}
.burger span::after{position:absolute;top:5px;}
.mobile-menu{position:fixed;inset:0;z-index:1500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;pointer-events:none;transition:opacity .35s ease;}
.mobile-menu.open{opacity:1;pointer-events:auto;}
@media(max-width:600px){.wrap{padding:0 18px;}}
/* ---------- Base ---------- */
html[data-theme] body{background:var(--bg-a);color:var(--body);}
html[data-theme] ::-webkit-scrollbar-track{background:var(--bg-a);}
html[data-theme] section{max-width:100%;}
html[data-theme] .section-pad{padding:96px 0;}
html[data-theme] .services,html[data-theme] .gallery,html[data-theme] .process,html[data-theme] .testi{background:var(--bg-a);}
html[data-theme] .a-la-carta,html[data-theme] .verticals,html[data-theme] .ecosystem,html[data-theme] .funnel,html[data-theme] .stats,html[data-theme] .cta-section,html[data-theme] .ubicacion,html[data-theme] .marquee-section{background:var(--bg-b);}
html[data-theme] .marquee-section{border-color:var(--card-line);}
html[data-theme] .section-eyebrow{background:var(--eyebrow-bg);color:var(--eyebrow-t);}
html[data-theme] .section-head h2{color:var(--head);}
html[data-theme] .section-head p{color:var(--muted);}
html[data-theme] .stats-bg::after{background:linear-gradient(180deg,var(--bg-b) 0%,transparent 50%,var(--bg-b) 100%);}
html[data-theme] .stats-bg img{opacity:.1;}

/* ---------- Héroe ---------- */
html[data-theme] .hero{background:var(--bg-a);}
html[data-theme] .hero-bg::after{background:radial-gradient(ellipse 70% 55% at 50% 0%,rgba(138,63,209,.30),transparent 65%),linear-gradient(180deg,rgba(19,7,25,.55) 0%,rgba(19,7,25,.92) 70%,var(--bg-a) 100%);}
html[data-theme="light"] .hero-bg::after{background:radial-gradient(ellipse 70% 55% at 50% 0%,rgba(138,63,209,.10),transparent 65%),linear-gradient(180deg,rgba(255,250,246,.80) 0%,rgba(255,250,246,.94) 70%,var(--bg-a) 100%);}
html[data-theme="light"] .circuit-layer{mix-blend-mode:normal;opacity:.18;}
html[data-theme="light"] .cursor-glow{background:radial-gradient(circle,rgba(240,86,19,.12),rgba(138,63,209,.07) 45%,transparent 70%);}
html[data-theme] .hero h1{color:var(--head);}
html[data-theme] .hero p.lead{color:var(--body);}
html[data-theme] .eyebrow{color:var(--eyebrow-t);background:var(--eyebrow-bg);border-color:var(--card-line);}
html[data-theme] .breadcrumb,html[data-theme] .breadcrumb a{color:var(--muted);}
html[data-theme] .breadcrumb a:hover,html[data-theme] .breadcrumb span.current{color:var(--head);}
html[data-theme] .btn-ghost{background:var(--card);color:var(--head);border:1px solid var(--card-line);}
html[data-theme] .btn-ghost:hover{background:var(--card-hover);}
html[data-theme] .hero-stat{background:var(--card);border-color:var(--card-line);}
html[data-theme] .hero-stat b{color:var(--head);}
html[data-theme] .hero-stat span{color:var(--muted);}
html[data-theme] .marquee-item .num{color:var(--head);}
html[data-theme] .marquee-item .lbl{color:var(--muted);}

/* ---------- Tarjetas y superficies ---------- */
html[data-theme] .summary-card,html[data-theme] .carte-item,html[data-theme] .eco-card,html[data-theme] .vert-panel,html[data-theme] .testi-card,html[data-theme] .funnel-stat-card,html[data-theme] .ft-card,html[data-theme] .funnel-card,html[data-theme] .form-card{background:var(--card);border:1px solid var(--card-line);}
html[data-theme] .form-card{background:var(--surface);box-shadow:var(--shadow);}
html[data-theme] .summary-card:hover,html[data-theme] .carte-item:hover,html[data-theme] .eco-card:hover,html[data-theme] .testi-card:hover,html[data-theme] .ft-card:hover,html[data-theme] .funnel-card:hover{background:var(--card-hover);box-shadow:var(--shadow);}
html[data-theme] .vert-panel{box-shadow:var(--shadow);}
html[data-theme] .service-row{border-bottom-color:var(--card-line);}
html[data-theme] .service-text h3,html[data-theme] .summary-card h4,html[data-theme] .carte-item h4,html[data-theme] .eco-card h4,html[data-theme] .vert-panel h4,html[data-theme] .form-card h3,html[data-theme] .ft-card h4,html[data-theme] .funnel-card h4,html[data-theme] .process-step h4,html[data-theme] .funnel-stat-card b,html[data-theme] .testi-author b,html[data-theme] .field label{color:var(--head);}
html[data-theme] .service-text p.desc,html[data-theme] .summary-card p,html[data-theme] .carte-item p,html[data-theme] .eco-card p,html[data-theme] .vert-panel p,html[data-theme] .ft-card p,html[data-theme] .funnel-card p,html[data-theme] .process-step p,html[data-theme] .funnel-stat-card span,html[data-theme] .form-card .sub,html[data-theme] .form-note,html[data-theme] .funnel-hint,html[data-theme] .testi-card p{color:var(--muted);}
html[data-theme] .testi-card p{color:var(--body);}
html[data-theme] .service-feats li,html[data-theme] .funnel-detail li,html[data-theme] .cta-points li,html[data-theme] .funnel-cta p{color:var(--body);}
html[data-theme] .testi-author span{color:var(--muted);}
html[data-theme] .eco-label{color:var(--accent-t);}
html[data-theme] .service-price{background:var(--card);border-color:var(--card-line);}
html[data-theme] .service-price .amt{color:var(--head);}
html[data-theme] .service-price svg{color:var(--accent-t);}
html[data-theme] .service-link{color:var(--accent-t);}
html[data-theme] .vert-tab{background:var(--card);color:var(--head);border-color:var(--card-line);}
html[data-theme] .vert-tab.active,html[data-theme] .vert-tab:hover{background:var(--head);color:var(--bg-a);border-color:var(--head);}
html[data-theme] .vert-badge{background:var(--eyebrow-bg);color:var(--eyebrow-t);}
html[data-theme] .funnel-opt{background:var(--card-hover);color:var(--head);}
html[data-theme] .funnel-detail ul{border-top-color:var(--card-line);}
html[data-theme] .funnel-badge{color:var(--accent-t);}
html[data-theme] .funnel-fase-tag{color:var(--muted);opacity:1;}
html[data-theme] .funnel-card-final{background:rgba(61,220,132,.08);border-color:rgba(61,220,132,.35);}
html[data-theme] .funnel-cta{border-top-color:var(--card-line);}
html[data-theme] .process-grid{background:var(--card-line);}
html[data-theme] .process-step{background:var(--bg-b);}
html[data-theme] .process-step:hover{background:var(--surface);}
html[data-theme] .process::before{opacity:.5;}
html[data-theme] .process .section-eyebrow{background:var(--eyebrow-bg);color:var(--eyebrow-t);}
html[data-theme] .process .section-head h2{color:var(--head);}
html[data-theme] .process .section-head p{color:var(--muted);}
html[data-theme] .process-num{color:var(--accent-t);}
html[data-theme] .process-num::before{background:var(--accent-t);}
html[data-theme] .stat-item .num{background:linear-gradient(120deg,var(--head),var(--accent-t));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;}
html[data-theme] .stat-item .lbl{color:var(--muted);}
html[data-theme] .cta-section{background:var(--bg-b);}
html[data-theme] .cta-left h1,html[data-theme] .cta-left h2{color:var(--head);}
html[data-theme] .cta-left p{color:var(--muted);}
html[data-theme] .cta-points li{border-top-color:var(--card-line);}
html[data-theme="light"] .cta-section::before,html[data-theme="light"] .cta-section::after{opacity:.35;}
html[data-theme] .field input,html[data-theme] .field textarea{background:var(--input);border-color:var(--input-line);color:var(--head);}
html[data-theme] .field input::placeholder,html[data-theme] .field textarea::placeholder{color:var(--muted);opacity:.7;}
html[data-theme] .field input:focus,html[data-theme] .field textarea:focus{background:var(--surface);}
html[data-theme] .chip{background:var(--input);border-color:var(--input-line);color:var(--head);}
html[data-theme] .chip.chip-highlight{color:var(--accent-t);border-color:var(--violet-500);}
html[data-theme] .chip.active,html[data-theme] .chip.chip-highlight.active{color:#fff;}
html[data-theme] .service-icon,html[data-theme] .fs-icon{background:rgba(240,86,19,.12);border:1px solid rgba(240,86,19,.28);box-shadow:none;}
html[data-theme] .service-icon svg,html[data-theme] .fs-icon svg{color:var(--accent-t);}
html[data-theme] .service-icon svg,html[data-theme] .fs-icon svg,html[data-theme] .carte-icon svg,html[data-theme] .ubi-icon svg,html[data-theme] .service-link svg{stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;}
html[data-theme] .carte-icon{background:rgba(240,86,19,.12);border:1px solid rgba(240,86,19,.25);}
html[data-theme] .carte-icon svg{color:var(--accent-t);}
html[data-theme] .ubicacion{border-top:1px solid var(--card-line);}
html[data-theme] .ubi-left b{color:var(--head);}
html[data-theme] .ubi-left span{color:var(--muted);}
html[data-theme] .gallery .g-item,html[data-theme] .service-media-inner{box-shadow:var(--shadow);}
html[data-theme] .service-tag{color:#220833;}
html[data-theme] .rm-bubble{background:#fff;}

/* ---------- Cabecera ---------- */
html[data-theme] .nav{top:14px;}
html[data-theme] .nav .wrap{max-width:1180px;background:var(--nav-bg);border:1px solid var(--nav-line);box-shadow:var(--nav-shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding:9px 10px 9px 16px;gap:14px;}
html[data-theme] .nav.scrolled .wrap{background:var(--nav-bg);border-color:var(--nav-line);box-shadow:var(--nav-shadow);}
html[data-theme] .nav-logo img{height:30px;width:30px;border-radius:9px;background:#fff;padding:3px;object-fit:contain;}
html[data-theme] .nav-logo-wordmark{color:var(--head);}
html[data-theme] .nav-logo-wordmark span{color:var(--muted);opacity:1;}
html[data-theme] .nav-links{display:flex;align-items:center;gap:6px;list-style:none;margin:0 auto;}
html[data-theme] .nav-links>li{position:relative;}
html[data-theme] .nav-links>li>a,html[data-theme] .nav-links>li>button{display:inline-flex;align-items:center;gap:6px;font:600 13.5px/1 'Montserrat',sans-serif;color:var(--body);padding:10px 14px;border-radius:100px;background:none;border:0;cursor:pointer;transition:background .2s,color .2s;white-space:nowrap;}
html[data-theme] .nav-links>li>a::after{display:none;}
html[data-theme] .nav-links>li>a:hover,html[data-theme] .nav-links>li>button:hover,html[data-theme] .nav-links>li:focus-within>button,html[data-theme] .nav-links>li>a[aria-current="page"]{background:var(--card-hover);color:var(--head);}
html[data-theme] .nav-links>li>a[aria-current="page"]{box-shadow:inset 0 0 0 1px var(--card-line);}
html[data-theme] .nav-links .chev{width:12px;height:12px;stroke:currentColor;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s;}
html[data-theme] .nav-links>li.open .chev,html[data-theme] .nav-links>li:hover .chev{transform:rotate(180deg);}
html[data-theme] .nav-drop{position:absolute;top:calc(100% + 10px);left:-6px;min-width:300px;background:var(--surface);border:1px solid var(--card-line);border-radius:20px;padding:8px;box-shadow:var(--nav-shadow);opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .2s,transform .2s,visibility .2s;list-style:none;}
html[data-theme] .nav-links>li:hover .nav-drop,html[data-theme] .nav-links>li:focus-within .nav-drop,html[data-theme] .nav-links>li.open .nav-drop{opacity:1;visibility:visible;transform:none;}
html[data-theme] .nav-drop::before{content:'';position:absolute;left:0;right:0;top:-12px;height:12px;}
html[data-theme] .nav-drop a{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:14px;color:var(--head);font-size:13.5px;font-weight:700;line-height:1.25;transition:background .15s;}
html[data-theme] .nav-drop a:hover{background:var(--card-hover);}
html[data-theme] .nav-drop a small{display:block;font-size:12px;font-weight:500;color:var(--muted);margin-top:2px;}
html[data-theme] .nav-drop .pd{width:10px;height:10px;border-radius:50%;flex-shrink:0;box-shadow:0 0 0 4px color-mix(in srgb,currentColor 18%,transparent);}
html[data-theme] .nav-actions{display:flex;align-items:center;gap:10px;flex-shrink:0;}
html[data-theme] .nav-enter{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,#FF7A3D,#F05613 55%,#C2430C);color:#fff;font:700 13.5px/1 'Montserrat',sans-serif;padding:11px 20px;border-radius:100px;box-shadow:0 6px 18px rgba(240,86,19,.38),inset 0 1px 0 rgba(255,255,255,.28);transition:transform .25s,box-shadow .25s;white-space:nowrap;}
html[data-theme] .nav-enter:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(240,86,19,.5),inset 0 1px 0 rgba(255,255,255,.28);}
html[data-theme] .nav-enter svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
html[data-theme] .burger{background:var(--card-hover);border:1px solid var(--card-line);}
html[data-theme] .burger span,html[data-theme] .burger span::before,html[data-theme] .burger span::after{background:var(--head);}
html[data-theme] .mobile-menu{background:var(--menu-bg);display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;padding:84px 24px 32px;overflow-y:auto;}
html[data-theme] .mobile-menu a{color:var(--head);font-size:19px;font-weight:700;padding:15px 4px;border-bottom:1px solid var(--card-line);display:flex;align-items:center;gap:12px;}
html[data-theme] .mobile-menu .mm-label{font-size:11.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding:14px 4px 6px;}
html[data-theme] .mobile-menu .mm-sub a{font-size:16px;font-weight:600;padding:12px 4px 12px 14px;}
html[data-theme] .mobile-menu .mm-sub small{display:block;font-size:12px;font-weight:500;color:var(--muted);}
html[data-theme] .mobile-menu .pd{width:10px;height:10px;border-radius:50%;flex-shrink:0;}
html[data-theme] .mobile-menu .mm-foot{margin-top:auto;padding-top:24px;display:flex;flex-direction:column;gap:14px;align-items:stretch;}
html[data-theme] .mobile-menu a.mm-enter{justify-content:center;border:0;background:linear-gradient(135deg,#FF7A3D,#F05613 55%,#C2430C);color:#fff;border-radius:100px;padding:16px;font-size:16px;box-shadow:0 10px 26px rgba(240,86,19,.38);}
html[data-theme] .mobile-menu .mm-theme{display:flex;justify-content:center;color:var(--head);}
html[data-theme] .mobile-menu .mm-close{background:var(--card-hover);border:1px solid var(--card-line);position:absolute;top:20px;right:20px;width:44px;height:44px;border-radius:50%;padding:0;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--head);}
html[data-theme] .mobile-menu .mm-close svg{color:var(--head);width:20px;height:20px;}
@media(max-width:960px){
  html[data-theme] .nav-links{display:none;}
  html[data-theme] .nav-actions .arced-tt,html[data-theme] .nav-actions [data-theme-toggle]{display:none;}
  html[data-theme] .burger{display:flex;}
  html[data-theme] .nav-logo-wordmark{font-size:13px;}
}
@media(max-width:600px){
  html[data-theme] .nav{top:10px;padding:0 12px;}
  html[data-theme] .nav-enter{padding:10px 16px;font-size:13px;}
  html[data-theme] .nav-logo-wordmark span{display:none;}
  html[data-theme] .section-pad{padding:64px 0;}
}

/* ---------- Pie ---------- */
html[data-theme] footer,html[data-theme] .site-foot{background:var(--bg-b);border-top:1px solid var(--card-line);padding:64px 0 30px;}
html[data-theme] .foot-top{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px;padding-bottom:44px;border-bottom:1px solid var(--card-line);}
html[data-theme] .foot-brand{display:flex;align-items:center;gap:10px;margin-bottom:16px;}
html[data-theme] .foot-brand img{height:32px;width:32px;border-radius:9px;background:#fff;padding:3px;object-fit:contain;}
html[data-theme] .foot-brand b{color:var(--head);font-weight:800;font-size:15px;}
html[data-theme] .foot-col p{font-size:13.5px;color:var(--muted);line-height:1.7;font-weight:500;}
html[data-theme] .foot-col h5{color:var(--head);font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:16px;}
html[data-theme] .foot-col a{display:block;font-size:14px;color:var(--muted);line-height:1.5;padding:5px 0;font-weight:500;transition:color .2s;}
html[data-theme] .foot-col a:hover{color:var(--head);}
html[data-theme] .foot-legal{padding-top:26px;display:flex;flex-direction:column;gap:12px;}
html[data-theme] .foot-legal-links{display:flex;flex-wrap:wrap;gap:8px 22px;}
html[data-theme] .foot-legal-links a{font-size:12.5px;color:var(--muted);font-weight:600;}
html[data-theme] .foot-legal-links a:hover{color:var(--head);}
html[data-theme] .foot-legal p{font-size:12px;color:var(--muted);line-height:1.6;opacity:.9;}
@media(max-width:900px){html[data-theme] .foot-top{grid-template-columns:1fr 1fr;}}
@media(max-width:600px){html[data-theme] .foot-top{grid-template-columns:1fr;gap:28px;}html[data-theme] footer,html[data-theme] .site-foot{padding-bottom:110px;}}

/* ---------- Home: dolor ---------- */
html[data-theme] .pain{background:var(--bg-a);}
.pain-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:36px;}
.pain-card{background:var(--card);border:1px solid var(--card-line);border-radius:24px;padding:30px 28px;position:relative;overflow:hidden;}
.pain-card .when{display:inline-block;font:800 11.5px/1 'Montserrat',sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-t);margin-bottom:14px;}
.pain-card h3{font-size:21px;font-weight:800;line-height:1.2;color:var(--head);margin-bottom:12px;letter-spacing:-.01em;}
.pain-card p{font-size:15px;line-height:1.6;color:var(--muted);font-weight:500;margin-bottom:18px;}
.pain-card a{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:14px;color:var(--accent-t);}
.pain-card a svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s;}
.pain-card a:hover svg{transform:translateX(4px);}
.fact{display:grid;grid-template-columns:auto 1fr;gap:34px;align-items:center;background:linear-gradient(135deg,rgba(240,86,19,.14),rgba(138,63,209,.14));border:1px solid var(--card-line);border-radius:28px;padding:34px 40px;}
.fact .big{font-size:clamp(46px,7vw,76px);font-weight:900;line-height:1;letter-spacing:-.03em;background:linear-gradient(120deg,#FF7A3D,#F05613 50%,#8A3FD1);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;}
.fact h3{font-size:clamp(19px,2.3vw,24px);font-weight:800;color:var(--head);line-height:1.25;margin-bottom:8px;}
.fact p{font-size:15px;color:var(--body);line-height:1.6;font-weight:500;}
.fact small{display:block;margin-top:10px;font-size:12px;color:var(--muted);}
@media(max-width:900px){.pain-grid{grid-template-columns:1fr;}.fact{grid-template-columns:1fr;gap:12px;padding:28px 24px;}}

/* ---------- Home: productos ---------- */
html[data-theme] .productos{background:var(--bg-b);}
.pgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;align-items:stretch;}
.pcard{--pc:#F05613;position:relative;display:flex;flex-direction:column;background:var(--card);border:1px solid var(--card-line);border-radius:26px;padding:28px 24px 24px;overflow:hidden;transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s,border-color .3s;}
.pcard::before{content:'';position:absolute;left:0;right:0;top:0;height:4px;background:var(--pc);}
.pcard:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--pc) 55%,var(--card-line));}
.pcard .pico{width:48px;height:48px;border-radius:15px;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--pc) 14%,transparent);border:1px solid color-mix(in srgb,var(--pc) 35%,transparent);color:var(--pc);margin-bottom:18px;}
.pcard .pico svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;}
.pcard .pname{font:800 12px/1 'Montserrat',sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:12px;}
.pcard h3{font-size:20px;line-height:1.22;font-weight:800;color:var(--head);letter-spacing:-.01em;margin-bottom:12px;}
.pcard p.benefit{font-size:14.5px;line-height:1.55;color:var(--muted);font-weight:500;margin-bottom:20px;flex-grow:1;}
.pcard .pprice{font-size:13px;font-weight:700;color:var(--head);background:color-mix(in srgb,var(--pc) 10%,transparent);border:1px solid color-mix(in srgb,var(--pc) 28%,transparent);padding:9px 14px;border-radius:12px;margin-bottom:16px;line-height:1.35;}
.pcard .pprice b{color:var(--pc);font-weight:800;}
html[data-theme="light"] .pcard .pprice b{color:color-mix(in srgb,var(--pc) 80%,#000);}
.pcard .pbtn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--pc);color:#fff;font-weight:700;font-size:14px;padding:13px 18px;border-radius:100px;transition:filter .2s,transform .2s;}
.pcard .pbtn:hover{filter:brightness(1.1);transform:translateY(-2px);}
.pcard .pbtn svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;}
.pcard.p-lm{--pc:#F05613;}
.pcard.p-call{--pc:#E5242B;}
.pcard.p-coach{--pc:#0FA968;}
.pcard.p-web{--pc:#8A3FD1;}
.pmore{margin-top:30px;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;background:var(--card);border:1px dashed var(--card-line);border-radius:20px;padding:20px 26px;}
.pmore p{font-size:15px;font-weight:600;color:var(--body);}
.pmore a{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:14.5px;color:var(--accent-t);}
.pmore a svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;}
@media(max-width:1180px){.pgrid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:640px){.pgrid{grid-template-columns:1fr;}.pmore{flex-direction:column;align-items:flex-start;}}

/* ---------- Home: servicios de marketing, CTA final ---------- */
html[data-theme] .services{padding-bottom:96px;}
.final-cta{background:var(--bg-b);}
.final-box{position:relative;overflow:hidden;border-radius:32px;padding:56px 48px;text-align:center;background:linear-gradient(135deg,#F05613,#8A3FD1);color:#fff;}
.final-box::before{content:'';position:absolute;top:-35%;right:-8%;width:380px;height:380px;border-radius:50%;background:rgba(255,255,255,.14);filter:blur(10px);pointer-events:none;}
.final-box h2{position:relative;font-size:clamp(26px,3.8vw,40px);font-weight:800;line-height:1.14;letter-spacing:-.02em;margin-bottom:12px;color:#fff;}
.final-box p{position:relative;font-size:16px;color:rgba(255,255,255,.93);max-width:620px;margin:0 auto 28px;line-height:1.6;font-weight:500;}
.final-box .acts{position:relative;display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}
.final-box .acts a{display:inline-flex;align-items:center;gap:9px;font-weight:700;font-size:14.5px;padding:15px 28px;border-radius:100px;}
.final-box .acts .w{background:#fff;color:#220833;box-shadow:0 14px 34px rgba(0,0,0,.22);}
.final-box .acts .o{background:rgba(255,255,255,.16);color:#fff;border:1px solid rgba(255,255,255,.4);}
.final-box .acts svg{width:17px;height:17px;}
@media(max-width:600px){.final-box{padding:40px 24px;}}

/* ---------- Servicios: índice rápido ---------- */
.quicknav{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:34px;}
.quicknav a{font-size:13px;font-weight:700;color:var(--head);background:var(--card);border:1px solid var(--card-line);padding:10px 18px;border-radius:100px;transition:background .2s,transform .2s;}
.quicknav a:hover{background:var(--card-hover);transform:translateY(-2px);}

/* ---------- Páginas legales ---------- */
body.legal main{max-width:780px;margin:0 auto;padding:130px 20px 70px;}
body.legal h1{color:var(--head);font-size:clamp(26px,4vw,34px);}
body.legal h2{color:var(--head);}
body.legal p,body.legal li{color:var(--body);}
body.legal .fecha{color:var(--muted);}
body.legal th{color:var(--head);}
body.legal th,body.legal td{border-bottom-color:var(--card-line);}
body.legal td{color:var(--body);}
body.legal a.link{color:var(--accent-t);}
body.legal .enlaces-legales{border-top-color:var(--card-line);}
body.legal .aviso{background:var(--eyebrow-bg);color:var(--body);}
body.legal b,body.legal strong{color:var(--head);}

/* Accesibilidad */
html[data-theme] a:focus-visible,html[data-theme] button:focus-visible{outline:2px solid #F05613;outline-offset:2px;}
@media(prefers-reduced-motion:reduce){html[data-theme] .reveal{transition:none;}html[data-theme] .marquee-track{animation:none;}}

/* Pie legal: ajustes frente al CSS corto de las paginas legales */
html[data-theme] .site-foot{text-align:left;font-size:16px;color:inherit;}

/* Ajustes tras primera revisión visual */
html[data-theme] .hero:not(.hero-page) h1{max-width:21ch;}
@media(min-width:981px){
  html[data-theme] .service-summary-grid{grid-template-columns:repeat(6,1fr);}
  html[data-theme] .service-summary-grid .summary-card{grid-column:span 2;}
  html[data-theme] .service-summary-grid .summary-card:nth-child(4){grid-column:2 / span 2;}
}
html[data-theme] .service-price{margin-right:14px;}

html[data-theme] .mobile-menu a.mm-enter svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;}
html[data-theme] .funnel-opt{border:1px solid var(--card-line);}

/* ============================================================
   AUDITORÍA DE TEMA 02/10/2026 (agente H) — contraste, móvil y detalles
   El oscuro queda igual salvo fallos reales (texto oscuro sobre oscuro, blanco sobre verde claro).
   ============================================================ */

/* Interruptor sol/luna también visible en la cabecera móvil (antes solo estaba dentro del menú) */
@media(max-width:960px){
  html[data-theme] .nav-actions .arced-tt{display:inline-flex;}
  html[data-theme] .nav-actions [data-theme-toggle]:empty{display:none;}
  html[data-theme] .nav-actions{gap:8px;}
  html[data-theme] .nav-actions .arced-tt{padding:2px;gap:1px;}
  html[data-theme] .nav-actions .arced-tt button{width:28px;height:28px;}
}
@media(max-width:420px){
  html[data-theme] .nav .wrap{padding:8px 8px 8px 12px;gap:8px;}
  html[data-theme] .nav-enter{padding:10px 13px;gap:6px;}
  html[data-theme] .nav-enter svg{display:none;}
  html[data-theme] .nav-logo img{height:28px;width:28px;}
  html[data-theme] .nav-logo-wordmark{font-size:12px;}
  html[data-theme] .nav-actions .arced-tt button{width:26px;height:26px;}
}
@media(max-width:350px){
  html[data-theme] .nav-logo-wordmark{display:none;}
}

/* Formulario de contacto: la opción elegida (chip activo) perdía su fondo naranja con el CSS compartido */
html[data-theme] .chip.active{background:linear-gradient(135deg,#CF4A0E,#B23A08);color:#fff;border-color:transparent;box-shadow:0 8px 20px rgba(240,86,19,.3);}
html[data-theme] .chip.chip-highlight.active{background:linear-gradient(135deg,#7A35BD,#C8440C);color:#fff;border-color:transparent;}

/* Arbot en móvil: abajo a la izquierda (arriba tapaba el titular y la etiqueta del héroe) y su menú se abre hacia arriba */
@media(max-width:600px){
  html[data-theme] .robot-mascot{top:auto !important;bottom:16px;left:10px;}
  html[data-theme] .robot-mascot-svg{width:54px;height:59px;}
  html[data-theme] .rm-bubble{left:0;right:auto;top:auto;bottom:70px;width:224px;}
  html[data-theme] .rm-bubble::before{left:18px;top:auto;bottom:-7px;}
}

/* Migas de pan: separador legible */
html[data-theme] .breadcrumb .sep{color:var(--muted);opacity:1;}

/* Galería de resultados: 4 fotos del mismo alto (antes dejaba huecos en blanco) */
html[data-theme] .gallery-grid a,html[data-theme] .gallery-grid a:nth-child(3n+1){grid-row:span 3;}

/* Embudo: icono "€" de la venta (blanco sobre verde claro no se leía) */
html[data-theme] .funnel-num.pf{background:linear-gradient(135deg,#13A357,#0B7F44);}
/* Formulario de contacto: botón verde con texto blanco legible */
html[data-theme] .submit-btn{background:linear-gradient(135deg,#09803F,#087A3C);}

/* Bloque "agente de IA con CRM" de la home: es una sección SIEMPRE oscura, también en modo claro */
html[data-theme] .crm-showcase .section-head h2{color:#fff;}
html[data-theme] .crm-showcase .section-head h2 em{color:#FF7A3D;}

/* Servicios: nota "¿Tu sector no está aquí?" (llevaba color fijo oscuro, ilegible en oscuro) */
html[data-theme] .nota-sector{color:var(--muted) !important;}
html[data-theme] .nota-sector a{color:var(--accent-t) !important;}

/* Precios de las tarjetas de producto: acento legible sobre su fondo en cada tema */
html[data-theme="dark"] .pcard .pprice b{color:color-mix(in srgb,var(--pc) 68%,#fff);}
html[data-theme="light"] .pcard .pprice b{color:color-mix(in srgb,var(--pc) 62%,#000);}

/* ---------- Claro: botones, bandas y degradados con texto blanco a contraste AA ---------- */
html[data-theme="light"] .nav-enter,
html[data-theme="light"] .btn-primary,
html[data-theme="light"] .mobile-menu a.mm-enter{background:linear-gradient(135deg,#CF4A0E,#B23A08);}
html[data-theme="light"] .btn-crm{background:#C8440C;}
html[data-theme="light"] .pcard .pbtn{background:color-mix(in srgb,var(--pc) 78%,#000);}
html[data-theme="light"] .final-box,
html[data-theme="light"] .freebie-cta{background:linear-gradient(135deg,#C8440C,#7A35BD);}
html[data-theme="light"] .final-box p,
html[data-theme="light"] .freebie-text p{color:#fff;}
html[data-theme="light"] .freebie-eyebrow{background:rgba(0,0,0,.22);}
html[data-theme="light"] .testi-avatar{background:linear-gradient(135deg,#C8440C,#7A35BD);}
html[data-theme="light"] .final-box .acts .o{background:rgba(0,0,0,.2);border-color:rgba(255,255,255,.6);}
/* Texto grande con degradado: tonos más oscuros en claro para llegar a 3:1 sobre crema */
html[data-theme="light"] .hero h1 em,
html[data-theme="light"] .hero-page h1 em{background:linear-gradient(100deg,#D9480F,#C2430C 40%,#7B2FBE);-webkit-background-clip:text;background-clip:text;color:transparent;}
html[data-theme="light"] .fact .big{background:linear-gradient(120deg,#D9480F,#C2430C 50%,#7B2FBE);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;}
html[data-theme="light"] .funnel-badge{color:var(--eyebrow-t);}

/* ============================================================
   AUDITORÍA PROFUNDA N2 (02/10/2026) — accesibilidad, teclado, banner de cookies, formulario
   ============================================================ */
/* Enlace "Saltar al contenido" */
.skip-link{position:fixed;left:12px;top:-60px;z-index:2147483300;background:#220833;color:#fff;font:700 14px/1 'Montserrat',sans-serif;padding:13px 20px;border-radius:100px;border:2px solid #FF8A52;transition:top .15s;}
.skip-link:focus{top:12px;outline:none;}
main:focus,#contenido:focus,[tabindex="-1"]:focus{outline:none;}

/* Menú móvil: cerrado = fuera del orden de tabulación y de lectores de pantalla */
.mobile-menu{visibility:hidden;transition:opacity .35s ease,visibility 0s linear .35s;}
.mobile-menu.open{visibility:visible;transition:opacity .35s ease;}
html[data-theme] button.burger{padding:0;}

/* Foco visible en TODO lo interactivo (antes solo enlaces y botones) */
html[data-theme] :focus-visible{outline:2px solid #F05613;outline-offset:2px;border-radius:4px;}
html[data-theme="dark"] :focus-visible{outline-color:#FF8A52;}
html[data-theme] .field input:focus-visible,html[data-theme] .field textarea:focus-visible{outline:2px solid #F05613;outline-offset:1px;border-radius:12px;}
html[data-theme] .chip:focus-visible,html[data-theme] .vert-tab:focus-visible,html[data-theme] .btn:focus-visible,html[data-theme] .submit-btn:focus-visible{border-radius:100px;}

/* Zonas táctiles de los enlaces pequeños del pie */
html[data-theme] .foot-legal-links a{display:inline-block;padding:6px 0;}
html[data-theme] .foot-col a{min-height:32px;}

/* Formulario de contacto: mensajes de error y de estado */
.field .field-msg{display:none;margin-top:6px;font-size:12.5px;font-weight:600;color:#FF8A8A;line-height:1.4;}
html[data-theme="light"] .field .field-msg{color:#B3261E;}
.field.has-error .field-msg{display:block;}
html[data-theme] .field-error{border-color:#E5484D !important;}
.form-status{margin-top:14px;padding:13px 16px;border-radius:14px;font-size:14px;font-weight:600;line-height:1.5;display:none;}
.form-status.ok{display:block;background:rgba(15,169,104,.14);border:1px solid rgba(15,169,104,.45);color:var(--head);}
.form-status.err{display:block;background:rgba(229,72,77,.12);border:1px solid rgba(229,72,77,.45);color:var(--head);}
.form-status a{text-decoration:underline;font-weight:700;color:var(--accent-t);}
.form-consent{margin-top:12px;font-size:12.5px;line-height:1.55;color:var(--muted);font-weight:500;}
.form-consent a{color:var(--accent-t);text-decoration:underline;font-weight:700;}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}

/* Títulos del pie (antes h5: saltaban niveles de encabezado) */
html[data-theme] .foot-col .foot-h{color:var(--head);font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:16px;line-height:1.4;}
.tabla-scroll:focus-visible{outline:2px solid #F05613;outline-offset:2px;}

/* Botón real dentro de las tarjetas del embudo (servicios) */
.funnel-toggle{font:inherit;color:inherit;letter-spacing:inherit;line-height:inherit;text-align:left;background:none;border:0;padding:0;margin:0;cursor:pointer;display:inline;}
html[data-theme] .funnel-toggle:focus-visible{outline-offset:4px;border-radius:6px;}
html{scroll-padding-top:96px;}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto !important;}}

/* Reducir movimiento: sin animaciones decorativas */
@media(prefers-reduced-motion:reduce){
  html[data-theme] .flow-dot,html[data-theme] .cursor-glow{animation:none !important;}
  html[data-theme] .reveal{opacity:1 !important;transform:none !important;}
  html[data-theme] .robot-mascot *{animation:none !important;}
}