/* Home only. The tool surfaces, category icons and consent styles stay unchanged. */
body.vc-workspace.vc-hub-home { background:#060e1c; }
.vc-hub-home.vc-workspace main { padding:28px 30px 48px; background:radial-gradient(ellipse at 50% 42%,#101d482e,transparent 66%),linear-gradient(125deg,#081323,#050c19 65%); }
.vc-hub-home.vc-workspace main>section { max-width:1320px; }
.vc-hub-home .hub-intro { text-align:center; position:relative; z-index:1; }
.vc-hub-home.vc-workspace h1 { margin:2px auto 12px; max-width:1200px; color:#dce9ff; font-family:Bahnschrift,"Trebuchet MS",ui-sans-serif,sans-serif; font-size:clamp(30px,3.25vw,55px); font-weight:750; line-height:1.15; letter-spacing:-.035em; text-wrap:balance; text-shadow:0 2px 12px #749df224; }
.vc-hub-home h1 span { background:linear-gradient(100deg,#21b9f8 0%,#54baff 30%,#a77bff 70%,#db76e8 100%); background-clip:text; -webkit-background-clip:text; color:transparent; }
.vc-hub-home .hub-lead { margin:0; color:#b5cef0; font-size:clamp(16px,1.45vw,23px); font-weight:550; line-height:1.5; }
.vc-hub-home .hub-subtitle { margin:2px 0 0; color:#94afcf; font-size:clamp(14px,1.2vw,19px); }
.vc-hub-home .hub-scene { position:relative; isolation:isolate; display:grid; grid-template-columns:minmax(0,1fr) minmax(235px,.91fr) minmax(0,1fr); grid-template-rows:repeat(3,minmax(0,1fr)); align-items:center; gap:24px 14px; height:540px; padding:28px 16px 30px; margin-top:12px; }
.vc-hub-home .hub-scene::before { content:""; position:absolute; inset:12% 6% 0; z-index:-2; background:radial-gradient(ellipse at 17% 70%,#09456f2b,transparent 48%),radial-gradient(ellipse at 84% 38%,#47178226,transparent 42%); filter:blur(20px); pointer-events:none; }
.vc-hub-home .hub-connections { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; z-index:-1; overflow:visible; }
.vc-hub-home .hub-wire { stroke:var(--wire); stroke-opacity:.85; stroke-width:1.5; }
.vc-hub-home .hub-wire-halo { stroke:var(--wire); stroke-opacity:.5; stroke-width:4; filter:url(#hub-wire-glow); }
.vc-hub-home .hub-particle { fill:var(--wire); filter:drop-shadow(0 0 5px var(--wire)); animation:hub-travel 14s linear infinite; }
.vc-hub-home .hub-core-shell { grid-column:2; grid-row:1/4; display:grid; place-items:center; position:relative; z-index:2; min-width:0; }
.vc-hub-home .hub-core { width:100%; max-width:355px; aspect-ratio:1; border-radius:50%; display:flex; flex-direction:column; align-items:center; justify-content:center; position:relative; isolation:isolate; overflow:clip; border:2px solid #6bd7ff; background:radial-gradient(ellipse at 27% 12%,#2c67c9aa,transparent 38%),radial-gradient(ellipse at 76% 86%,#593bcf60,transparent 60%),linear-gradient(135deg,#0c1c45,#0a102b 55%,#10123a); box-shadow:inset 1px 3px 9px #e2faffae,inset 0 0 23px #337dffe0,0 0 7px #3ee5ff,0 0 23px #318dff90,0 0 54px #5a3aff70,0 24px 55px #020412a0; }
.vc-hub-home .hub-core::before { content:""; position:absolute; inset:0; border-radius:50%; z-index:-1; background:conic-gradient(from 10deg,transparent 10%,#a99dff,transparent 38%,#2954d5 55%,#47eaff 78%,transparent 93%); mask:radial-gradient(farthest-side,transparent calc(100% - 6px),#000 calc(100% - 5px)); filter:blur(2px); opacity:.85; animation:hub-rim 24s linear infinite; }
.vc-hub-home .hub-core::after { content:""; position:absolute; inset:2px; border-radius:50%; border:2px solid transparent; border-top-color:#8df2ff; border-right-color:#c192ff; opacity:.8; animation:hub-rim 24s linear infinite; pointer-events:none; }
.vc-hub-home .hub-core ul { list-style:none; display:grid; justify-items:center; gap:clamp(12px,1.2vw,20px); margin:0; padding:0; }
.vc-hub-home .hub-core li { display:flex; align-items:center; justify-content:center; gap:8px; width:max-content; max-width:100%; padding:8px 18px; border:1px solid #5063b0; border-radius:99px; background:linear-gradient(#12244b,#0b142e); color:#dceaff; box-shadow:inset 0 1px 4px #73a8ff20,0 3px 8px #01051960; font-size:14px; line-height:1.4; }
.vc-hub-home .hub-core li svg { width:21px; height:21px; color:#4dd8ff; }
.vc-hub-home .hub-core li:last-child svg { color:#ffb443; }
.vc-hub-home .hub-down { position:absolute; bottom:-45px; color:#77daff; text-shadow:0 0 14px #329dff; font-size:46px; line-height:1; }
.vc-hub-home .hub-card { --hub-color:var(--category-imagenes); --hub-tilt:0deg; --hub-roll:0deg; position:relative; min-width:0; width:100%; min-height:126px; display:grid; grid-template-columns:85px minmax(0,1fr) 14px; align-items:center; gap:9px; padding:15px 14px 15px 7px; color:#edf4ff; text-align:left; font-family:inherit; border:1px solid color-mix(in srgb,var(--hub-color) 75%,#253466); border-radius:23px; background:radial-gradient(ellipse at 4% 20%,color-mix(in srgb,var(--hub-color) 19%,transparent),transparent 74%),linear-gradient(140deg,#0c1e36e8,#101731f0); box-shadow:inset 0 1px 1px #c2dcff25,inset 0 -2px 12px color-mix(in srgb,var(--hub-color) 22%,transparent),0 6px 0 #02081880,0 15px 32px #010610a0,0 0 18px color-mix(in srgb,var(--hub-color) 18%,transparent); cursor:pointer; transform:perspective(900px) rotateY(var(--hub-tilt)) rotate(var(--hub-roll)); transition:transform 180ms ease,box-shadow 220ms ease,border-color 220ms ease,background-color 220ms ease; animation:hub-float 8s ease-in-out infinite; -webkit-tap-highlight-color:transparent; }
.vc-hub-home .hub-card::after { content:""; position:absolute; left:18%; right:8%; bottom:-1px; height:2px; border-radius:99px; background:linear-gradient(90deg,transparent,var(--hub-color),transparent); box-shadow:0 0 12px var(--hub-color); pointer-events:none; }
.vc-hub-home .hub-card-imagenes { grid-column:1; grid-row:1; --hub-tilt:5deg; --hub-roll:2deg; width:91%; justify-self:end; }
.vc-hub-home .hub-card-pdf { grid-column:3; grid-row:1; --hub-color:var(--category-pdf); --hub-tilt:-5deg; --hub-roll:1deg; width:91%; justify-self:start; animation-delay:-3s; }
.vc-hub-home .hub-card-texto { grid-column:1; grid-row:2; --hub-color:var(--category-texto); --hub-tilt:6deg; --hub-roll:-2deg; animation-delay:-4s; }
.vc-hub-home .hub-card-media { grid-column:3; grid-row:2; --hub-color:var(--category-media); --hub-tilt:-6deg; --hub-roll:2deg; animation-delay:-1s; }
.vc-hub-home .hub-card-negocio { grid-column:1; grid-row:3; --hub-color:var(--category-negocio); --hub-tilt:4deg; --hub-roll:1deg; width:91%; justify-self:end; animation-delay:-2s; }
.vc-hub-home .hub-card-trabajo { grid-column:3; grid-row:3; --hub-color:var(--category-trabajo); --hub-tilt:-4deg; --hub-roll:2deg; width:91%; justify-self:start; animation-delay:-5s; }
.vc-hub-home .hub-art { display:block; position:absolute; left:-24px; top:50%; width:126px; height:146px; margin:0; pointer-events:none; filter:drop-shadow(0 8px 12px color-mix(in srgb,var(--hub-color) 45%,transparent)); transform:translateY(-50%) rotate(-4deg); }
.vc-hub-home .hub-art-svg { display:block; width:100%; height:100%; overflow:visible; }
.vc-hub-home .hub-card-copy { grid-column:2; display:grid; gap:9px; min-width:0; }
.vc-hub-home .hub-card-copy strong { display:flex; align-items:center; gap:8px; color:#f1f6ff; font-size:16px; font-weight:750; line-height:1.25; letter-spacing:-.025em; }
.vc-hub-home .hub-card-copy strong svg { width:23px; height:23px; flex:none; stroke:var(--hub-color); filter:drop-shadow(0 0 5px color-mix(in srgb,var(--hub-color) 35%,transparent)); }
.vc-hub-home .hub-card-copy>span { color:#b3c9e9; font-size:12px; line-height:1.6; padding-left:31px; }
.vc-hub-home .hub-chevron { grid-column:3; color:#9cdaff; width:17px; height:22px; }
@media(hover:hover) { .vc-hub-home .hub-card:hover { transform:perspective(900px) rotateY(0deg) translateY(-5px) scale(1.015); border-color:var(--hub-color); box-shadow:inset 0 1px 2px #e1f5ff45,inset 0 -3px 18px color-mix(in srgb,var(--hub-color) 26%,transparent),0 10px 0 #02081880,0 24px 38px #010610a0,0 0 35px color-mix(in srgb,var(--hub-color) 38%,transparent); } }
.vc-hub-home.vc-workspace .hub-card:focus-visible { outline:3px solid #e0e7ff; outline-offset:6px; border-color:var(--hub-color); box-shadow:0 0 30px color-mix(in srgb,var(--hub-color) 48%,transparent); }
.vc-hub-home .hub-card:active { transform:translateY(3px) scale(.985); box-shadow:inset 0 3px 10px #0008,0 1px 0 #010614,0 0 24px color-mix(in srgb,var(--hub-color) 40%,transparent); transition-duration:70ms; }
@keyframes hub-float { 0%,100% { translate:0 3px; } 50% { translate:0 -5px; } }
@keyframes hub-rim { to { transform:rotate(360deg); } }
@keyframes hub-travel { from { offset-distance:0%; opacity:.1; } 20%,80% { opacity:1; } to { offset-distance:100%; opacity:.1; } }
@media(min-width:1550px) { .vc-hub-home .hub-scene { gap:30px; height:570px; } .vc-hub-home .hub-card { min-height:136px; grid-template-columns:108px minmax(0,1fr) 18px; } .vc-hub-home .hub-art { width:170px; height:178px; left:-46px; } .vc-hub-home .hub-card-copy strong { font-size:18px; } .vc-hub-home .hub-card-copy>span { font-size:14px; } .vc-hub-home .hub-core li { font-size:14px; } }
@media(max-width:1200px) and (min-width:1101px) { .vc-hub-home.vc-workspace main { padding-inline:18px; } .vc-hub-home .hub-scene { grid-template-columns:minmax(0,1fr) 220px minmax(0,1fr); gap:16px 10px; } .vc-hub-home .hub-card { grid-template-columns:64px minmax(0,1fr) 10px; padding-right:10px; gap:5px; } .vc-hub-home .hub-art { width:102px; left:-24px; } .vc-hub-home .hub-card-copy strong { font-size:14px; gap:5px; } .vc-hub-home .hub-card-copy>span { padding-left:0; } .vc-hub-home .hub-card-copy strong svg { width:18px; } .vc-hub-home .hub-core li { font-size:12px; padding:6px 12px; } .vc-hub-home .hub-core ul { gap:12px; } }
@media(max-width:1100px) {
 .vc-hub-home .hub-scene { grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:auto; gap:26px 22px; height:auto; padding:26px 8px; }
 .vc-hub-home .hub-core-shell { grid-column:1/-1; grid-row:1; margin-bottom:20px; }
 .vc-hub-home .hub-core { width:280px; }
 .vc-hub-home .hub-down { display:none; }
 .vc-hub-home .hub-card { grid-column:auto; grid-row:auto; width:100%; --hub-tilt:0deg; --hub-roll:0deg; }
 .vc-hub-home .hub-connections { display:none; }
 .vc-hub-home .hub-card-copy strong { font-size:15px; }
 }
@media(max-width:820px) { .vc-hub-home.vc-workspace main { padding:24px 24px 36px; } .vc-hub-home.vc-workspace h1 { font-size:clamp(29px,5vw,42px); } }
@media(max-width:600px) {
 .vc-hub-home.vc-workspace main { padding:24px 18px 30px; }
 .vc-hub-home.vc-workspace h1 { font-size:31px; line-height:1.18; margin-bottom:14px; }
 .vc-hub-home .hub-lead { font-size:15px; }
 .vc-hub-home .hub-subtitle { font-size:13px; margin-top:6px; }
 .vc-hub-home .hub-scene { grid-template-columns:minmax(0,1fr); gap:24px; margin-top:0; padding:26px 8px; }
 .vc-hub-home .hub-core { width:min(245px,100%); }
 .vc-hub-home .hub-core ul { gap:12px; }
 .vc-hub-home .hub-core li { padding:7px 14px; font-size:12px; }
 .vc-hub-home .hub-core li svg { width:18px; height:18px; }
 .vc-hub-home .hub-card { min-height:115px; grid-template-columns:81px minmax(0,1fr) 12px; padding:13px 12px 13px 6px; }
 .vc-hub-home .hub-art { width:115px; height:132px; left:-21px; }
 .vc-hub-home .hub-card-copy>span { padding-left:0; font-size:12px; }
 }
@media(prefers-reduced-motion:reduce) { .vc-hub-home .hub-card,.vc-hub-home .hub-core::before,.vc-hub-home .hub-core::after,.vc-hub-home .hub-particle { animation:none; } .vc-hub-home .hub-card { transition:none; } .vc-hub-home .hub-particle { offset-distance:50%; opacity:.6; } }

/* Home's active location follows the reference without changing the shared navigation. */
.vc-hub-home .workspace-topbar nav a[aria-current=page] { position:relative; color:#b8eaff; background:none; box-shadow:none; }
.vc-hub-home .workspace-topbar nav a[aria-current=page]::after { content:""; position:absolute; left:12px; right:12px; bottom:0; height:2px; background:#40caff; border-radius:9px; box-shadow:0 0 9px #40caff80; }
