:root{
  --t50:#F0F7F5;--t100:#D6ECE7;--t200:#B0D9D0;--t300:#7CC2B3;--t400:#4BA898;--t500:#13967E;--t600:#0E7A67;--t700:#0A5F50;--t800:#074439;
  --bl50:#F0F4FA;--bl100:#DDE6F3;--bl400:#5B8EC9;--bl500:#3D72B0;--bl600:#2D5A8E;
  --pu50:#F3F1F9;--pu100:#E4E0F0;--pu400:#8B7ABF;--pu500:#6E5CA8;--pu600:#574A87;
  --ro50:#FAF0F1;--ro100:#F0DCDE;--ro400:#C76B73;--ro500:#B44D57;--ro600:#943F47;
  --am50:#F9F5ED;--am100:#F0E6D0;--am400:#C9A24E;--am500:#B08B35;--am600:#8E702A;
  --gn50:#EFF6F0;--gn100:#D6E9D9;--gn400:#5BAF6A;--gn500:#3D9650;--gn600:#2F7A3F;
  --or50:#FBF3EE;--or100:#F3E0D2;--or400:#D4845A;--or500:#BF6D3F;--or600:#9A5732;
  --n0:#FFF;--n25:#FAFAFA;--n50:#F5F5F4;--n75:#EEEEEC;--n100:#E5E5E3;--n150:#D6D6D3;--n200:#C4C4C0;--n300:#A3A39E;--n400:#82827D;--n500:#63635F;--n600:#4A4A47;--n700:#353533;--n800:#232322;--n900:#141413;--n950:#0A0A09;
  --fd:'Sora',system-ui,sans-serif;--fb:'Figtree',system-ui,sans-serif;
  --ease:cubic-bezier(.22,1,.36,1);--spring:cubic-bezier(.34,1.56,.64,1);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{font-family:var(--fb);background:var(--n0);color:var(--n900);-webkit-font-smoothing:antialiased;overflow-x:clip}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%;height:auto}
ul{list-style:none}
button{font-family:inherit;cursor:pointer;border:none;background:none}

/* ─── Design system tokens v1.18 (radius, shadows) ─── */
:root{
  --r-sm:8px;--r-md:14px;--r-lg:20px;--r-xl:32px;--r-pill:9999px;
  --sh-sm:0 1px 3px rgba(0,0,0,.04);
  --sh-md:0 4px 14px rgba(0,0,0,.06);
  --sh-lg:0 16px 40px rgba(0,0,0,.08);
  --sh-xl:0 24px 60px rgba(0,0,0,.1);
  --sh-glow-teal:0 4px 16px rgba(19,150,126,.2);
}

/* ─── Accesibilidad (WCAG 2.1) ─── */
.skip-link{
  position:absolute;left:-9999px;top:0;
  padding:12px 20px;
  background:var(--n950);color:#fff;
  font-family:var(--fd);font-weight:700;font-size:14px;
  border-radius:0 0 8px 0;
  z-index:9999;
  transition:left 0s;
}
.skip-link:focus{left:0;outline:3px solid var(--t500);outline-offset:0}

*:focus{outline:none}
*:focus-visible{
  outline:2px solid var(--t500);
  outline-offset:2px;
  border-radius:4px;
}
.b:focus-visible,
button.b:focus-visible,
a.b:focus-visible{
  outline:2px solid var(--t500);
  outline-offset:3px;
}
input:focus-visible,
textarea:focus-visible,
select:focus-visible{
  outline:2px solid var(--t500);
  outline-offset:0;
}

@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{
    animation-duration:.01ms !important;
    transition-duration:.01ms !important;
    scroll-behavior:auto !important;
  }
}

