*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Inter',system-ui,sans-serif;background:#ffffff;color:#1a2e1a;line-height:1.6;overflow-x:hidden}
a{text-decoration:none;color:inherit}
:root{
  --green:#5AAD2D;--green-dark:#2B5A14;--green-glow:#2B5A14;--green-neon:rgba(90,173,45,0.08);
  --bg:#ffffff;--bg2:#f8faf6;--bg-card:rgba(43,90,20,0.03);
  --border:rgba(43,90,20,0.12);--border-glow:rgba(90,173,45,0.4);
  --text:#1a2e1a;--text-dim:#5a6b52;--text-heading:#0f1a0a;
}
.container{max-width:1200px;margin:0 auto;padding:0 24px}
@keyframes gr-spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}@keyframes gr-unspin{from{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(-360deg)}}@keyframes gr-glow{0%,100%{box-shadow:0 0 0 0 rgba(0,0,0,0)}3%{box-shadow:0 0 26px 6px var(--gl,rgba(123,201,80,.5))}16%{box-shadow:0 0 0 0 rgba(0,0,0,0)}}@keyframes gr-ripple{0%{opacity:0;transform:scale(.85)}4%{opacity:1;transform:scale(1)}18%{opacity:0;transform:scale(1.55)}100%{opacity:0;transform:scale(1.55)}}@keyframes gr-halo{0%{transform:scale(1);opacity:.5}100%{transform:scale(2.3);opacity:0}}@keyframes gr-packet{0%{transform:translate(0,-50%);opacity:0}12%{opacity:1}88%{opacity:1}100%{transform:translate(var(--pd,264px),-50%);opacity:0}}@keyframes gr-photo{0%,18%{opacity:1}22%,96%{opacity:0}100%{opacity:1}}@keyframes gr-breathe{0%,100%{opacity:.35}50%{opacity:.75}}

/* ══ Regulator.IA design-system tokens (Claude Design) ══
   The production :root already covered --green/--text/--border; this adds what
   the new hero needs and did not exist: deep greens, the type scale, per-phase
   tints and the variables that drive the orbit. */
