/* ============================================================
   VIGILANCIA 1398 — main.css v6 — JordanDev
   ============================================================ */
:root {
    --gold:   #C9A84C;
    --gold-d: #9B7A2A;
    --gold-g: linear-gradient(135deg,#C9A84C,#9B7A2A);
    --gold-h: linear-gradient(90deg,#C9A84C,#9B7A2A);
    --bg:     #0C1824;
    --bg2:    #111E2B;
    --bg3:    #162536;
    --card:   #1A2A3A;
    --white:  #FFFFFF;
    --muted:  #CBD5E0;
    --dim:    #607080;
    --T:      'Barlow Condensed',sans-serif;
    --B:      'Barlow',sans-serif;
    --nav:    72px;
    --r:      4px;
    --t:      .22s ease;
    --max:    1160px;
}

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    font-family:'Barlow',sans-serif !important;
    background:#0C1824 !important;
    color:#FFFFFF !important;
    font-size:17px !important;
    line-height:1.7 !important;
    overflow-x:hidden;
    cursor:none;
    padding:0 !important;
    margin:0 !important;
}

/* ── KILL ASTRA OVERRIDES ────────────────────────────────── */
h1,h2,h3,h4,h5,h6,
.section-title,
.v-ph-inner h1,
.v-srv-page h1,
.v-historia h3,
.v-cta-inner h2,
.v-footer-col h4,
.entry-title,
.entry-title a {
    color:#FFFFFF !important;
    font-family:'Barlow Condensed',sans-serif !important;
}
.gold-text {
    background:linear-gradient(90deg,#C9A84C,#9B7A2A) !important;
    -webkit-background-clip:text !important;
    -webkit-text-fill-color:transparent !important;
    background-clip:text !important;
    color:unset !important;
}
p,li,span,a,div {
    font-family:'Barlow',sans-serif;
}
body,button,input,select,textarea {
    font-family:'Barlow',sans-serif !important;
}

/* Kill Astra header/footer */
#masthead,.main-header-bar,.ast-above-header-bar,.ast-below-header-bar,
.ast-mobile-header-wrap,footer.site-footer,.ast-small-footer,
.footer-widget-area,#colophon,.ast-site-footer-wrap{display:none!important}
#page,.site,#content,.site-content,.ast-container,
.entry-content,.ast-article-single,.site-main{
    padding:0!important;margin:0!important;
    max-width:100%!important;width:100%!important;float:none!important;
}

/* Admin bar fix */
body.admin-bar .v-nav{top:32px}
@media(max-width:782px){body.admin-bar .v-nav{top:46px}}

/* ── CURSOR ──────────────────────────────────────────────── */
.v-dot{position:fixed;width:8px;height:8px;background:var(--gold);border-radius:50%;pointer-events:none;z-index:99999;transform:translate(-50%,-50%);transition:width .15s,height .15s}
.v-ring{position:fixed;width:30px;height:30px;border:1px solid rgba(201,168,76,.45);border-radius:50%;pointer-events:none;z-index:99998;transform:translate(-50%,-50%);transition:width .2s,height .2s}
.v-dot.on{width:13px;height:13px}
.v-ring.on{width:46px;height:46px;border-color:rgba(201,168,76,.8)}

/* ── NAV ─────────────────────────────────────────────────── */
.v-nav{
    position:fixed;top:0;left:0;right:0;z-index:9999;
    height:var(--nav);background:rgba(12,24,36,.96);
    backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
    border-bottom:1px solid rgba(201,168,76,.18);
    display:flex;align-items:center;padding:0 5%;gap:32px;
    transition:box-shadow var(--t),background var(--t);
}
.v-nav::after{
    content:'';position:absolute;bottom:0;left:5%;right:5%;height:1px;
    background:var(--gold-g);opacity:0;transition:opacity var(--t);pointer-events:none;
}
.v-nav.scrolled{box-shadow:0 6px 40px rgba(0,0,0,.7)}
.v-nav.scrolled::after{opacity:.4}
.v-logo{text-decoration:none;flex-shrink:0;display:flex;align-items:center}
.v-logo img{height:52px;width:auto;object-fit:contain;display:block;filter:drop-shadow(0 0 8px rgba(201,168,76,.2))}
.v-nav-links{display:flex;gap:32px;list-style:none;align-items:center;flex:1;justify-content:center}
.v-nav-links a{
    font-family:'Barlow Condensed',sans-serif !important;
    font-size:11px;font-weight:700;
    letter-spacing:3px;text-transform:uppercase;color:var(--muted);
    text-decoration:none;position:relative;padding:4px 0;transition:color var(--t);
}
.v-nav-links a::after{content:'';position:absolute;bottom:-2px;left:0;width:0;height:1.5px;background:var(--gold);transition:width var(--t)}
.v-nav-links a:hover{color:var(--white)}
.v-nav-links a:hover::after{width:100%}
.v-nav-cta{
    flex-shrink:0;background:var(--gold-g);color:var(--bg) !important;
    font-family:'Barlow Condensed',sans-serif !important;
    font-weight:800;font-size:11px;
    letter-spacing:2.5px;text-transform:uppercase;
    padding:11px 22px;border-radius:var(--r);
    text-decoration:none !important;white-space:nowrap;
    transition:opacity var(--t),transform var(--t),box-shadow var(--t);
}
.v-nav-cta:hover{opacity:.88;transform:translateY(-1px);box-shadow:0 4px 16px rgba(201,168,76,.3)}
.v-ham{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:none;padding:4px;margin-left:auto}
.v-ham span{display:block;width:22px;height:1.5px;background:var(--gold);transition:transform var(--t),opacity var(--t)}
.v-mmenu{
    display:none;position:fixed;top:var(--nav);left:0;right:0;
    background:rgba(8,15,22,.99);border-bottom:1px solid rgba(201,168,76,.18);
    padding:24px 5% 32px;z-index:9998;flex-direction:column;gap:0;
}
.v-mmenu.open{display:flex}
.v-mmenu a{
    font-family:'Barlow Condensed',sans-serif !important;
    font-size:24px;font-weight:800;
    letter-spacing:4px;text-transform:uppercase;color:var(--muted);
    text-decoration:none;padding:12px 0;
    border-bottom:1px solid rgba(255,255,255,.05);transition:color var(--t),padding-left var(--t);
}
.v-mmenu a:last-child{border:none}
.v-mmenu a:hover{color:var(--gold);padding-left:8px}

/* ── SHARED UTILS ────────────────────────────────────────── */
.wrap{max-width:var(--max);margin:0 auto;padding:0 5%;width:100%}
.eyebrow{
    display:flex;align-items:center;gap:12px;
    font-family:'Barlow Condensed',sans-serif !important;
    font-size:0.8rem;font-weight:700;
    letter-spacing:5px;text-transform:uppercase;color:var(--gold);
    margin-bottom:12px;
}
.eyebrow::before{content:'';width:28px;height:1px;background:var(--gold);flex-shrink:0}
.section-title{
    font-family:'Barlow Condensed',sans-serif !important;
    font-weight:800;
    font-size:clamp(2.4rem,4vw,52px);
    text-transform:uppercase;letter-spacing:2px;
    color:#FFFFFF !important;line-height:.95;
}
.section-title-center{text-align:center}
.section-title-center .eyebrow{justify-content:center}
.section-title-center .eyebrow::before{display:none}
.gold-line{display:block;width:56px;height:3px;background:var(--gold-g);margin:18px 0 0;border-radius:2px}
.btn-gold{
    display:inline-flex;align-items:center;gap:8px;
    background:var(--gold-g);color:var(--bg) !important;
    font-family:'Barlow Condensed',sans-serif !important;
    font-weight:800;font-size:12px;
    letter-spacing:3px;text-transform:uppercase;
    padding:14px 32px;border-radius:var(--r);
    text-decoration:none !important;border:none;cursor:none;
    transition:opacity var(--t),transform var(--t),box-shadow var(--t);
}
.btn-gold:hover{opacity:.88;transform:translateY(-2px);box-shadow:0 8px 24px rgba(201,168,76,.3)}
.btn-outline{
    display:inline-flex;align-items:center;gap:8px;
    border:1.5px solid rgba(201,168,76,.5);color:var(--gold) !important;background:transparent;
    font-family:'Barlow Condensed',sans-serif !important;
    font-weight:800;font-size:12px;
    letter-spacing:3px;text-transform:uppercase;
    padding:14px 32px;border-radius:var(--r);
    text-decoration:none !important;cursor:none;
    transition:background var(--t),border-color var(--t),box-shadow var(--t);
}
.btn-outline:hover{background:rgba(201,168,76,.08);border-color:var(--gold);box-shadow:0 0 16px rgba(201,168,76,.1)}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .5s ease,transform .5s ease}
.reveal.in{opacity:1;transform:none}

/* ── HERO ────────────────────────────────────────────────── */
.v-hero{
    min-height:100vh;background:var(--bg);
    display:flex;align-items:center;justify-content:center;
    text-align:center;padding:calc(var(--nav) + 60px) 5% 80px;
    position:relative;overflow:hidden;
}
.v-hero::before{
    content:'';position:absolute;inset:0;pointer-events:none;
    background-image:radial-gradient(rgba(201,168,76,.06) 1px,transparent 1px);
    background-size:32px 32px;
}
.v-hero-geom{position:absolute;inset:0;pointer-events:none;z-index:0}
.v-geo-svg{position:absolute;top:0;left:0;width:100%;height:100%}
.v-hero-content{
    position:relative;z-index:1;
    display:flex;flex-direction:column;align-items:center;
    max-width:840px;width:100%;
}
.v-hero-logo-wrap{
    width:220px;height:220px;
    display:flex;align-items:center;justify-content:center;
    position:relative;margin-bottom:40px;
    animation:up .7s ease .1s both;
}
.v-hero-logo-wrap::before{
    content:'';position:absolute;inset:-24px;border-radius:50%;
    border:1px solid rgba(201,168,76,.14);
    animation:spin 30s linear infinite;
}
.v-hero-logo-wrap::after{
    content:'';position:absolute;inset:-48px;border-radius:50%;
    border:1px solid rgba(201,168,76,.07);
    animation:spin 48s linear infinite reverse;
}
.v-hero-logo{
    width:200px;height:200px;object-fit:contain;
    filter:drop-shadow(0 0 36px rgba(201,168,76,.4)) drop-shadow(0 0 80px rgba(201,168,76,.15));
    animation:float 8s ease-in-out infinite;
}
.v-hero-eyebrow{
    font-family:'Barlow Condensed',sans-serif !important;
    font-size:0.8rem;font-weight:700;
    letter-spacing:5px;text-transform:uppercase;color:var(--gold);
    margin-bottom:20px;animation:up .6s ease .25s both;
}
.v-hero h1{
    font-family:'Barlow Condensed',sans-serif !important;
    font-weight:800;
    font-size:clamp(42px,6vw,80px);
    line-height:.92;text-transform:uppercase;
    letter-spacing:3px;color:#FFFFFF !important;
    margin-bottom:28px;animation:up .6s ease .35s both;
}
.v-hero-sub{
    font-size:1.05rem;color:var(--muted);line-height:1.7;
    max-width:520px;margin-bottom:40px;animation:up .6s ease .45s both;
}
.v-hero-ctas{
    display:flex;gap:14px;flex-wrap:wrap;justify-content:center;
    margin-bottom:56px;animation:up .6s ease .55s both;
}
.v-hero-stats{
    display:flex;align-items:center;gap:0;
    border:1px solid rgba(201,168,76,.15);border-radius:var(--r);
    overflow:hidden;animation:up .6s ease .65s both;
}
.v-hero-stat{
    padding:20px 36px;text-align:center;
    border-right:1px solid rgba(201,168,76,.12);
}
.v-hero-stat:last-child{border-right:none}
.v-sn{
    font-family:'Barlow Condensed',sans-serif;
    font-size:38px;font-weight:800;line-height:1;
    background:var(--gold-h);-webkit-background-clip:text;
    -webkit-text-fill-color:transparent;background-clip:text;
}
.v-sl{font-size:9px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:var(--dim);margin-top:4px}

@keyframes up    {from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
@keyframes fadein{from{opacity:0}to{opacity:1}}
@keyframes float {0%,100%{transform:translateY(0)}50%{transform:translateY(-16px)}}
@keyframes spin  {to{transform:rotate(360deg)}}

/* ── DIGESERVISP BAND ────────────────────────────────────── */
.v-dige-band{
    background:var(--gold-g);
    padding:0;position:relative;overflow:hidden;
}
.v-dige-band::before{
    content:'';position:absolute;top:0;right:0;bottom:0;
    width:300px;background:rgba(12,24,36,.12);
    clip-path:polygon(60px 0,100% 0,100% 100%,0 100%);
    pointer-events:none;
}
.v-dige-band-inner{
    max-width:var(--max);margin:0 auto;
    padding:36px 5%;
    display:flex;align-items:center;gap:36px;
    position:relative;z-index:1;
}
.v-dige-logo-circle{
    flex-shrink:0;width:80px;height:80px;border-radius:50%;
    background:rgba(12,24,36,.18);border:2px solid rgba(12,24,36,.25);
    display:flex;align-items:center;justify-content:center;overflow:hidden;
}
.v-dige-logo-circle img{width:56px;height:56px;object-fit:contain}
.v-dige-divider-line{flex-shrink:0;width:1px;height:56px;background:rgba(12,24,36,.2)}
.v-dige-band-text{flex:1}
.v-dige-band-over{
    font-family:'Barlow Condensed',sans-serif !important;
    font-size:0.8rem;font-weight:800;
    letter-spacing:4px;text-transform:uppercase;
    color:rgba(12,24,36,.65);margin-bottom:4px;
}
.v-dige-band-title{
    font-family:'Barlow Condensed',sans-serif !important;
    font-weight:800;font-size:clamp(18px,2vw,26px);
    text-transform:uppercase;letter-spacing:1px;
    color:var(--bg) !important;line-height:1;margin-bottom:8px;
}
.v-dige-band-desc{
    font-size:1rem;color:rgba(12,24,36,.78);line-height:1.7;max-width:640px;
}
.v-dige-band-desc strong{color:var(--bg)}
.v-dige-badge-row{flex-shrink:0;display:flex;flex-direction:column;gap:6px;align-items:flex-end}
.v-dige-check{
    display:flex;align-items:center;gap:6px;
    font-family:'Barlow Condensed',sans-serif;
    font-size:10px;font-weight:700;
    letter-spacing:1.5px;text-transform:uppercase;color:var(--bg);
}
.v-dige-check svg{flex-shrink:0}

/* ── SERVICIOS HOME ──────────────────────────────────────── */
.v-srv-home{background:var(--bg2);padding:88px 5%}
.v-srv-home .wrap{max-width:var(--max);margin:0 auto}
.v-srv-grid{
    display:grid;grid-template-columns:repeat(2,1fr);
    gap:2px;margin-top:52px;
    border:1px solid rgba(201,168,76,.12);
    border-radius:var(--r);overflow:hidden;
    background:rgba(201,168,76,.12);
}
.v-srv-card{
    background:var(--card);padding:28px 26px;
    display:flex;flex-direction:column;gap:16px;
    border-left:4px solid transparent;
    transition:border-left-color var(--t),background var(--t);
}
.v-srv-card:hover{border-left-color:var(--gold);background:#1E3045}
.v-srv-head{display:flex;align-items:center;gap:14px}
.v-srv-ico{
    width:50px;height:50px;flex-shrink:0;border-radius:50%;
    border:1.5px solid rgba(201,168,76,.35);
    display:flex;align-items:center;justify-content:center;
    transition:background var(--t),border-color var(--t);
}
.v-srv-card:hover .v-srv-ico{background:rgba(201,168,76,.1);border-color:var(--gold)}
.v-srv-name{
    font-family:'Barlow Condensed',sans-serif !important;
    font-size:17px;font-weight:700;
    text-transform:uppercase;letter-spacing:.5px;
    color:#FFFFFF !important;line-height:1.1;
}
.v-srv-items{list-style:none;display:flex;flex-direction:column;gap:4px;padding-left:0}
.v-srv-items li{
    font-size:13px;color:var(--muted);
    padding-left:16px;position:relative;line-height:1.5;
}
.v-srv-items li::before{
    content:'';position:absolute;left:0;top:8px;
    width:8px;height:1px;background:var(--gold);
}

/* ── PILARES ─────────────────────────────────────────────── */
.v-pilares{
    background:var(--bg);padding:88px 5%;
    position:relative;overflow:hidden;
}
.v-pilares::before{
    content:'';position:absolute;
    top:0;left:0;right:0;height:3px;
    background:var(--gold-g);
}
.v-pilares::after{
    content:'';position:absolute;bottom:0;right:0;
    width:400px;height:400px;
    background:radial-gradient(circle,rgba(201,168,76,.04) 0%,transparent 70%);
    pointer-events:none;
}
.v-pilares-grid{
    display:grid;grid-template-columns:repeat(4,1fr);
    gap:1px;margin-top:52px;
    background:rgba(201,168,76,.1);
    border:1px solid rgba(201,168,76,.1);
    border-radius:var(--r);overflow:hidden;
}
.v-pilar{background:var(--card);padding:36px 24px;display:flex;flex-direction:column;gap:14px;transition:background var(--t)}
.v-pilar:hover{background:#1E3045}
.v-pilar-ico{
    width:58px;height:58px;border-radius:50%;
    background:var(--gold-g);
    display:flex;align-items:center;justify-content:center;
    box-shadow:0 4px 18px rgba(201,168,76,.25);flex-shrink:0;
}
.v-pilar-name{
    font-family:'Barlow Condensed',sans-serif !important;
    font-size:20px;font-weight:800;
    text-transform:uppercase;letter-spacing:.5px;color:#FFFFFF !important;
}
.v-pilar-desc{font-size:1rem;color:var(--muted);line-height:1.7}

/* ── CLIENTES ────────────────────────────────────────────── */
.v-clientes{background:var(--bg2);padding:80px 5%}
.v-logos-grid{
    display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));
    gap:2px;margin-top:44px;
    background:rgba(201,168,76,.1);
    border:1px solid rgba(201,168,76,.1);
    border-radius:var(--r);overflow:hidden;
}
.v-logo-box{
    background:var(--card);padding:28px 20px;min-height:100px;
    display:flex;align-items:center;justify-content:center;
    transition:background var(--t);
}
.v-logo-box:hover{background:#1E3045}
.v-logo-box img{max-width:110px;max-height:60px;width:auto;height:auto;object-fit:contain}

/* ── ALIADOS ─────────────────────────────────────────────── */
.v-aliados{background:var(--bg);padding:80px 5%}
.v-aliados-intro{font-size:1rem;color:var(--muted);line-height:1.7;max-width:640px;margin-top:16px;margin-bottom:44px}
.v-aliados-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.v-aliado{
    background:var(--card);
    border:1px solid rgba(201,168,76,.15);
    border-top:3px solid var(--gold);
    border-radius:0 0 var(--r) var(--r);
    padding:36px 32px;
    display:flex;flex-direction:column;gap:20px;
    transition:box-shadow var(--t),border-top-color var(--t);
}
.v-aliado:hover{box-shadow:0 12px 40px rgba(0,0,0,.35);border-top-color:#E8C060}
.v-aliado-logo{height:56px;display:flex;align-items:center}
.v-aliado-logo img{max-height:48px;max-width:140px;object-fit:contain}
.v-aliado-logo-name{
    font-family:'Barlow Condensed',sans-serif;
    font-size:26px;font-weight:800;
    letter-spacing:3px;text-transform:uppercase;color:var(--gold);display:none;
}
.v-aliado-name-tag{
    font-family:'Barlow Condensed',sans-serif !important;
    font-size:17px;font-weight:800;
    text-transform:uppercase;letter-spacing:1px;
    color:var(--gold) !important;margin-bottom:6px;
}
.v-aliado-desc{font-size:1rem;color:var(--muted);line-height:1.7}

/* ── CTA BAND ────────────────────────────────────────────── */
.v-cta-band{
    background:var(--bg2);border-top:4px solid var(--gold);
    padding:96px 5%;position:relative;overflow:hidden;text-align:center;
}
.v-cta-band::before{
    content:'';position:absolute;inset:0;pointer-events:none;
    background:radial-gradient(ellipse 80% 60% at 50% 50%,rgba(201,168,76,.05) 0%,transparent 70%);
}
.v-cta-band::after{
    content:'';position:absolute;bottom:0;right:0;
    width:0;height:0;
    border-left:180px solid transparent;
    border-bottom:180px solid rgba(201,168,76,.05);
    pointer-events:none;
}
.v-cta-inner{max-width:760px;margin:0 auto;position:relative;z-index:1}
.v-cta-inner h2{
    font-family:'Barlow Condensed',sans-serif !important;
    font-weight:800;font-size:clamp(28px,4.5vw,56px);
    text-transform:uppercase;letter-spacing:2px;
    line-height:1;color:#FFFFFF !important;margin-bottom:24px;
}
.v-cta-inner p{font-size:1rem;color:var(--muted);max-width:480px;margin:0 auto 40px;line-height:1.7}
.v-cta-btns{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}

/* ── FOOTER ──────────────────────────────────────────────── */
.v-footer{background:#07101A;border-top:1px solid rgba(201,168,76,.12)}
.v-footer-top{
    max-width:var(--max);margin:0 auto;
    padding:64px 5% 48px;
    display:grid;grid-template-columns:260px 1fr 1fr 1fr;
    gap:48px;align-items:start;
}
.v-footer-brand img{
    height:62px;width:auto;object-fit:contain;
    margin-bottom:14px;display:block;
    filter:drop-shadow(0 0 8px rgba(201,168,76,.15));
}
.v-footer-tagline{font-size:13px;color:var(--dim);line-height:1.75;margin-bottom:20px;max-width:200px}
.v-footer-col h4{
    font-family:'Barlow Condensed',sans-serif !important;
    font-size:10px;font-weight:800;
    letter-spacing:4px;text-transform:uppercase;
    color:var(--gold) !important;margin-bottom:18px;
    padding-bottom:10px;border-bottom:1px solid rgba(201,168,76,.15);
}
.v-footer-col a,.v-footer-col p{
    display:block;font-size:14px;color:var(--muted);
    text-decoration:none;margin-bottom:8px;line-height:1.6;
    transition:color var(--t),padding-left var(--t);
}
.v-footer-col a:hover{color:var(--gold);padding-left:4px;text-decoration:none}
.v-footer-col p{color:var(--dim)}
.v-footer-bottom{
    border-top:1px solid rgba(255,255,255,.05);
    padding:18px 5%;
    display:flex;align-items:center;justify-content:space-between;
    max-width:100%;
}
.v-footer-copy{font-size:11px;color:var(--dim);letter-spacing:.5px}
.v-footer-legal{display:flex;gap:20px}
.v-footer-legal a{font-size:11px;color:var(--dim);text-decoration:none;letter-spacing:.5px;transition:color var(--t)}
.v-footer-legal a:hover{color:var(--gold)}

/* ── PAGE HERO (páginas internas) ────────────────────────── */
.v-page-hero{
    background:var(--bg);
    padding:calc(var(--nav) + 72px) 5% 72px;
    position:relative;overflow:hidden;text-align:center;
}
.v-page-hero::before{
    content:'';position:absolute;inset:0;pointer-events:none;opacity:.4;
    background-image:radial-gradient(rgba(201,168,76,.055) 1px,transparent 1px);
    background-size:28px 28px;
}
.v-page-hero::after{
    content:'';position:absolute;inset:0;pointer-events:none;
    background:radial-gradient(ellipse 60% 70% at 80% 50%,rgba(201,168,76,.04) 0%,transparent 65%);
}
.v-ph-inner{max-width:720px;margin:0 auto;position:relative;z-index:1}
.v-ph-inner .eyebrow{justify-content:center;animation:up .45s ease .05s both}
.v-ph-inner .eyebrow::before{display:none}
.v-ph-inner h1{
    font-family:'Barlow Condensed',sans-serif !important;
    font-weight:800;font-size:clamp(36px,5vw,64px);
    line-height:.95;text-transform:uppercase;
    letter-spacing:2px;color:#FFFFFF !important;
    margin-bottom:20px;animation:up .45s ease .15s both;
}
.v-ph-inner p{font-size:1.05rem;color:var(--muted);line-height:1.7;animation:up .45s ease .28s both}

/* ── SERVICIOS PAGE ──────────────────────────────────────── */
.v-srv-page{background:var(--bg);padding:72px 5%}
.v-srv-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:48px}
.v-srv-detail{
    background:var(--card);border-left:5px solid var(--gold);
    border-radius:0 var(--r) var(--r) 0;padding:28px 24px;
    transition:border-color var(--t),transform var(--t),box-shadow var(--t);
}
.v-srv-detail:hover{border-color:#E8C060;transform:translateX(4px);box-shadow:-3px 0 18px rgba(201,168,76,.1)}
.v-srv-dhead{display:flex;align-items:center;gap:14px;margin-bottom:16px}
.v-srv-dico{width:46px;height:46px;border-radius:50%;border:1.5px solid var(--gold);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.v-srv-dname{
    font-family:'Barlow Condensed',sans-serif !important;
    font-size:18px;font-weight:700;
    text-transform:uppercase;letter-spacing:.5px;color:#FFFFFF !important;
}
.v-srv-ditems{list-style:none;display:flex;flex-direction:column;gap:6px}
.v-srv-ditems li{font-size:13px;color:var(--muted);padding-left:14px;position:relative;line-height:1.5}
.v-srv-ditems li::before{content:'';position:absolute;left:0;top:8px;width:6px;height:1px;background:var(--gold)}

/* ── HISTORIA / ACERCA ───────────────────────────────────── */
.v-historia{background:var(--bg);padding:72px 5%}
.v-historia-grid{display:grid;grid-template-columns:1fr 380px;gap:64px;align-items:start}
.v-historia h3{
    font-family:'Barlow Condensed',sans-serif !important;
    font-size:24px;font-weight:800;text-transform:uppercase;
    color:var(--gold) !important;margin-bottom:16px;margin-top:28px;
}
.v-historia h3:first-child{margin-top:0}
.v-historia p{font-size:1rem;color:var(--muted);line-height:1.7;margin-bottom:14px}
.v-stats-box{
    background:var(--card);
    border:1px solid rgba(201,168,76,.18);border-left:5px solid var(--gold);
    border-radius:0 var(--r) var(--r) 0;padding:32px 28px;
    position:sticky;top:calc(var(--nav) + 20px);
}
.v-stat-item{padding:22px 0;border-bottom:1px solid rgba(201,168,76,.1)}
.v-stat-item:last-child{border-bottom:none;padding-bottom:0}
.v-stat-item:first-child{padding-top:0}
.v-stat-num{
    font-family:'Barlow Condensed',sans-serif;
    font-size:48px;font-weight:800;line-height:1;
    background:var(--gold-h);-webkit-background-clip:text;
    -webkit-text-fill-color:transparent;background-clip:text;
}
.v-stat-lbl{font-size:12px;color:var(--muted);margin-top:5px;line-height:1.5}

/* ── CERTIFICADOS / DIGESERVISP PAGE ─────────────────────── */
.v-cert-section{background:var(--bg);padding:72px 5%}
.v-cert-grid{display:grid;grid-template-columns:280px 1fr;gap:64px;align-items:start}
.v-cert-logo-wrap{
    background:var(--card);
    border:1px solid rgba(201,168,76,.18);
    border-top:3px solid var(--gold);
    border-radius:0 0 var(--r) var(--r);
    padding:36px 28px;
    display:flex;flex-direction:column;align-items:center;gap:16px;
    text-align:center;
}
.v-cert-logo-wrap img{max-width:160px;height:auto;object-fit:contain}
.v-cert-title{
    font-family:'Barlow Condensed',sans-serif !important;
    font-size:14px;font-weight:800;letter-spacing:3px;
    text-transform:uppercase;color:var(--gold) !important;
}
.v-cert-checks{display:flex;flex-direction:column;gap:8px;width:100%;margin-top:8px}
.v-cert-check{
    display:flex;align-items:center;gap:8px;
    font-family:'Barlow Condensed',sans-serif;
    font-size:11px;font-weight:700;letter-spacing:2px;
    text-transform:uppercase;color:var(--muted);
}
.v-cert-check svg{flex-shrink:0;color:var(--gold)}
.v-cert-content h3{
    font-family:'Barlow Condensed',sans-serif !important;
    font-size:22px;font-weight:800;text-transform:uppercase;
    color:var(--gold) !important;margin-bottom:12px;margin-top:28px;
}
.v-cert-content h3:first-child{margin-top:0}
.v-cert-content p{font-size:1rem;color:var(--muted);line-height:1.7;margin-bottom:14px}

/* ── CONTACTO PAGE ───────────────────────────────────────── */
.v-cnt-page{background:var(--bg);padding:72px 5%}
.v-cnt-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.v-cnt-list{display:flex;flex-direction:column;gap:10px;margin-top:36px}
.v-cnt-row{
    display:flex;align-items:center;gap:14px;
    background:var(--card);border-left:4px solid var(--gold);
    border-radius:0 var(--r) var(--r) 0;padding:14px 18px;
    text-decoration:none !important;
    transition:transform var(--t),box-shadow var(--t);
}
.v-cnt-row:hover{transform:translateX(4px);box-shadow:-3px 0 12px rgba(201,168,76,.1)}
.v-cnt-ico{width:40px;height:40px;border-radius:50%;border:1.5px solid var(--gold);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.v-cnt-l{
    font-family:'Barlow Condensed',sans-serif;
    font-size:9px;font-weight:700;letter-spacing:2.5px;
    text-transform:uppercase;color:var(--gold);margin-bottom:2px;
}
.v-cnt-v{font-size:14px;color:#FFFFFF !important;font-weight:500}
.v-form{display:flex;flex-direction:column;gap:10px;margin-top:36px}
.v-f2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.v-input,.v-select,.v-textarea{
    width:100%;background:var(--card);
    border:1px solid rgba(201,168,76,.14);color:#FFFFFF !important;
    font-family:'Barlow',sans-serif !important;font-size:14px;
    padding:12px 14px;border-radius:var(--r);
    outline:none;appearance:none;transition:border-color var(--t);
}
.v-input::placeholder,.v-textarea::placeholder{color:var(--dim)}
.v-input:focus,.v-select:focus,.v-textarea:focus{border-color:rgba(201,168,76,.5)}
.v-select{cursor:none}
.v-select option{background:var(--card)}
.v-textarea{resize:vertical;min-height:100px;line-height:1.6}
.v-submit{
    background:var(--gold-g);color:var(--bg) !important;
    font-family:'Barlow Condensed',sans-serif !important;
    font-weight:800;font-size:13px;letter-spacing:2.5px;text-transform:uppercase;
    padding:15px;border:none;border-radius:var(--r);
    cursor:none;width:100%;margin-top:4px;
    transition:opacity var(--t),transform var(--t);
}
.v-submit:hover{opacity:.88;transform:translateY(-1px)}
.v-fnote{font-size:11px;color:var(--dim);text-align:center;margin-top:5px}
.v-fnote a{color:var(--gold);text-decoration:none}

/* ── RESPONSIVE ──────────────────────────────────────────── */
@media(max-width:1100px){
    .v-footer-top{grid-template-columns:1fr 1fr;gap:32px}
    .v-footer-top > :first-child{grid-column:1/-1}
    .v-pilares-grid{grid-template-columns:repeat(2,1fr)}
    .v-aliados-row{grid-template-columns:1fr}
    .v-historia-grid{grid-template-columns:1fr}
    .v-cert-grid{grid-template-columns:1fr}
    .v-stats-box{position:static}
}
@media(max-width:900px){
    .v-srv-grid{grid-template-columns:1fr}
    .v-nav-links,.v-nav-cta{display:none}
    .v-ham{display:flex}
    .v-cnt-grid{grid-template-columns:1fr;gap:44px}
    .v-srv-detail-grid{grid-template-columns:1fr}
    .v-dige-band-inner{flex-wrap:wrap}
    .v-dige-badge-row{align-items:flex-start}
    .v-dige-divider-line{display:none}
}
@media(max-width:700px){
    .v-hero{padding:calc(var(--nav) + 40px) 5% 60px}
    .v-hero-logo-wrap{width:160px;height:160px}
    .v-hero-logo{width:140px;height:140px}
    .v-hero h1{letter-spacing:1px}
    .v-hero-stats{flex-direction:column}
    .v-hero-stat{border-right:none;border-bottom:1px solid rgba(201,168,76,.12);padding:16px 32px}
    .v-hero-stat:last-child{border-bottom:none}
    .v-pilares-grid{grid-template-columns:1fr}
    .v-logos-grid{grid-template-columns:repeat(2,1fr)}
    .v-aliados-row{grid-template-columns:1fr}
    .v-aliado{padding:24px}
    .v-f2{grid-template-columns:1fr}
    .v-footer-top{grid-template-columns:1fr;gap:28px}
    .v-footer-bottom{flex-direction:column;gap:10px;text-align:center}
    .v-cta-btns{flex-direction:column;align-items:center}
    .v-dige-band-inner{gap:20px}
    .v-dige-logo-circle{width:64px;height:64px}
}

/* ── FIX CLIENTES GRID ───────────────────────────────────── */
.v-logos-grid {
    grid-template-columns: repeat(7, 1fr) !important;
}
.v-logo-box {
    background: var(--card) !important;
    box-shadow: 0 0 18px rgba(255,255,255,.04), inset 0 0 20px rgba(255,255,255,.02) !important;
    transition: background var(--t), box-shadow var(--t) !important;
}
.v-logo-box:hover {
    background: #1E3045 !important;
    box-shadow: 0 0 28px rgba(255,255,255,.08), inset 0 0 30px rgba(255,255,255,.04) !important;
}
.v-logo-box img {
    filter: drop-shadow(0 0 6px rgba(255,255,255,.15)) !important;
}

/* ── FIX ALIADOS ─────────────────────────────────────────── */
.v-aliado {
    align-items: center !important;
    text-align: center !important;
    box-shadow: 0 0 24px rgba(255,255,255,.04), inset 0 0 30px rgba(255,255,255,.02) !important;
}
.v-aliado-logo {
    justify-content: center !important;
    width: 100% !important;
}
.v-aliado-logo img {
    filter: drop-shadow(0 0 8px rgba(255,255,255,.2)) !important;
}
.v-aliado-name-tag {
    text-align: center !important;
}
.v-aliado-desc {
    text-align: left !important;
}
@media(max-width:700px){
    .v-logos-grid {
        grid-template-columns: repeat(3, 1fr) !important;
    }
}

/* ── FIX SELECT CONTACTO ─────────────────────────────────── */
.v-select {
    background:#1A2A3A !important;
    color:#CBD5E0 !important;
    border:1px solid rgba(201,168,76,.14) !important;
    height: auto !important;
    min-height: 44px !important;
    padding-top: 12px !important;
    padding-bottom: 12px !important;
    line-height: 1.5 !important;
}
}
.v-select:focus {
    border-color:rgba(201,168,76,.5) !important;
    color:#FFFFFF !important;
}
.v-select option {
    background:#1A2A3A !important;
    color:#CBD5E0 !important;
}
/* Fix inputs blancos también por si Astra los pisa */
.v-input,
.v-textarea {
    background:#1A2A3A !important;
    color:#FFFFFF !important;
    border:1px solid rgba(201,168,76,.14) !important;
}
.v-input::placeholder,
.v-textarea::placeholder {
    color:#607080 !important;
}