:root{--fvp-bg:#020911;--fvp-bg2:#04131d;--fvp-panel:#06141e;--fvp-line:#0b3b4c;--fvp-line2:#0d5368;--fvp-cyan:#18c8ff;--fvp-blue:#00a9f4;--fvp-text:#f4f7fa;--fvp-muted:#aab9c7}
body.fvport-active{background:var(--fvp-bg)!important;color:var(--fvp-text)}
body.fvport-active .entry-content>*{max-width:none!important}
.fvport{background:radial-gradient(circle at 8% 12%,rgba(0,169,244,.10),transparent 25%),var(--fvp-bg);color:var(--fvp-text);font-family:inherit;overflow:hidden}
.fvport *{box-sizing:border-box}
.fvport a{text-decoration:none}
.fvport-hero,.fvport-section,.fvport-focus{width:min(1180px,calc(100% - 48px));margin:0 auto}
.fvport-hero{min-height:720px;padding:104px 0 90px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:54px}
.fvport-kicker{font-size:13px;font-weight:800;letter-spacing:.22em;color:var(--fvp-cyan);margin-bottom:22px}
.fvport h1{font-size:clamp(48px,5.6vw,78px)!important;line-height:1.02!important;letter-spacing:-.045em;margin:0 0 28px!important;color:#fff!important;max-width:820px}
.fvport h2{font-size:clamp(34px,4vw,52px)!important;line-height:1.08!important;letter-spacing:-.035em;color:#fff!important;margin:0 0 18px!important}
.fvport h3{font-size:25px!important;line-height:1.16!important;color:#fff!important;margin:0 0 16px!important}
.fvport p{color:var(--fvp-muted);font-size:17px;line-height:1.65}
.fvport-lead{font-size:20px!important;max-width:780px;margin:0 0 36px!important}
.fvport-actions{display:flex;gap:14px;flex-wrap:wrap}
.fvport-btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 25px;border-radius:10px;font-size:16px;font-weight:800;border:1px solid var(--fvp-line2);transition:.2s ease}
.fvport-btn-primary{background:linear-gradient(135deg,var(--fvp-cyan),var(--fvp-blue));color:#001018!important;border-color:transparent;box-shadow:0 0 30px rgba(24,200,255,.14)}
.fvport-btn-secondary{color:#fff!important;background:rgba(4,17,26,.7)}
.fvport-btn:hover{transform:translateY(-2px);filter:brightness(1.08)}
.fvport-hero-visual{position:relative;min-height:470px;display:flex;align-items:center;justify-content:center;flex-direction:column}
.fvport-radar{position:absolute;border:1px solid rgba(24,200,255,.24);border-radius:50%}
.fvport-radar-a{width:470px;height:470px}.fvport-radar-b{width:340px;height:340px;border-style:dashed}
.fvport-hero-logo{position:relative;z-index:2;width:min(92%,560px);max-height:230px;object-fit:contain;filter:drop-shadow(0 0 24px rgba(24,200,255,.15))}
.fvport-wordmark{position:relative;z-index:2;font-size:55px;letter-spacing:.22em;font-weight:300}.fvport-wordmark span{color:var(--fvp-cyan)}
.fvport-protocols{position:absolute;bottom:58px;z-index:2;color:#62d9ff;font-size:12px;letter-spacing:.25em}
.fvport-section{padding:95px 0}
.fvport-section-intro{font-size:18px!important;margin:0 0 44px!important}
.fvport-grid{display:grid;gap:24px}.fvport-grid-sections,.fvport-grid-posts{grid-template-columns:repeat(2,minmax(0,1fr))}
.fvport-card{position:relative;display:block;background:linear-gradient(145deg,rgba(5,16,25,.94),rgba(2,10,17,.98));border:1px solid rgba(41,112,135,.42);border-radius:22px;padding:34px;color:inherit!important;min-height:245px;transition:.22s ease;overflow:hidden}
.fvport-card:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 55%,rgba(24,200,255,.04));pointer-events:none}
.fvport-card:hover{transform:translateY(-3px);border-color:rgba(24,200,255,.56);box-shadow:0 14px 40px rgba(0,0,0,.24)}
.fvport-card-icon{display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;border:1px solid var(--fvp-line2);border-radius:12px;color:var(--fvp-cyan);margin-bottom:25px;font-size:21px}
.fvport-link{display:block;color:var(--fvp-cyan);font-weight:800;margin-top:24px}.fvport-link b{font-size:20px;margin-left:4px}
.fvport-focus{margin-top:35px;margin-bottom:35px;padding:74px 55px;background:linear-gradient(145deg,#051722,#03101a);border:1px solid rgba(41,112,135,.42);border-radius:30px}
.fvport-focus h2{max-width:920px!important}.fvport-chips{display:flex;gap:14px;flex-wrap:wrap;margin-top:40px}.fvport-chips span{padding:12px 17px;border-radius:999px;border:1px solid var(--fvp-line2);background:#061722;color:#e8f2f7;font-weight:700}
.fvport-post-card time{display:block;color:var(--fvp-cyan);font-size:12px;font-weight:800;letter-spacing:.15em;margin-bottom:24px}.fvport-post-card h3{color:#35c6ff!important}.fvport-post-card .fvport-link{opacity:0;transform:translateY(5px);transition:.2s}.fvport-post-card:hover .fvport-link{opacity:1;transform:none}
/* Evita que iconos e imágenes decorativas de la portada hereden efectos de zoom/ampliación del tema. */
body.fvport-active .fvport img,
body.fvport-active .fvport .fvport-card-icon{transform:none!important;scale:1!important;zoom:1!important}
body.fvport-active .fvport img{cursor:default!important}
body.fvport-active .fvport-card-icon{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;max-width:42px!important;max-height:42px!important;font-size:21px!important;flex:0 0 42px!important}
body.fvport-active .fvport-hero-logo{width:min(92%,560px)!important;max-width:560px!important;max-height:230px!important;object-fit:contain!important}
@media(max-width:900px){.fvport-hero{grid-template-columns:1fr;min-height:auto;padding:76px 0 55px}.fvport-hero-visual{min-height:390px}.fvport-radar-a{width:390px;height:390px}.fvport-radar-b{width:285px;height:285px}.fvport-grid-sections,.fvport-grid-posts{grid-template-columns:1fr}.fvport-focus{padding:48px 34px}}
@media(max-width:600px){.fvport-hero,.fvport-section,.fvport-focus{width:min(100% - 28px,1180px)}.fvport-hero{padding:58px 0 35px;gap:26px}.fvport h1{font-size:42px!important}.fvport h2{font-size:32px!important}.fvport p,.fvport-lead{font-size:16px!important}.fvport-actions{display:grid;grid-template-columns:1fr}.fvport-btn{width:100%}.fvport-hero-visual{min-height:330px}.fvport-radar-a{width:310px;height:310px}.fvport-radar-b{width:235px;height:235px}.fvport-protocols{bottom:30px;font-size:10px}.fvport-section{padding:62px 0}.fvport-card{padding:27px;min-height:220px}.fvport-focus{padding:38px 25px;border-radius:22px}.fvport-footer-inner{width:min(100% - 28px,1180px);padding:20px 0}}


/* v1.0.16: responsive de contenido. Navegación y footer son responsabilidad del Core. */
@media (max-width:1200px){
  body.fvport-active .fvport{width:min(100% - 36px,1180px)!important;margin-inline:auto!important;}
  body.fvport-active .fvport-hero{grid-template-columns:1fr!important;gap:34px!important;padding:56px 0 28px!important;}
  body.fvport-active .fvport-hero-copy{max-width:820px!important;}
  body.fvport-active .fvport-hero h1{font-size:clamp(38px,7vw,64px)!important;line-height:1.06!important;max-width:900px!important;}
  body.fvport-active .fvport-lead{max-width:900px!important;}
  body.fvport-active .fvport-hero-visual{min-height:360px!important;max-width:720px!important;width:100%!important;margin:0 auto!important;}
  body.fvport-active .fvport-grid-sections,body.fvport-active .fvport-grid-posts{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media (max-width:700px){
  body.fvport-active .fvport{width:min(100% - 24px,1180px)!important;}
  body.fvport-active .fvport-hero{padding-top:36px!important;gap:24px!important;}
  body.fvport-active .fvport-hero h1{font-size:clamp(34px,11vw,50px)!important;}
  body.fvport-active .fvport-actions{display:flex!important;flex-wrap:wrap!important;gap:12px!important;}
  body.fvport-active .fvport-btn{display:inline-flex!important;width:auto!important;}
  body.fvport-active .fvport-hero-visual{min-height:260px!important;}
  body.fvport-active .fvport-hero-logo{max-width:92%!important;max-height:240px!important;object-fit:contain!important;}
  body.fvport-active .fvport-grid-sections,body.fvport-active .fvport-grid-posts{grid-template-columns:1fr!important;}
  body.fvport-active .fvport-card{padding:22px!important;}
  body.fvport-active .fvport-focus{padding:26px!important;}
}

/* v1.0.17: neutralización del envoltorio del tema movida desde wp_head al CSS cacheable. */
body.fvport-active .entry-header,
body.fvport-active .page-header,
body.fvport-active h1.entry-title,
body.fvport-active .wp-block-post-title{display:none!important}
body.fvport-active .entry-content,
body.fvport-active .wp-block-post-content,
body.fvport-active main.site-main,
body.fvport-active .site-main{max-width:none!important;width:100%!important;padding-top:0!important;margin-top:0!important}
body.fvport-active .fvport-card-icon,
body.fvport-active .fvport-card-icon:hover,
body.fvport-active .fvport-card:hover .fvport-card-icon,
body.fvport-active .fvport-hero-logo,
body.fvport-active .fvport-hero-logo:hover,
body.fvport-active .fvport-hero-visual:hover .fvport-hero-logo{transform:none!important;scale:1!important}