:root{
  --pine:#2B5A14;--moss:#5AAD2D;--sprout:#7BC950;--ink:#0F1A0A;--stem:#5A6B52;
  --paper:#FFFFFF;--mist:#F8FAF6;
  --pine-deep:#0f2e10;--pine-deepest:#0c2a0e;--leaf-pale:#b8e986;
  --surface-card:var(--paper);--surface-page:var(--paper);--surface-alt:var(--mist);
  --text-heading-strong:var(--ink);--text-body:#1a2e1a;--text-muted:var(--stem);
  --border-hairline:rgba(43,90,20,.08);--border-default:rgba(43,90,20,.12);
  --border-accent:rgba(90,173,45,.4);
  --on-dark-text:#fff;--on-dark-text-dim:rgba(255,255,255,.68);
  --on-dark-text-faint:rgba(255,255,255,.6);--on-dark-glass:rgba(255,255,255,.08);
  --on-dark-border:rgba(255,255,255,.15);--on-dark-border-strong:rgba(255,255,255,.28);
  --on-dark-accent:var(--sprout);
  --phase-pre:#1d4ed8;--phase-reg:var(--pine);--phase-post:#c2410c;
  --fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;
  --fw-extrabold:800;--fw-black:900;
  --fs-hero:4rem;--fs-lead:1.05rem;--fs-caption:.78rem;
  --fs-kpi-label:.62rem;--fs-kpi-sub:.66rem;
  --ls-hero:-.04em;--ls-h3:-.02em;--ls-eyebrow:.06em;--ls-label:.08em;
  --lh-hero:1.1;--lh-lead:1.8;--measure-prose:52ch;
  --radius-xl:16px;--shadow-card:0 1px 2px rgba(15,26,10,.05),0 10px 28px rgba(15,26,10,.06);
  --grad-cta:linear-gradient(135deg,#5AAD2D,#2B5A14);
  --grad-wordmark:linear-gradient(135deg,#2B5A14,#5AAD2D);
  --grad-emphasis:linear-gradient(120deg,#7BC950,#5AAD2D,#b8e986);
  --grad-deep:linear-gradient(160deg,#0f2e10 0%,#2B5A14 55%,#0c2a0e 100%);
  /* The DCLogic component used to inject these; here they are fixed values. */
  --gr-orbit:96s;--gr-sweep:18s;--gr-play:running;--gr-dim:1;--gr-sweep-op:1;
}

/* ══ Hero with orbit ══ */
.hero{background:var(--pine-deep)}
.hero-orbit{transform:scale(var(--orb-k,1));transform-origin:center;
  will-change:transform;flex:none}
/* Panel shown when hovering an agent. */
.hero-agent-panel[hidden]{display:none}
.hp-dot[hidden]{display:none}

/* The design's h1 carries font-size:var(--fs-hero) INLINE, so no CSS rule can
   lower it. Rescale the token instead, which is exactly what it is for: with a
   fixed 4rem the headline took five lines on a phone. */
@media(max-width:1180px){:root{--orb-k:.82;--fs-hero:3.3rem}}
@media(max-width:1000px){:root{--fs-hero:3rem}}
@media(max-width:760px){:root{--fs-hero:2.35rem;--fs-lead:1rem;--lh-lead:1.65}}
@media(max-width:430px){:root{--fs-hero:2rem}}
@media(max-width:1000px){
  /* On tablet the text moves on top and the orbit below, centered. */
  .hero .hero-grid{grid-template-columns:minmax(0,1fr)!important;justify-items:center;
    text-align:center;gap:24px!important}
  .hero .hero-grid h1,.hero .hero-grid p{text-align:center}
  :root{--orb-k:.78}
}
@media(max-width:760px){
  :root{--orb-k:.62}
  .hero-orbit{margin:-90px 0}
  .hero-agent-panel{display:none!important}
}
@media(max-width:520px){:root{--orb-k:.5}.hero-orbit{margin:-130px 0}}

/* Without a fine pointer the orbit can't be explored: keep it spinning, no panel. */
@media(hover:none){.hero-agent-panel{display:none!important}}
@media(prefers-reduced-motion:reduce){
  .hero *{animation-duration:0s!important;animation-iteration-count:1!important}
}

/* ══ 3D agent icons (replace the emojis) ══ */
.agi{display:inline-block;flex-shrink:0;filter:drop-shadow(0 1.5px 2px rgba(15,26,10,.26))}
.agi-in{width:1.16em;height:1.16em;vertical-align:-.22em;margin-right:.45em;color:var(--green-dark)}
.node-icon .agi{width:27px;height:27px;transition:transform .3s}
.orq-icon .agi{width:34px;height:34px}
.mstep-icon .agi{width:30px;height:30px;color:var(--green)}
.pf-icon .agi{width:20px;height:20px;color:var(--green)}
.pc-pre .pc-tag .agi{color:#2563eb}
.pc-reg .pc-tag .agi{color:var(--green)}
.pc-post .pc-tag .agi{color:#ea580c}
.dash-nav-item .agi,.dash-table-header .agi{color:#7BC950}
.video-card-title .agi{color:var(--green)}
.th-ia .agi{color:#fff}

/* ══ Interactive pointer constellation ══ */
.diagram-cursor{position:absolute;top:0;left:0;width:360px;height:360px;margin:-180px 0 0 -180px;
  border-radius:50%;pointer-events:none;opacity:0;z-index:1;
  background:radial-gradient(circle,rgba(90,173,45,.18) 0%,rgba(90,173,45,.07) 42%,transparent 70%)}
.agent-node.near{border-color:var(--green)!important;box-shadow:0 10px 34px rgba(90,173,45,.36)!important}
.agent-node.near .node-icon .agi{transform:scale(1.16)}

/* ══ Mobile horizontal-scroll fix ══
   The mock dashboard table pushed the width of the WHOLE page (616px on a 375px
   viewport). Grid/flex items won't shrink below their min-content width without
   min-width:0; with that the table scrolls inside its own card. */
.dashboard-shell,.dash-main,.dash-table-wrap{min-width:0}
.dash-table-wrap{overflow-x:auto}
/* The footer links (flex, no wrap, 592px) overflowed the mobile viewport and
   became unreachable because body has overflow-x:hidden. */
.footer-links{flex-wrap:wrap;justify-content:center}

/* ══ Language switcher ══ */
.lang-switch{display:flex;align-items:center;gap:2px;padding:3px;
  background:rgba(43,90,20,.05);border:1px solid var(--border);border-radius:50px}
.lang-switch a{font-size:.7rem;font-weight:800;letter-spacing:.03em;color:var(--text-dim);
  padding:5px 9px;border-radius:50px;transition:background .25s,color .25s;white-space:nowrap}
.lang-switch a:hover{color:var(--green-dark);background:rgba(90,173,45,.1)}
.lang-switch a[aria-current="true"]{background:linear-gradient(135deg,var(--green-dark),var(--green));
  color:#fff}
/* The nav holds 8 links + switcher + CTA: keep the gaps tight before it wraps.
   The CTA must never break — in PT "Solicitar Demo" fell onto two lines. */
.nav-cta{white-space:nowrap}
.nav-links>a{white-space:nowrap}
@media(max-width:1100px){
  .lang-switch{margin:10px auto 0;justify-content:center}
  .lang-switch a{padding:8px 15px;font-size:.82rem}
}

/* ══ FAQ ══ */
.faq-section{padding:110px 0;background:var(--bg2)}
.faq-list{max-width:840px;margin:0 auto}
.faq-item{background:#fff;border:1px solid var(--border);border-radius:16px;margin-bottom:14px;
  overflow:hidden;transition:border-color .3s,box-shadow .3s}
.faq-item[open]{border-color:var(--border-glow);box-shadow:0 8px 30px rgba(43,90,20,.08)}
.faq-item summary{list-style:none;cursor:pointer;padding:22px 26px;display:flex;align-items:center;
  justify-content:space-between;gap:20px;font-weight:700;font-size:1.02rem;color:var(--text-heading)}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary:hover{color:var(--green-dark)}
.faq-item summary:focus-visible{outline:2px solid var(--green);outline-offset:-2px;border-radius:16px}
.faq-chev{width:20px;height:20px;flex-shrink:0;color:var(--green);transition:transform .3s}
.faq-item[open] .faq-chev{transform:rotate(180deg)}
.faq-a{padding:0 26px 24px;color:var(--text-dim);font-size:.96rem;line-height:1.72;
  border-top:1px solid var(--border);padding-top:18px;margin:0 26px 24px 26px}
@media(max-width:768px){
  .faq-section{padding:70px 0}
  .faq-item summary{padding:18px 20px;font-size:.95rem}
  .faq-a{margin:0 20px 20px;padding:16px 0 0;font-size:.9rem}
  .node-icon .agi{width:20px;height:20px}
  .diagram-cursor{display:none}
}

.nav{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(255,255,255,0.92);backdrop-filter:blur(20px);border-bottom:1px solid var(--border)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:70px;max-width:1200px;margin:0 auto;padding:0 24px;gap:56px}
.nav-logo{flex-shrink:0}
.nav-logo{font-size:1.3rem;font-weight:800;background:linear-gradient(135deg,var(--green-dark),var(--green));-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.nav-links{display:flex;gap:24px;align-items:center}
/* The base gap dropped from 32 to 24px: with 8 tabs + language switcher + CTA,
   the bar sat 47px from the logo and the logo read like just another tab. These
   rules live HERE and not in the i18n block because, at equal specificity, the
   last one in the sheet wins. */
@media(max-width:1320px){.nav-links{gap:18px}}
@media(max-width:1240px){.nav-links{gap:13px}.nav-links a{font-size:.8rem}}
@media(max-width:1160px){.nav-inner{gap:32px}}
.nav-links a{font-size:.85rem;font-weight:500;color:var(--text-dim);transition:color .3s}
.nav-links a:hover{color:var(--green)}
.nav-cta{background:linear-gradient(135deg,var(--green),var(--green-dark));color:#fff!important;-webkit-text-fill-color:#fff!important;padding:10px 24px;border-radius:8px;font-weight:600;transition:box-shadow .3s,transform .3s}
.nav-cta:hover{box-shadow:0 4px 20px rgba(90,173,45,0.3);transform:translateY(-1px)}
.nav-mobile{display:none;background:none;border:none;cursor:pointer;padding:8px}
.nav-mobile span{display:block;width:22px;height:2px;background:var(--text);margin:5px 0;border-radius:2px;transition:transform .3s,opacity .3s}

.hero{min-height:100vh;display:flex;align-items:center;position:relative;overflow:hidden;padding:120px 0 80px}
.hero-bg-carousel{position:absolute;inset:0;z-index:0}
.hero-bg-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.2s ease-in-out}
.hero-bg-slide.active{opacity:1}
.hero-bg-slide img{width:100%;height:100%;object-fit:cover}
.hero-bg-overlay{position:absolute;inset:0;background:linear-gradient(165deg,rgba(15,26,10,0.75) 0%,rgba(43,90,20,0.6) 40%,rgba(15,26,10,0.8) 100%);z-index:1}
.hero-bg-overlay::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 30% 50%,rgba(90,173,45,0.1) 0%,transparent 60%)}

/* ══ Cursor-following spotlight in the hero ══
   Two discarded attempts before this one:
     · a soft-light div     -> imperceptible over an already bright photo
     · a radial mask overlay -> looks good, but repainting the whole hero
       surface every frame left 42 of 89 frames above 16.7 ms
   This uses mix-blend-mode: screen, which lightens visibly, and moves with
   transform only: the work stays on the compositor. */
.hero-spot{transition:opacity .45s ease;position:absolute;top:0;left:0;z-index:2;pointer-events:none;
  width:620px;height:620px;margin:-310px 0 0 -310px;border-radius:50%;
  background:radial-gradient(circle,rgba(172,216,136,.50) 0%,
    rgba(124,178,92,.26) 40%,transparent 70%);
  mix-blend-mode:screen;opacity:0;will-change:transform,opacity}
@media(hover:none),(prefers-reduced-motion:reduce){.hero-spot{display:none}}
.hero-content{text-align:center;position:relative;z-index:3;max-width:900px;margin:0 auto}
.hero-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(90,173,45,0.2);border:1px solid rgba(90,173,45,0.4);color:#b8e986;padding:8px 20px;border-radius:50px;font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;margin-bottom:32px}
.hero-badge::before{content:'';width:8px;height:8px;background:var(--green);border-radius:50%;animation:pulse 2s infinite}
@keyframes pulse{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(90,173,45,0.4)}50%{opacity:.7;box-shadow:0 0 0 8px rgba(90,173,45,0)}}
.hero h1{font-size:4rem;font-weight:900;line-height:1.1;letter-spacing:-.04em;margin-bottom:24px;color:#fff}
.hero h1 .gradient{background:linear-gradient(135deg,#7BC950,var(--green),#b8e986);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-size:200% 200%;animation:gradShift 5s ease infinite}
@keyframes gradShift{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
.hero .lead{font-size:1.2rem;color:rgba(255,255,255,0.85);max-width:700px;margin:0 auto 40px;line-height:1.8}
.hero-btns{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-bottom:32px}
.btn-glow{background:linear-gradient(135deg,var(--green),var(--green-dark));color:#fff;padding:16px 36px;border-radius:12px;font-weight:700;font-size:1rem;border:none;cursor:pointer;position:relative;overflow:hidden;transition:transform .3s,box-shadow .3s}
.btn-glow:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(90,173,45,0.4)}
.btn-glow::after{content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(45deg,transparent,rgba(255,255,255,0.15),transparent);transform:rotate(45deg);transition:.5s}
.btn-glow:hover::after{left:100%}
.btn-ghost{color:#fff;padding:16px 36px;border-radius:12px;font-weight:600;font-size:1rem;border:2px solid rgba(255,255,255,0.3);cursor:pointer;transition:border-color .3s,box-shadow .3s,background .3s;background:transparent}
.btn-ghost:hover{border-color:var(--green);background:rgba(90,173,45,0.15);box-shadow:0 4px 15px rgba(90,173,45,0.2)}
.carousel-nav{display:flex;justify-content:center;align-items:center;gap:10px;position:relative;z-index:3}
.carousel-dot{width:24px;height:24px;border-radius:50%;background:none;border:none;cursor:pointer;padding:0;display:grid;place-items:center;-webkit-tap-highlight-color:transparent}
.carousel-dot::after{content:"";width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,0.35);transition:background .3s,transform .3s}
.carousel-dot.active::after{background:#fff;transform:scale(1.3)}
.slide-label{color:rgba(255,255,255,0.6);font-size:.78rem;font-weight:500;text-align:center;margin-top:12px;min-height:20px;transition:opacity .4s}

/* Hero trust pills */
.hero-trust{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-top:24px}
.trust-pill{display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.2);color:rgba(255,255,255,0.8);padding:6px 14px;border-radius:50px;font-size:.72rem;font-weight:500}
.trust-pill svg{width:14px;height:14px;fill:var(--green);flex-shrink:0}

#particles{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1}
.stats{padding:60px 0;background:var(--green-dark);position:relative;z-index:2}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;text-align:center}
.stat-num{font-size:2.8rem;font-weight:900;color:#fff}
.stat-label{font-size:.85rem;color:rgba(255,255,255,0.7);margin-top:4px}
.section{padding:120px 0;position:relative;z-index:2}
.section-tag{display:inline-flex;align-items:center;gap:6px;background:rgba(90,173,45,0.08);border:1px solid rgba(90,173,45,0.2);color:var(--green-dark);padding:6px 16px;border-radius:50px;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-bottom:16px}
.section-title{font-size:2.8rem;font-weight:900;letter-spacing:-.03em;line-height:1.15;margin-bottom:16px;color:var(--text-heading)}
.section-sub{font-size:1.05rem;color:var(--text-dim);max-width:600px;line-height:1.8}
.section-header{margin-bottom:64px}
.section-header.center{text-align:center}
.section-header.center .section-sub{margin:0 auto}

/* ── Orbital diagram ── */
.diagram-section{padding:120px 0;position:relative;z-index:2;overflow:hidden;background:linear-gradient(180deg,#fff 0%,#f0fae8 50%,#fff 100%)}
.diagram-section::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(90,173,45,0.04) 0%,transparent 70%)}
.diagram-wrap{position:relative;width:700px;height:700px;margin:0 auto}
.orq-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:140px;height:140px;border-radius:50%;background:linear-gradient(135deg,var(--green-dark),var(--green));display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:.85rem;text-align:center;box-shadow:0 8px 40px rgba(43,90,20,0.25);z-index:10;cursor:default;transition:box-shadow .3s}
.orq-center:hover{box-shadow:0 12px 60px rgba(43,90,20,0.35)}
.orq-center .orq-icon{font-size:1.8rem;margin-bottom:4px}
.orq-ring{position:absolute;top:50%;left:50%;border:1px dashed rgba(43,90,20,0.12);border-radius:50%;transform:translate(-50%,-50%);animation:ringRotate 60s linear infinite}
.orq-ring.r1{width:360px;height:360px}
.orq-ring.r2{width:520px;height:520px;animation-duration:80s;animation-direction:reverse}
.orq-ring.r3{width:660px;height:660px;animation-duration:100s}
@keyframes ringRotate{0%{transform:translate(-50%,-50%) rotate(0deg)}100%{transform:translate(-50%,-50%) rotate(360deg)}}
.agent-node{position:absolute;width:90px;height:90px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:.65rem;font-weight:700;text-align:center;cursor:pointer;transition:transform .3s,box-shadow .3s;z-index:10;border:2px solid;background:#fff}
.agent-node:hover{z-index:20}
.agent-node .node-icon{font-size:1.2rem;margin-bottom:2px}
.agent-node .node-name{line-height:1.2}
.phase-pre{border-color:rgba(59,130,246,0.4);color:#1d4ed8;background:rgba(59,130,246,0.06)}
.phase-pre:hover{box-shadow:0 8px 30px rgba(59,130,246,0.2)}
.phase-reg{border-color:rgba(90,173,45,0.4);color:var(--green-dark);background:rgba(90,173,45,0.06)}
.phase-reg:hover{box-shadow:0 8px 30px rgba(90,173,45,0.2)}
.phase-post{border-color:rgba(234,88,12,0.4);color:#c2410c;background:rgba(234,88,12,0.06)}
.phase-post:hover{box-shadow:0 8px 30px rgba(234,88,12,0.2)}
.agent-tooltip{position:fixed;background:rgba(255,255,255,0.97);backdrop-filter:blur(20px);border:1px solid var(--border-glow);border-radius:16px;padding:24px;max-width:320px;z-index:1000;pointer-events:none;opacity:0;transform:translateY(10px);transition:opacity .3s,transform .3s;box-shadow:0 12px 40px rgba(0,0,0,0.1)}
.agent-tooltip.show{opacity:1;transform:translateY(0);pointer-events:auto}
.agent-tooltip h3{font-size:1rem;font-weight:800;margin-bottom:4px;color:var(--text-heading)}
.agent-tooltip .tt-phase{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;display:inline-block;padding:3px 10px;border-radius:6px}
.tt-pre{background:rgba(59,130,246,0.1);color:#1d4ed8}
.tt-reg{background:rgba(90,173,45,0.1);color:var(--green-dark)}
.tt-post{background:rgba(234,88,12,0.1);color:#c2410c}
.agent-tooltip p{font-size:.85rem;color:var(--text-dim);line-height:1.6}
.connections-svg{position:absolute;top:0;left:0;width:100%;height:100%;z-index:5;pointer-events:none}
.conn-line{stroke:rgba(43,90,20,0.1);stroke-width:1;fill:none}
.data-pulse{fill:var(--green);r:3;opacity:0}

/* ── Phases grid ── */
.phases-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:48px}
.phase-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:32px;transition:border-color .3s,box-shadow .3s;position:relative;overflow:hidden}
.phase-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px}
.phase-card.pc-pre::before{background:linear-gradient(90deg,#2563eb,#3b82f6)}
.phase-card.pc-reg::before{background:linear-gradient(90deg,var(--green-dark),var(--green))}
.phase-card.pc-post::before{background:linear-gradient(90deg,#ea580c,#f97316)}
.phase-card:hover{border-color:var(--border-glow);box-shadow:0 8px 30px rgba(43,90,20,0.08)}
.pc-label{font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px}
.pc-pre .pc-label{color:#2563eb}
.pc-reg .pc-label{color:var(--green-dark)}
.pc-post .pc-label{color:#ea580c}
.pc-title{font-size:1.2rem;font-weight:800;color:var(--text-heading);margin-bottom:12px}
.pc-agents-list{display:flex;flex-wrap:wrap;gap:8px}
.pc-tag{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:var(--bg2);border:1px solid var(--border);border-radius:8px;font-size:.78rem;font-weight:600;color:var(--text);transition:border-color .3s}
.pc-tag:hover{border-color:var(--green)}
.pc-tag .dot{width:6px;height:6px;border-radius:50%}
.pc-pre .dot{background:#2563eb}
.pc-reg .dot{background:var(--green)}
.pc-post .dot{background:#ea580c}

/* ════════════════════════════
   HITL SECTION
   ════════════════════════════ */
.hitl-section{padding:120px 0;background:linear-gradient(180deg,#fff 0%,#f0fae8 60%,#fff 100%);position:relative;z-index:2}
.hitl-section::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 70% 40%,rgba(90,173,45,0.06) 0%,transparent 60%)}
.hitl-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:64px;position:relative}
.hitl-steps::before{content:'';position:absolute;top:60px;left:calc(16.66% + 40px);right:calc(16.66% + 40px);height:2px;background:linear-gradient(90deg,var(--green),var(--green-dark),var(--green));z-index:0}
.hitl-step{background:#fff;border:1px solid var(--border);border-radius:20px;padding:36px 28px;text-align:center;position:relative;z-index:1;margin:0 12px;transition:border-color .3s,box-shadow .3s,transform .3s}
.hitl-step:hover{border-color:var(--border-glow);box-shadow:0 12px 40px rgba(43,90,20,0.1);transform:translateY(-4px)}
.hitl-step-num{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;margin:0 auto 20px;position:relative}
.step-ai .hitl-step-num{background:rgba(59,130,246,0.1);box-shadow:0 0 0 8px rgba(59,130,246,0.05)}
.step-expert .hitl-step-num{background:rgba(90,173,45,0.12);box-shadow:0 0 0 8px rgba(90,173,45,0.05)}
.step-user .hitl-step-num{background:rgba(168,85,247,0.1);box-shadow:0 0 0 8px rgba(168,85,247,0.05)}
.hitl-step-label{font-size:.65rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:10px}
.step-ai .hitl-step-label{color:#2563eb}
.step-expert .hitl-step-label{color:var(--green-dark)}
.step-user .hitl-step-label{color:#7c3aed}
.hitl-step h3{font-size:1.15rem;font-weight:800;color:var(--text-heading);margin-bottom:10px}
.hitl-step p{font-size:.88rem;color:var(--text-dim);line-height:1.7}
.hitl-chips{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-top:14px}
.hitl-chip{padding:4px 12px;border-radius:20px;font-size:.72rem;font-weight:600}
.chip-ai{background:rgba(59,130,246,0.08);color:#1d4ed8;border:1px solid rgba(59,130,246,0.2)}
.chip-expert{background:rgba(90,173,45,0.08);color:var(--green-dark);border:1px solid rgba(90,173,45,0.2)}
.chip-user{background:rgba(168,85,247,0.08);color:#6d28d9;border:1px solid rgba(168,85,247,0.2)}
.hitl-guarantee{margin-top:64px;background:linear-gradient(135deg,rgba(43,90,20,0.04),rgba(90,173,45,0.06));border:1px solid rgba(90,173,45,0.15);border-radius:20px;padding:40px 48px;display:flex;align-items:center;gap:40px}
.hitl-guarantee-icon{font-size:3rem;flex-shrink:0}
.hitl-guarantee h3{font-size:1.3rem;font-weight:800;color:var(--text-heading);margin-bottom:8px}
.hitl-guarantee p{font-size:.92rem;color:var(--text-dim);line-height:1.7;max-width:700px}
.hitl-stat-row{display:flex;gap:40px;margin-top:16px}
.hitl-stat{text-align:left}
.hitl-stat .h-num{font-size:1.8rem;font-weight:900;color:var(--green-dark)}
.hitl-stat .h-lbl{font-size:.75rem;color:var(--text-dim);font-weight:500}

/* ════════════════════════════
   SECURITY SECTION
   ════════════════════════════ */
.security-section{padding:120px 0;background:#fff;position:relative;z-index:2}
.security-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:64px}
.security-card{background:var(--bg2);border:1px solid var(--border);border-radius:16px;padding:32px;transition:border-color .3s,box-shadow .3s,transform .3s}
.security-card:hover{border-color:var(--border-glow);box-shadow:0 8px 30px rgba(43,90,20,0.08);transform:translateY(-3px)}
.sec-icon{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.4rem;margin-bottom:18px}
.sec-icon-1{background:rgba(59,130,246,0.1)}
.sec-icon-2{background:rgba(90,173,45,0.1)}
.sec-icon-3{background:rgba(234,88,12,0.1)}
.sec-icon-4{background:rgba(168,85,247,0.1)}
.sec-icon-5{background:rgba(234,179,8,0.1)}
.sec-icon-6{background:rgba(20,184,166,0.1)}
.security-card h3{font-size:1rem;font-weight:800;color:var(--text-heading);margin-bottom:8px}
.security-card p{font-size:.85rem;color:var(--text-dim);line-height:1.7}
.sec-badge{display:inline-block;margin-top:12px;padding:4px 12px;background:rgba(43,90,20,0.06);border:1px solid rgba(43,90,20,0.12);border-radius:20px;font-size:.7rem;font-weight:700;color:var(--green-dark);letter-spacing:.04em}
.security-compliance{margin-top:48px;display:flex;align-items:center;justify-content:center;gap:32px;flex-wrap:wrap;padding:32px;background:var(--bg2);border:1px solid var(--border);border-radius:16px}
.compliance-item{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}
.compliance-item .c-icon{font-size:1.8rem}
.compliance-item .c-name{font-size:.72rem;font-weight:700;color:var(--text-heading)}
.compliance-item .c-desc{font-size:.68rem;color:var(--text-dim)}
.compliance-divider{width:1px;height:48px;background:var(--border)}

/* ════════════════════════════
   PLATFORM PREVIEW SECTION
   ════════════════════════════ */
.platform-section{padding:120px 0;background:linear-gradient(180deg,#f8faf6 0%,#fff 100%);position:relative;z-index:2}
.browser-mockup{background:#e8e8e8;border-radius:16px;overflow:hidden;box-shadow:0 24px 80px rgba(43,90,20,0.14),0 8px 24px rgba(0,0,0,0.06);max-width:1040px;margin:0 auto;border:1px solid rgba(0,0,0,0.06)}
.browser-bar{background:#ddd;padding:10px 16px;display:flex;align-items:center;gap:8px}
.browser-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}
.browser-dot-r{background:#ff5f57}.browser-dot-y{background:#febc2e}.browser-dot-g{background:#28c840}
.browser-url{flex:1;background:#fff;border-radius:6px;padding:5px 14px;font-size:.72rem;color:#888;margin:0 10px;font-family:monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dashboard-shell{display:grid;grid-template-columns:196px 1fr;height:500px;background:#fff;overflow:hidden}
.dash-sidebar{background:#1a2e1a;padding:0;display:flex;flex-direction:column;overflow:hidden}
.dash-logo{padding:16px 16px 12px;color:#7BC950;font-weight:800;font-size:.88rem;display:flex;align-items:center;gap:8px;border-bottom:1px solid rgba(255,255,255,0.06)}
.dash-section-label{padding:10px 16px 4px;font-size:.58rem;font-weight:700;color:rgba(255,255,255,0.28);letter-spacing:.1em;text-transform:uppercase}
.dash-nav-item{padding:7px 16px;font-size:.72rem;font-weight:500;color:rgba(255,255,255,0.5);display:flex;align-items:center;gap:8px;cursor:pointer;transition:background .2s,color .2s;border-left:2px solid transparent}
.dash-nav-item.active{background:rgba(90,173,45,0.15);color:#7BC950;border-left-color:#5AAD2D}
.dash-nav-item:hover{background:rgba(255,255,255,0.04);color:rgba(255,255,255,0.75)}
.dash-sidebar-footer{margin-top:auto;border-top:1px solid rgba(255,255,255,0.06);padding-top:6px}
.dash-main{padding:16px 18px;display:flex;flex-direction:column;gap:14px;background:#f5f7f4;overflow:hidden}
.dash-topbar{display:flex;align-items:center;gap:12px;flex-shrink:0}
.dash-search{flex:1;background:#fff;border:1px solid var(--border);border-radius:8px;padding:7px 14px;font-size:.72rem;color:#aaa;display:flex;align-items:center;gap:6px}
.dash-user{display:flex;align-items:center;gap:8px;flex-shrink:0}
.dash-avatar{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--green-dark),var(--green));display:flex;align-items:center;justify-content:center;color:#fff;font-size:.62rem;font-weight:700}
.dash-kpi-row{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;flex-shrink:0}
.kpi-card{background:#fff;border:1px solid var(--border);border-radius:10px;padding:11px 14px}
.kpi-label{font-size:.58rem;font-weight:700;color:var(--text-dim);letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px}
.kpi-val{font-size:1.45rem;font-weight:900;color:var(--text-heading);line-height:1}
.kpi-sub{font-size:.58rem;color:var(--text-dim);margin-top:3px}
.kpi-card.kpi-green .kpi-val{color:var(--green-dark)}
.kpi-card.kpi-green .kpi-sub{color:var(--green)}
.dash-table-wrap{flex:1;background:#fff;border:1px solid var(--border);border-radius:10px;overflow:hidden;display:flex;flex-direction:column;min-height:0}
.dash-table-header{padding:9px 14px;border-bottom:1px solid var(--border);font-size:.75rem;font-weight:700;color:var(--text-heading);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}
.dash-filter-row{display:flex;gap:6px;align-items:center}
.dash-select{font-size:.62rem;border:1px solid var(--border);border-radius:6px;padding:3px 8px;background:#fff;color:var(--text-dim)}
.dash-new-btn{background:linear-gradient(135deg,var(--green-dark),var(--green));color:#fff;border:none;padding:5px 12px;border-radius:6px;font-size:.65rem;font-weight:700;cursor:pointer;white-space:nowrap}
.reg-table{width:100%;font-size:.68rem;border-collapse:collapse;flex:1}
.reg-table th{background:#f8faf6;padding:6px 10px;text-align:left;font-weight:700;color:var(--text-dim);border-bottom:1px solid var(--border);font-size:.62rem;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}
.reg-table td{padding:7px 10px;border-bottom:1px solid rgba(43,90,20,0.04);vertical-align:middle}
.reg-table tr:last-child td{border-bottom:none}
.reg-table tr:hover td{background:rgba(90,173,45,0.02)}
.country-flag{display:flex;align-items:center;gap:5px;font-size:.68rem;color:var(--text-dim)}
.status-badge{padding:2px 8px;border-radius:10px;font-size:.62rem;font-weight:700;white-space:nowrap}
.status-en-curso{background:rgba(59,130,246,0.1);color:#1d4ed8}
.status-aprobado{background:rgba(90,173,45,0.12);color:var(--green-dark)}
.status-observado{background:rgba(234,88,12,0.1);color:#c2410c}
.progress-mini{height:4px;border-radius:2px;background:#eee;overflow:hidden;width:56px;flex-shrink:0}
.progress-mini-fill{height:100%;border-radius:2px;background:linear-gradient(90deg,var(--green-dark),var(--green))}
.status-critico{background:rgba(220,38,38,0.1);color:#b91c1c}
.dash-panel{display:none;flex-direction:column;gap:14px;flex:1;min-height:0}
.dash-panel.active{display:flex;animation:dashPanelFade .35s ease}
@keyframes dashPanelFade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.tox-down{color:var(--green-dark);font-weight:700}
.platform-features{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:28px}
.pf-item{display:flex;align-items:flex-start;gap:10px;padding:16px;background:rgba(90,173,45,0.04);border:1px solid rgba(90,173,45,0.1);border-radius:10px}
.pf-icon{font-size:1.1rem;flex-shrink:0;margin-top:1px}
.pf-text{font-size:.8rem;color:var(--text-dim);line-height:1.5}
.pf-text strong{color:var(--text-heading);display:block;margin-bottom:2px}

/* ════════════════════════════
   COVERAGE SECTION
   ════════════════════════════ */
.cobertura-section{padding:120px 0;background:linear-gradient(135deg,#0d1f09 0%,#1a3a0f 50%,#0d1f09 100%);position:relative;z-index:2;overflow:hidden}
.cobertura-section::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 65% 45%,rgba(90,173,45,0.07) 0%,transparent 60%)}
.cobertura-inner{position:relative}
.cobertura-section .section-tag{background:rgba(90,173,45,0.15);border-color:rgba(90,173,45,0.3);color:#7BC950}
.cobertura-section .section-title{color:#fff;margin-bottom:16px}
.cobertura-highlight{color:#7BC950}
.cobertura-section .section-sub{color:rgba(255,255,255,0.65)}
.cobertura-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:720px;margin:0 auto 56px}
.cob-stat{text-align:center;padding:24px 14px;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.08);border-radius:14px}
.cob-num{font-size:2.4rem;font-weight:900;color:#7BC950}
.cob-lbl{font-size:.78rem;color:rgba(255,255,255,0.55);margin-top:6px}
.countries-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;max-width:880px;margin:0 auto}
.country-row{display:flex;align-items:center;gap:14px;padding:16px 18px;background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.07);border-radius:12px;transition:background .3s,border-color .3s,transform .3s}
.country-row:hover{background:rgba(90,173,45,0.08);border-color:rgba(90,173,45,0.25);transform:translateY(-2px)}
.country-flag-lg{font-size:1.5rem;flex-shrink:0;width:34px;text-align:center}
.country-info{flex:1;min-width:0}
.country-name{font-size:.95rem;font-weight:700;color:#fff}
.country-auth{font-size:.74rem;color:rgba(255,255,255,0.5);margin-top:2px}
.country-status{padding:4px 12px;border-radius:10px;font-size:.65rem;font-weight:700;white-space:nowrap;flex-shrink:0}
.cstatus-active{background:rgba(90,173,45,0.2);color:#7BC950;border:1px solid rgba(90,173,45,0.3)}
.cstatus-soon{background:rgba(234,179,8,0.12);color:#eab308;border:1px solid rgba(234,179,8,0.25)}

/* ════════════════════════════
   COMPARISON BY AGENT
   ════════════════════════════ */
.compare-section{padding:120px 0;position:relative;z-index:2;background:var(--bg2)}
.compare-table{width:100%;border-collapse:separate;border-spacing:0;border-radius:16px;overflow:hidden;box-shadow:0 4px 24px rgba(43,90,20,0.06);background:#fff}
.compare-table thead th{padding:24px 24px;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border-bottom:2px solid var(--border)}
.compare-table thead th:first-child{text-align:left;color:var(--text-dim);background:#fff;width:32%}
.compare-table thead .th-trad{background:#f9fafb;color:#6b7280;width:32%}
.compare-table thead .th-ia{background:linear-gradient(135deg,var(--green-dark),var(--green));color:#fff;width:36%}
.compare-table tbody td{padding:18px 24px;font-size:.88rem;border-bottom:1px solid rgba(43,90,20,0.06);vertical-align:middle}
.compare-table tbody tr:last-child td{border-bottom:none}
.compare-table tbody tr:hover{background:rgba(90,173,45,0.02)}
.compare-table tbody td:first-child{font-weight:700;color:var(--text-heading)}
.compare-table tbody .td-trad{color:#6b7280;background:rgba(249,250,251,0.5)}
.compare-table tbody .td-ia{color:var(--green-dark);font-weight:600;background:rgba(90,173,45,0.03)}
.td-ia-content{display:flex;align-items:center;justify-content:space-between;gap:12px}
.td-ia-text{flex:1}
.diff-badge{display:inline-flex;align-items:center;gap:4px;padding:5px 12px;border-radius:20px;font-size:.72rem;font-weight:800;letter-spacing:.02em;white-space:nowrap;flex-shrink:0}
.diff-green{background:rgba(90,173,45,0.12);color:var(--green-dark)}
.phase-separator td{background:rgba(43,90,20,0.04)!important;padding:10px 24px!important;font-size:.7rem!important;font-weight:700!important;letter-spacing:.08em!important;text-transform:uppercase!important;color:var(--text-dim)!important}
.phase-separator .ps-pre{color:#2563eb!important}
.phase-separator .ps-reg{color:var(--green-dark)!important}
.phase-separator .ps-post{color:#c2410c!important}
.compare-table tbody .summary-row td{background:rgba(43,90,20,0.06);font-weight:800;border-top:2px solid var(--border)}
.compare-table tbody .summary-row .td-ia{color:var(--green-dark);font-size:.92rem}
.compare-mobile{display:none}
.cm-card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:20px;margin-bottom:12px}
.cm-service{font-weight:800;color:var(--text-heading);font-size:.95rem;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid var(--border)}
.cm-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;font-size:.82rem}
.cm-label{color:var(--text-dim);font-weight:500}
.cm-val{font-weight:600}
.cm-val.trad{color:#6b7280}
.cm-val.ia{color:var(--green-dark);display:flex;align-items:center;gap:8px}

/* ── CTA / Demo form ── */
.cta-section{padding:120px 0;position:relative;z-index:2;background:#fff}
.cta-box{background:linear-gradient(135deg,var(--green-dark),#1a4a0e);border:none;border-radius:24px;padding:80px 60px;text-align:center;position:relative;overflow:hidden}
.cta-box::before{content:'';position:absolute;top:-200px;right:-200px;width:500px;height:500px;background:radial-gradient(circle,rgba(90,173,45,0.2),transparent 70%);border-radius:50%}
.cta-box h2{font-size:2.5rem;font-weight:900;color:#fff;margin-bottom:16px}
.cta-box p{color:rgba(255,255,255,0.8);font-size:1.1rem;max-width:600px;margin:0 auto 40px;line-height:1.7}
.contact-form{max-width:480px;margin:0 auto;background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.15);border-radius:16px;padding:36px;backdrop-filter:blur(10px)}
.cta-alt{max-width:480px;margin:18px auto 0;display:flex;flex-direction:column;align-items:center;gap:14px;position:relative;z-index:1}
.cta-or{display:flex;align-items:center;gap:12px;width:100%;color:rgba(255,255,255,0.45);font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.cta-or::before,.cta-or::after{content:'';flex:1;height:1px;background:rgba(255,255,255,0.15)}
.cta-calendar{display:inline-flex;align-items:center;justify-content:center;gap:9px;width:100%;background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.28);color:#fff;padding:15px 26px;border-radius:12px;font-weight:700;font-size:.95rem;transition:background .3s,border-color .3s,transform .3s}
.cta-calendar:hover{background:rgba(255,255,255,0.16);border-color:rgba(123,201,80,0.6);transform:translateY(-2px)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.form-group{margin-bottom:14px}
.form-group label{display:block;font-size:.75rem;font-weight:600;color:rgba(255,255,255,0.8);margin-bottom:6px}
.form-group input,.form-group select{width:100%;padding:12px 16px;border-radius:8px;border:1px solid rgba(255,255,255,0.2);background:rgba(255,255,255,0.1);color:#fff;font-size:.9rem;font-family:inherit;transition:border-color .3s,box-shadow .3s}
.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--green);box-shadow:0 0 15px rgba(90,173,45,0.2)}
.form-group input::placeholder{color:rgba(255,255,255,0.4)}
.form-group select{appearance:none;cursor:pointer}
.form-group select option{background:var(--green-dark);color:#fff}
.form-submit{width:100%;padding:14px;border-radius:10px;background:linear-gradient(135deg,var(--green),#7BC950);color:#fff;font-weight:700;font-size:1rem;border:none;cursor:pointer;transition:box-shadow .3s,transform .3s}
.form-submit:hover{box-shadow:0 8px 30px rgba(90,173,45,0.4);transform:translateY(-2px)}
.form-note{text-align:center;font-size:.75rem;color:rgba(255,255,255,0.5);margin-top:10px}
.form-success{display:none;text-align:center;padding:16px;background:rgba(90,173,45,0.2);border-radius:10px;margin-top:14px;color:#7BC950;font-weight:600;font-size:.9rem}

/* ── Footer ── */
.footer{border-top:1px solid var(--border);padding:40px 0;position:relative;z-index:2;background:#fff}
.footer-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}
.footer-logo{font-size:1.1rem;font-weight:800;background:linear-gradient(135deg,var(--green-dark),var(--green));-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.footer-links{display:flex;gap:24px}
.footer-links a{font-size:.85rem;color:var(--text-dim);transition:color .3s}
.footer-links a:hover{color:var(--green)}
.footer-copy{width:100%;text-align:center;margin-top:24px;padding-top:24px;border-top:1px solid var(--border);font-size:.78rem;color:var(--text-dim)}
.reveal{opacity:0;transform:translateY(40px)}
.video-section{padding:100px 0;background:#f5f7f4}
.video-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:44px}
.video-card{background:#fff;border:1px solid var(--border);border-radius:14px;overflow:hidden;box-shadow:0 4px 20px rgba(43,90,20,0.05);transition:transform .3s,box-shadow .3s}
.video-card:hover{transform:translateY(-4px);box-shadow:0 14px 40px rgba(43,90,20,0.13)}
.video-thumb{position:relative;aspect-ratio:16/9;background:#0a0a0a;cursor:pointer;overflow:hidden}
.video-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s,opacity .3s}
.video-card:hover .video-thumb img{transform:scale(1.06)}
.video-thumb iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
.video-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:58px;height:58px;border-radius:50%;border:none;background:rgba(90,173,45,0.94);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .3s,transform .3s;box-shadow:0 6px 20px rgba(0,0,0,0.35)}
.video-thumb:hover .video-play{background:var(--green);transform:translate(-50%,-50%) scale(1.08)}
.video-play svg{width:24px;height:24px;margin-left:3px}
.video-meta{padding:14px 16px 16px}
.video-card-title{font-weight:700;font-size:.92rem;color:var(--text-heading);line-height:1.25}
.video-card-sub{font-size:.78rem;color:var(--text-dim);margin-top:4px;line-height:1.35}
@media(max-width:1024px){.video-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.video-grid{grid-template-columns:1fr}}
/* ── Managed service (done-for-you) ── */
.managed-section{padding:120px 0;position:relative;z-index:2;overflow:hidden;background:linear-gradient(160deg,#0f2e10 0%,var(--green-dark) 55%,#0c2a0e 100%)}
.managed-section::before{content:'';position:absolute;top:-20%;right:-8%;width:620px;height:620px;background:radial-gradient(circle,rgba(90,173,45,0.22),transparent 65%);pointer-events:none}
.managed-section::after{content:'';position:absolute;bottom:-28%;left:-10%;width:520px;height:520px;background:radial-gradient(circle,rgba(90,173,45,0.13),transparent 65%);pointer-events:none}
.managed-inner{position:relative;z-index:2}
.managed-section .section-tag{background:rgba(90,173,45,0.16);border-color:rgba(123,201,80,0.35);color:#a9e07f}
.managed-section .section-title{color:#fff}
.managed-section .section-title .accent{background:linear-gradient(120deg,#7BC950,#a9e07f);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.managed-section .section-sub{color:rgba(255,255,255,0.74)}
.managed-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:0 auto 40px;max-width:1040px}
.mstep{position:relative;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.12);border-radius:16px;padding:26px 22px;backdrop-filter:blur(8px);transition:transform .3s,border-color .3s,background .3s}
.mstep:hover{transform:translateY(-5px);border-color:rgba(123,201,80,0.5);background:rgba(255,255,255,0.08)}
.mstep-num{position:absolute;top:14px;right:18px;font-size:2.6rem;font-weight:900;color:rgba(255,255,255,0.07);line-height:1}
.mstep-h{font-size:1.05rem;font-weight:800;margin-bottom:8px}
.mstep-icon{font-size:1.75rem;margin-bottom:14px}
.mstep h4{color:#fff;font-size:1.02rem;font-weight:800;margin-bottom:8px}
.mstep p{color:rgba(255,255,255,0.66);font-size:.85rem;line-height:1.55}
.managed-cta{display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;max-width:1040px;margin:0 auto;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.14);border-radius:18px;padding:30px 36px;backdrop-filter:blur(8px)}
.managed-cta-text{flex:1;min-width:280px}
.managed-cta-text h3{color:#fff;font-size:1.32rem;font-weight:800;margin-bottom:6px;line-height:1.3}
.managed-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.managed-chip{display:inline-flex;align-items:center;gap:6px;background:rgba(90,173,45,0.14);border:1px solid rgba(123,201,80,0.3);color:#c5ecab;padding:5px 13px;border-radius:50px;font-size:.72rem;font-weight:600}
.managed-btn{background:linear-gradient(135deg,#7BC950,var(--green));color:#0f2e10!important;padding:15px 30px;border-radius:12px;font-weight:800;font-size:.98rem;white-space:nowrap;box-shadow:0 8px 30px rgba(123,201,80,0.35);transition:transform .3s,box-shadow .3s}
.managed-btn:hover{transform:translateY(-2px);box-shadow:0 12px 44px rgba(123,201,80,0.5)}
@media(max-width:900px){.managed-steps{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.managed-steps{grid-template-columns:1fr}.managed-cta{flex-direction:column;align-items:flex-start;padding:26px 24px}}
/* ── Mockup interactivity hint ── */
.mockup-hint{display:flex;align-items:center;gap:9px;width:max-content;max-width:92%;margin:0 auto 22px;padding:9px 18px;background:rgba(90,173,45,0.1);border:1px solid rgba(90,173,45,0.32);color:var(--green-dark);border-radius:50px;font-size:.8rem;font-weight:700;box-shadow:0 4px 18px rgba(90,173,45,0.12);transition:opacity .4s}
.mockup-hint .mh-dot{width:9px;height:9px;border-radius:50%;background:var(--green);flex-shrink:0;animation:mhPulse 1.8s infinite}
@keyframes mhPulse{0%{box-shadow:0 0 0 0 rgba(90,173,45,0.55)}70%{box-shadow:0 0 0 10px rgba(90,173,45,0)}100%{box-shadow:0 0 0 0 rgba(90,173,45,0)}}
.mockup-hint.done{opacity:.45}
/* ── Orbital constellation (real spinning orbit) ── */
.diagram-wrap{--ns:88px}
.orbit{position:absolute;top:50%;left:50%;width:0;height:0;z-index:6}
.orbit-inner{animation:orbitCW 54s linear infinite}
.orbit-outer{animation:orbitCCW 82s linear infinite}
.orbit-slot{position:absolute;top:0;left:0;transform:rotate(var(--a)) translateY(calc(-1 * var(--r)))}
.orbit-inner .orbit-slot{--r:150px}
.orbit-outer .orbit-slot{--r:262px}
.spoke{position:absolute;left:-1px;top:0;width:2px;height:var(--r);background:linear-gradient(to bottom,rgba(90,173,45,0) 0%,rgba(90,173,45,0.38) 100%);border-radius:2px;overflow:visible}
.spoke .pulse{position:absolute;left:-2.5px;width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 9px 1px rgba(90,173,45,0.85);animation:spokeFlow 2.8s ease-in-out infinite}
@keyframes spokeFlow{0%{top:var(--r);opacity:0}18%{opacity:1}82%{opacity:1}100%{top:0;opacity:0}}
.node-lvl{position:absolute;top:0;left:0;width:0;height:0;transform:rotate(calc(-1 * var(--a)))}
.orbit .agent-node{position:absolute;width:var(--ns);height:var(--ns);left:calc(var(--ns) / -2);top:calc(var(--ns) / -2);box-shadow:0 6px 22px rgba(43,90,20,0.1)}
.orbit-inner .agent-node{animation:orbitCCW 54s linear infinite}
.orbit-outer .agent-node{animation:orbitCW 82s linear infinite}
.agent-node .node-icon{transition:transform .3s}
.agent-node:hover .node-icon{transform:scale(1.22)}
@keyframes orbitCW{to{transform:rotate(360deg)}}
@keyframes orbitCCW{to{transform:rotate(-360deg)}}
.diagram-wrap:hover .orbit,.diagram-wrap:hover .orbit .agent-node,.diagram-wrap:hover .spoke .pulse{animation-play-state:paused}
.orq-center{z-index:12}
.orq-center::before{content:'';position:absolute;inset:-9px;border-radius:50%;background:conic-gradient(from 0deg,rgba(123,201,80,0.85),rgba(43,90,20,0.05),rgba(123,201,80,0.85),rgba(43,90,20,0.05),rgba(123,201,80,0.85));filter:blur(3px);opacity:.5;z-index:-1;animation:orbitCW 9s linear infinite}
.orq-center::after{content:'';position:absolute;inset:0;border-radius:50%;animation:orqPulse 3.2s ease-out infinite;pointer-events:none}
@keyframes orqPulse{0%{box-shadow:0 0 0 0 rgba(90,173,45,0.4)}70%{box-shadow:0 0 0 28px rgba(90,173,45,0)}100%{box-shadow:0 0 0 0 rgba(90,173,45,0)}}
@media(max-width:768px){
  .diagram-wrap{--ns:58px}
  .orbit-inner .orbit-slot{--r:90px}
  .orbit-outer .orbit-slot{--r:145px}
  .orbit .agent-node{font-size:.5rem}
  .orbit .agent-node .node-icon{font-size:1rem}
}

/* ── Responsive ── */
@media(max-width:1024px){
  .hero h1{font-size:2.8rem}
  .diagram-wrap{width:500px;height:500px}
  .agent-node{width:70px;height:70px;font-size:.55rem}
  .orq-center{width:100px;height:100px;font-size:.75rem}
  .orq-ring.r1{width:260px;height:260px}.orq-ring.r2{width:380px;height:380px}.orq-ring.r3{width:480px;height:480px}
  .phases-grid{grid-template-columns:1fr}
  .stats-grid{grid-template-columns:repeat(2,1fr)}
  .hitl-steps{grid-template-columns:1fr}
  .hitl-steps::before{display:none}
  .hitl-step{margin:0 0 16px}
  .security-grid{grid-template-columns:repeat(2,1fr)}
  .hitl-guarantee{flex-direction:column;text-align:center}
  .hitl-stat-row{justify-content:center}
  .dashboard-shell{grid-template-columns:160px 1fr;height:460px}
  .platform-features{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:768px){
  .nav-links{display:none}.nav-mobile{display:block}
  .nav-links.open{display:flex;flex-direction:column;align-items:stretch;gap:0;position:fixed;top:70px;left:0;right:0;background:rgba(255,255,255,0.98);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);box-shadow:0 12px 30px rgba(0,0,0,0.08);padding:8px 24px 18px}
  .nav-links.open a{padding:14px 4px;font-size:1rem;border-bottom:1px solid var(--border)}
  .nav-links.open a:last-child{border-bottom:none}
  .nav-links.open .nav-cta{margin-top:14px;text-align:center;border-bottom:none}
  .nav-links.open ~ .nav-mobile span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .nav-links.open ~ .nav-mobile span:nth-child(2){opacity:0}
  .nav-links.open ~ .nav-mobile span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .hero h1{font-size:2rem}.hero .lead{font-size:1rem}
  .section{padding:80px 0}.section-title{font-size:2rem}
  .diagram-wrap{width:340px;height:340px}
  .agent-node{width:55px;height:55px;font-size:.5rem}
  .orq-center{width:80px;height:80px;font-size:.65rem}
  .orq-ring.r1{width:180px;height:180px}.orq-ring.r2{width:260px;height:260px}.orq-ring.r3{width:330px;height:330px}
  .form-row{grid-template-columns:1fr}
  .stats-grid{grid-template-columns:repeat(2,1fr);gap:20px}
  .cta-box{padding:48px 24px}.cta-box h2{font-size:1.8rem}
  .footer-inner{flex-direction:column;text-align:center}
  .security-grid{grid-template-columns:1fr}
  .compliance-divider{display:none}
  .hitl-guarantee{padding:28px 20px}
  .hitl-stat-row{flex-direction:column;gap:16px}
  .dashboard-shell{grid-template-columns:1fr;height:auto}
  .dash-sidebar{display:none}
  .dash-main{padding:12px}
  .dash-kpi-row{grid-template-columns:repeat(2,1fr)}
  .platform-features{grid-template-columns:1fr}
  .cobertura-stats{gap:10px}
  .cob-num{font-size:1.7rem}
  .countries-grid{grid-template-columns:1fr}
  .compare-table{display:none}
  .compare-mobile{display:block}
  .compare-section{padding:80px 0}
}