.aiden-w{max-width:1200px;margin:0 auto;padding:0 32px}
.aiden-section{padding:120px 0;position:relative}
.aiden-section--alt{background:var(--n50)}
.aiden-section--dark{background:linear-gradient(170deg,var(--n900),var(--t800) 50%,var(--n800));color:#fff}

.aiden-sh{text-align:center;max-width:640px;margin:0 auto 64px}
.aiden-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--n300);margin-bottom:12px;display:block}
.aiden-title{font-family:var(--fd);font-size:clamp(1.8rem,3.5vw,2.8rem);font-weight:700;letter-spacing:-.035em;line-height:1.08;color:var(--n950);margin-bottom:16px}
.aiden-section--dark .aiden-title{color:#fff}
.aiden-desc{font-size:16px;line-height:1.7;color:var(--n400)}
.aiden-section--dark .aiden-desc{color:rgba(255,255,255,.45)}

.aiden-btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 24px;border-radius:9999px;font-family:var(--fb);font-weight:600;font-size:14px;border:none;cursor:pointer;transition:all 250ms var(--ease)}
.aiden-btn:hover{transform:translateY(-1px)}
.aiden-btn--primary{background:var(--t500);color:#fff;box-shadow:0 2px 12px rgba(19,150,126,.18)}
.aiden-btn--primary:hover{background:var(--t600);box-shadow:0 4px 20px rgba(19,150,126,.22)}
.aiden-btn--dark{background:var(--n900);color:#fff}
.aiden-btn--dark:hover{background:var(--n800)}
.aiden-btn--outline{background:transparent;color:var(--n700);border:1.5px solid var(--n150)}
.aiden-btn--outline:hover{border-color:var(--n200);background:var(--n25)}
.aiden-btn--glass{background:rgba(255,255,255,.55);backdrop-filter:blur(24px) saturate(1.5);-webkit-backdrop-filter:blur(24px) saturate(1.5);color:var(--n800);border:1px solid rgba(255,255,255,.6)}
.aiden-btn--lg{padding:13px 30px;font-size:15px}

.aiden-ico{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.aiden-ico svg{width:22px;height:22px}
.aiden-ico--sm{width:40px;height:40px;border-radius:12px}
.aiden-ico--sm svg{width:18px;height:18px}
.aiden-ico--teal{background:var(--t50)}.aiden-ico--blue{background:var(--bl50)}.aiden-ico--purple{background:var(--pu50)}.aiden-ico--amber{background:var(--am50)}.aiden-ico--green{background:var(--gn50)}.aiden-ico--orange{background:var(--or50)}.aiden-ico--rose{background:var(--ro50)}

.aiden-pill{display:inline-flex;align-items:center;gap:5px;padding:4px 12px;border-radius:6px;font-size:11.5px;font-weight:600}
.aiden-pill--round{border-radius:9999px;padding:4px 14px}
.aiden-pill--teal{background:var(--t50);color:var(--t600)}.aiden-pill--blue{background:var(--bl50);color:var(--bl600)}.aiden-pill--purple{background:var(--pu50);color:var(--pu600)}.aiden-pill--rose{background:var(--ro50);color:var(--ro600)}.aiden-pill--amber{background:var(--am50);color:var(--am600)}.aiden-pill--green{background:var(--gn50);color:var(--gn600)}
.aiden-pill-dot{width:5px;height:5px;border-radius:50%;flex-shrink:0}

.aiden-card{background:var(--n0);border:1px solid var(--n75);border-radius:16px;box-shadow:0 1px 2px rgba(0,0,0,.04),0 4px 16px rgba(0,0,0,.04);transition:all 280ms var(--ease);overflow:hidden}
.aiden-card:hover{box-shadow:0 2px 4px rgba(0,0,0,.04),0 8px 28px rgba(0,0,0,.07);transform:translateY(-2px)}

.aiden-glass{background:rgba(255,255,255,.55);backdrop-filter:blur(40px) saturate(1.7);-webkit-backdrop-filter:blur(40px) saturate(1.7);border:1px solid rgba(255,255,255,.55);border-radius:20px;box-shadow:0 4px 20px rgba(0,0,0,.04),inset 0 1px 0 rgba(255,255,255,.78);position:relative;z-index:2;overflow:hidden}
.aiden-glass::before{content:'';position:absolute;top:-40%;left:-25%;width:150%;height:130%;background:radial-gradient(ellipse at 30% 25%,rgba(255,255,255,.35),transparent 55%);pointer-events:none;z-index:1}

.aiden-rv{opacity:0;transform:translateY(40px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.aiden-rv--on{opacity:1;transform:translateY(0)}
.aiden-rv--d1{transition-delay:.1s}.aiden-rv--d2{transition-delay:.2s}.aiden-rv--d3{transition-delay:.3s}.aiden-rv--d4{transition-delay:.4s}

.aiden-feat{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.aiden-feat--rev{direction:rtl}.aiden-feat--rev>*{direction:ltr}
.aiden-feat-list{display:flex;flex-direction:column;gap:12px;margin-bottom:32px;list-style:none}
.aiden-feat-list li{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--n500)}

.aiden-trust{padding:48px 0;border-top:1px solid var(--n75);border-bottom:1px solid var(--n75)}
.aiden-trust-grid{display:flex;justify-content:center;gap:48px;flex-wrap:wrap}
.aiden-trust-num{font-family:var(--fd);font-size:28px;font-weight:800;color:var(--n900);letter-spacing:-.03em;text-align:center}
.aiden-trust-label{font-size:13px;color:var(--n400);margin-top:4px;text-align:center}

.aiden-orb{position:absolute;border-radius:50%;pointer-events:none}

@media(max-width:1024px){.aiden-feat,.aiden-feat--rev{grid-template-columns:1fr;gap:48px;direction:ltr}.aiden-feat--rev>*{direction:ltr}}
@media(max-width:768px){.aiden-section{padding:80px 0}.aiden-w{padding:0 20px}.aiden-trust-grid{gap:24px}.aiden-sh{margin-bottom:40px}}

/* ═══ Smooth scroll + scroll-margin para anchor links con header fixed ═══ */
html{scroll-behavior:smooth}
.aiden-page-inicio [id]{scroll-margin-top:90px}

/* ═══ ASMS · Product showcase section (1 imagen + título + texto) ═══ */
.asms{position:relative;padding:100px 0;overflow:hidden}
.asms--tint{background:linear-gradient(180deg,#FAFAF9 0%,#F4F4F3 100%)}
.asms--plain{background:#fff}

.asms-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:72px;align-items:center;max-width:1200px;margin:0 auto}
.asms--left .asms-grid{grid-template-columns:1.1fr 1fr}
.asms--left .asms-body{order:2}
.asms--left .asms-visual{order:1}
.asms--center .asms-grid{grid-template-columns:1fr;max-width:860px;text-align:center}
.asms--center .asms-body{align-items:center}

.asms-body{display:flex;flex-direction:column;max-width:520px}
.asms-label{display:inline-flex;align-self:flex-start;padding:5px 14px;background:rgba(255,255,255,.75);backdrop-filter:blur(20px) saturate(1.6);-webkit-backdrop-filter:blur(20px) saturate(1.6);border:1px solid rgba(255,255,255,.8);border-radius:9999px;color:var(--asms-accent);font-family:var(--fd);font-weight:800;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:20px;line-height:1.3;box-shadow:0 1px 3px rgba(0,0,0,.04)}
.asms--center .asms-label{align-self:center}
.asms-title{font-family:var(--fd);font-weight:800;font-size:clamp(1.9rem,3.5vw,2.6rem);line-height:1.08;letter-spacing:-.035em;color:var(--n950);margin:0 0 16px}
.asms-title em{font-style:normal;background:linear-gradient(110deg,var(--asms-accent) 0%,var(--asms-accent) 100%);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:brightness(.85)}
.asms-desc{font-family:var(--fb);font-size:16px;line-height:1.6;color:var(--n500);margin:0}

.asms-visual{position:relative;aspect-ratio:16/11;max-width:620px;margin:0 auto;width:100%}
.asms-glow{position:absolute;inset:-12%;background:radial-gradient(circle at 50% 50%,var(--asms-glow) 0%,transparent 65%);filter:blur(40px);pointer-events:none;z-index:0;animation:asmsGlow 5s ease-in-out infinite alternate}
@keyframes asmsGlow{to{opacity:.7;transform:scale(1.06)}}
.asms-frame{position:relative;z-index:1;width:100%;height:100%;border-radius:22px;overflow:hidden;background:linear-gradient(135deg,#F4F4F3,#EAEAE8);box-shadow:0 2px 8px rgba(0,0,0,.04),0 32px 72px rgba(0,0,0,.12);transition:transform .5s cubic-bezier(.16,1,.3,1),box-shadow .5s cubic-bezier(.16,1,.3,1)}
.asms-frame:hover{transform:translateY(-5px);box-shadow:0 4px 14px rgba(0,0,0,.06),0 40px 88px rgba(0,0,0,.16)}
.asms-frame img{width:100%;height:100%;object-fit:cover;display:block}
.asms-ph{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--n300);background:repeating-linear-gradient(45deg,#F4F4F3,#F4F4F3 14px,#EAEAE8 14px,#EAEAE8 28px)}
.asms-ph svg{width:60px;height:60px}
.asms-ph span{font-family:var(--fb);font-size:12.5px;font-weight:600;letter-spacing:.02em;color:var(--n400)}

@media(max-width:1024px){
  .asms{padding:72px 0}
  .asms-grid,.asms--left .asms-grid{grid-template-columns:1fr;gap:40px;max-width:560px}
  .asms--left .asms-body{order:1}
  .asms--left .asms-visual{order:2}
  .asms-body{max-width:none;text-align:center;align-items:center}
  .asms-visual{max-width:560px}
}
@media(max-width:768px){
  .asms{padding:56px 0}
  .asms-grid,.asms--left .asms-grid{gap:32px}
  .asms-frame{border-radius:18px}
}

/* ═══════════════════════════════════════════════════════════
 * GLOBAL BUTTONS (sin scope) · funcionan en cualquier página
 * Las reglas scoped en page-inicio.css siguen aplicando por especificidad
 * ═══════════════════════════════════════════════════════════ */
.b{display:inline-flex;align-items:center;gap:6px;padding:12px 24px;border-radius:9999px;font-family:var(--fb,"Figtree",system-ui,sans-serif);font-weight:600;font-size:14px;letter-spacing:-.005em;transition:all .25s var(--ease,cubic-bezier(.16,1,.3,1));width:auto;white-space:nowrap;cursor:pointer;border:none;text-decoration:none;position:relative;z-index:1}
.b svg{width:14px;height:14px;pointer-events:none;transition:transform .25s var(--ease,cubic-bezier(.16,1,.3,1));flex-shrink:0}
.b:hover{transform:translateY(-1px)}
.b:hover svg{transform:translateX(3px)}
.b-p{background:var(--n900,#141413);color:#fff}
.b-p:hover{background:var(--n800,#2A2A28);box-shadow:0 4px 14px rgba(0,0,0,.15)}
.b-d{background:var(--n900,#141413);color:#fff}
.b-d:hover{background:var(--n800,#2A2A28)}
.b-gl{background:rgba(255,255,255,.6);backdrop-filter:blur(24px) saturate(1.5);-webkit-backdrop-filter:blur(24px) saturate(1.5);color:var(--n900,#141413);border:1px solid rgba(255,255,255,.6);box-shadow:0 1px 4px rgba(0,0,0,.03),inset 0 1px 0 rgba(255,255,255,.85)}
.b-gl:hover{background:rgba(255,255,255,.8)}
.b-o{background:transparent;color:var(--n700,#545250);border:1.5px solid var(--n150,#E6E4E0)}
.b-o:hover{border-color:var(--n200,#D6D2CC);background:var(--n25,#FAFAF9)}
.b-lg{padding:14px 28px;font-size:15px}
