/*
Theme Name: Mario Valverde Digital
Theme URI: https://mariovalverde.com/
Author: Mario Valverde
Description: Tema ligero para prevención de fraudes digitales, formación y ciberinvestigación OSINT.
Version: 1.8.0
Requires at least: 6.0
Requires PHP: 8.0
Text Domain: mario-valverde-digital
*/

:root{
  --mv-navy:#06182b;
  --mv-navy-2:#0a2b4d;
  --mv-blue:#1478ff;
  --mv-blue-hover:#0865dd;
  --mv-ink:#102034;
  --mv-muted:#5f6c7b;
  --mv-line:#dfe8f1;
  --mv-soft:#f4f8fc;
  --mv-soft-blue:#edf5ff;
  --mv-white:#fff;
  --mv-radius:16px;
  --mv-shadow:0 18px 52px rgba(6,24,43,.09);
  --mv-container:1320px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:#fff;
  color:var(--mv-ink);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:17px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto}
a{color:var(--mv-blue)}
a:hover{color:var(--mv-blue-hover)}
.mv-container{
  width:min(var(--mv-container),calc(100% - 56px));
  margin-inline:auto;
}
.mv-main{min-height:65vh}
.mv-section{padding:82px 0}
.mv-section--soft{background:var(--mv-soft)}
.mv-section--compact{padding:52px 0}
.mv-narrow{max-width:860px}
.mv-center{text-align:center;margin-inline:auto}
.mv-kicker{
  margin:0 0 12px;
  color:var(--mv-blue);
  font-size:12px;
  line-height:1.2;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.1em;
}
h1,h2,h3,h4{
  margin:0 0 18px;
  color:var(--mv-ink);
  line-height:1.08;
  letter-spacing:-.035em;
}
h1{font-size:clamp(44px,5vw,72px)}
h2{font-size:clamp(32px,3.3vw,46px)}
h3{font-size:22px;letter-spacing:-.02em}
p{margin:0 0 20px;color:var(--mv-muted)}
strong{color:var(--mv-ink)}
.mv-lead{font-size:21px;line-height:1.5}
.mv-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:50px;
  padding:13px 22px;
  border:1px solid transparent;
  border-radius:7px;
  font-weight:750;
  text-decoration:none;
  transition:.18s ease;
}
.mv-btn:hover{transform:translateY(-2px);text-decoration:none}
.mv-btn--primary{background:var(--mv-blue);color:#fff}
.mv-btn--primary:hover{background:var(--mv-blue-hover);color:#fff}
.mv-btn--outline{border-color:rgba(255,255,255,.62);color:#fff;background:rgba(255,255,255,.02)}
.mv-btn--outline:hover{background:rgba(255,255,255,.10);color:#fff}
.mv-link{font-weight:750;text-decoration:none}
.mv-link:hover{text-decoration:underline}

/* Header */
.mv-header{
  position:sticky;
  top:0;
  z-index:100;
  background:rgba(6,24,43,.97);
  backdrop-filter:saturate(130%) blur(10px);
  border-bottom:1px solid rgba(255,255,255,.06);
}
.admin-bar .mv-header{top:32px}
.mv-header__inner{
  min-height:78px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:32px;
}
.mv-brand{
  color:#fff;
  text-decoration:none;
  font-weight:850;
  font-size:23px;
  letter-spacing:-.035em;
  white-space:nowrap;
}
.mv-brand span{color:#2e88ff}
.mv-nav{display:flex;align-items:center;gap:26px}
.mv-nav a{
  color:rgba(255,255,255,.87);
  text-decoration:none;
  font-size:14px;
  font-weight:650;
}
.mv-nav a:hover,.mv-nav .current-menu-item>a{color:#fff}
.mv-nav .menu-item-contacto>a{
  padding:10px 16px;
  border-radius:6px;
  background:var(--mv-blue);
  color:#fff;
}
.mv-menu-toggle{
  display:none;
  padding:7px 0;
  border:0;
  background:transparent;
  color:#fff;
  font-size:28px;
  cursor:pointer;
}

/* Hero */
.mv-hero{
  position:relative;
  isolation:isolate;
  min-height:650px;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:var(--mv-navy);
}
.mv-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  background:url("assets/images/hero-ciberinvestigacion.webp") center right/cover no-repeat;
}
.mv-hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(90deg,rgba(6,24,43,.99) 0%,rgba(6,24,43,.96) 42%,rgba(6,24,43,.66) 68%,rgba(6,24,43,.25) 100%);
}
.mv-hero__content{max-width:750px;padding:78px 0}
.mv-hero h1{color:#fff;line-height:.98}
.mv-hero h1 span{display:block;color:#2e88ff}
.mv-hero .mv-lead{color:#fff;font-weight:600}
.mv-hero p{color:rgba(255,255,255,.82)}
.mv-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}

/* Cards and grids */
.mv-grid{display:grid;gap:24px}
.mv-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.mv-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.mv-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.mv-card{
  height:100%;
  padding:30px;
  border:1px solid var(--mv-line);
  border-radius:var(--mv-radius);
  background:#fff;
  transition:.2s ease;
}
.mv-card:hover{transform:translateY(-4px);border-color:#c9d8e8;box-shadow:var(--mv-shadow)}
.mv-card__icon{
  width:48px;height:48px;
  margin-bottom:21px;
  display:grid;place-items:center;
  border-radius:50%;
  background:var(--mv-soft-blue);
  color:var(--mv-blue);
}
.mv-card__icon svg{width:24px;height:24px;stroke:currentColor}
.mv-card p:last-child{margin-bottom:0}
.mv-paths{
  display:grid;
  grid-template-columns:1.15fr 1fr 1fr;
  gap:26px;
  align-items:stretch;
}
.mv-paths__intro{padding-right:18px}
.mv-paths__intro h2{font-size:clamp(34px,3vw,42px)}

/* Diagnostic */
.mv-diagnostic{
  padding:52px 58px;
  border:1px solid #d9e8f7;
  border-radius:20px;
  background:linear-gradient(135deg,#f8fbff,#eaf4ff);
}
.mv-checks{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:5px 50px;
  margin:30px 0 32px;
}
.mv-checks ul{list-style:none;margin:0;padding:0}
.mv-checks li{
  position:relative;
  margin:0 0 11px;
  padding-left:27px;
  color:#344359;
}
.mv-checks li::before{
  content:"✓";
  position:absolute;
  left:0;
  color:var(--mv-blue);
  font-weight:900;
}

/* Services */
.mv-services{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:16px;
}
.mv-service{
  position:relative;
  min-height:285px;
  padding:27px 22px 66px;
  border:1px solid var(--mv-line);
  border-radius:13px;
  background:#fff;
  transition:.2s ease;
}
.mv-service:hover{transform:translateY(-4px);box-shadow:var(--mv-shadow)}
.mv-service__num{font-size:12px;font-weight:850;color:var(--mv-blue)}
.mv-service h3{font-size:18px;margin-top:22px}
.mv-service p{font-size:14px;line-height:1.55}
.mv-service .mv-link{position:absolute;left:22px;bottom:23px;font-size:14px}

/* Alertaphishing */
.mv-alert{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:40px;
  padding:36px 42px;
  border-radius:15px;
  background:linear-gradient(115deg,var(--mv-navy),#0c3158);
}
.mv-alert h2,.mv-alert h3{color:#fff}
.mv-alert h2{font-size:31px;margin-bottom:5px}
.mv-alert h3{font-size:19px;margin-bottom:7px}
.mv-alert p{color:rgba(255,255,255,.75);margin-bottom:0}

/* About */
.mv-about{
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:64px;
  align-items:center;
}
.mv-about__image{
  overflow:hidden;
  border-radius:20px;
  box-shadow:var(--mv-shadow);
}
.mv-about__image img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover}

/* Trust */
.mv-trust{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:30px;
  text-align:center;
}
.mv-trust strong,.mv-trust span{display:block}
.mv-trust strong{margin-bottom:6px}
.mv-trust span{font-size:14px;color:var(--mv-muted)}

/* Posts */
.mv-posts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.mv-post{
  overflow:hidden;
  border:1px solid var(--mv-line);
  border-radius:14px;
  background:#fff;
  transition:.2s ease;
}
.mv-post:hover{transform:translateY(-4px);box-shadow:var(--mv-shadow)}
.mv-post__image{display:block;aspect-ratio:16/9;background:#dce7f2;overflow:hidden}
.mv-post__image img{width:100%;height:100%;object-fit:cover}
.mv-post__body{padding:22px 23px 25px}
.mv-post__meta{font-size:12px;color:var(--mv-blue);font-weight:750;text-transform:uppercase}
.mv-post h3{font-size:20px}
.mv-post h3 a{color:var(--mv-ink);text-decoration:none}
.mv-post p{font-size:14px}

/* Interior hero */
.mv-page-hero{
  padding:84px 0 68px;
  background:linear-gradient(120deg,var(--mv-navy),var(--mv-navy-2));
}
.mv-page-hero h1{max-width:930px;color:#fff}
.mv-page-hero .mv-lead{max-width:850px;color:rgba(255,255,255,.82)}
.mv-content-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px}
.mv-feature-list{display:grid;gap:18px}
.mv-feature{
  padding:24px 26px;
  border-left:3px solid var(--mv-blue);
  background:var(--mv-soft);
}
.mv-feature h3{font-size:19px;margin-bottom:7px}
.mv-feature p{margin:0;font-size:15px}
.mv-steps{counter-reset:mvsteps;display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.mv-step{
  counter-increment:mvsteps;
  padding:28px;
  border:1px solid var(--mv-line);
  border-radius:14px;
}
.mv-step::before{
  content:"0" counter(mvsteps);
  display:block;
  margin-bottom:22px;
  color:var(--mv-blue);
  font-weight:850;
}

/* Contact */
.mv-contact{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:60px;
  align-items:start;
}
.mv-form{padding:32px;border:1px solid var(--mv-line);border-radius:16px;background:#fff}
.mv-form label{display:block;margin-bottom:7px;font-weight:700;color:var(--mv-ink)}
.mv-form input,.mv-form select,.mv-form textarea{
  width:100%;
  margin:0 0 18px;
  padding:13px 14px;
  border:1px solid #ccd8e4;
  border-radius:7px;
  background:#fff;
  color:var(--mv-ink);
  font:inherit;
}
.mv-form textarea{min-height:150px;resize:vertical}
.mv-form input:focus,.mv-form select:focus,.mv-form textarea:focus{outline:2px solid rgba(20,120,255,.18);border-color:var(--mv-blue)}
.mv-notice{margin-bottom:24px;padding:14px 16px;border-radius:7px;background:#ecf8f0;color:#176536}
.mv-notice--error{background:#fff0f0;color:#942727}
.mv-hp{position:absolute!important;left:-9999px!important;opacity:0!important}

/* CTA final */
.mv-final{
  padding:66px 0;
  background:var(--mv-navy);
}
.mv-final__inner{display:flex;align-items:center;justify-content:space-between;gap:45px}
.mv-final h2{max-width:850px;color:#fff}
.mv-final p{color:rgba(255,255,255,.7);margin-bottom:0}

/* Footer */
.mv-footer{padding:55px 0 25px;background:#041323;color:rgba(255,255,255,.75)}
.mv-footer__grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px}
.mv-footer h3{font-size:15px;color:#fff;letter-spacing:0}
.mv-footer p,.mv-footer a{font-size:14px;color:rgba(255,255,255,.72)}
.mv-footer a{text-decoration:none}
.mv-footer a:hover{color:#fff}
.mv-footer ul{list-style:none;margin:0;padding:0}
.mv-footer li{margin-bottom:7px}
.mv-footer__bottom{margin-top:40px;padding-top:20px;border-top:1px solid rgba(255,255,255,.09);font-size:13px;color:rgba(255,255,255,.5)}

/* WordPress content */
.mv-article{max-width:850px;margin-inline:auto}
.mv-article h1{font-size:clamp(42px,5vw,62px)}
.mv-article h2{margin-top:48px;font-size:34px}
.mv-article img{border-radius:12px}
.mv-pagination{margin-top:36px}

/* Responsive */
@media(max-width:1100px){
  .mv-services{grid-template-columns:repeat(3,1fr)}
  .mv-paths{grid-template-columns:1fr 1fr}
  .mv-paths__intro{grid-column:1/-1;max-width:780px}
  .mv-footer__grid{grid-template-columns:1fr 1fr}
}
@media(max-width:860px){
  .mv-menu-toggle{display:block}
  .mv-nav{
    display:none;
    position:absolute;
    top:78px;left:0;right:0;
    padding:22px 28px 28px;
    background:var(--mv-navy);
    flex-direction:column;
    align-items:flex-start;
    gap:17px;
  }
  .mv-nav.is-open{display:flex}
  .mv-hero{min-height:570px}
  .mv-hero::after{background:rgba(6,24,43,.83)}
  .mv-about,.mv-contact,.mv-content-grid{grid-template-columns:1fr}
  .mv-about__image{max-width:540px}
  .mv-posts{grid-template-columns:1fr 1fr}
  .mv-steps{grid-template-columns:1fr}
  .mv-trust{grid-template-columns:1fr 1fr}
}
@media(max-width:700px){
  .admin-bar .mv-header{top:46px}
  .mv-container{width:min(100% - 34px,var(--mv-container))}
  .mv-section{padding:56px 0}
  .mv-header__inner{min-height:70px}
  .mv-nav{top:70px}
  .mv-brand{font-size:21px}
  .mv-hero{min-height:auto}
  .mv-hero__content{padding:75px 0}
  .mv-hero h1{font-size:43px}
  .mv-actions{flex-direction:column}
  .mv-btn{width:100%}
  .mv-paths,.mv-checks,.mv-services,.mv-posts,.mv-trust{grid-template-columns:1fr}
  .mv-diagnostic{padding:36px 22px;margin-left:-17px;margin-right:-17px;border-radius:0}
  .mv-alert{display:block;padding:34px 23px;margin-left:-17px;margin-right:-17px;border-radius:0}
  .mv-alert .mv-btn{margin-top:24px}
  .mv-service{min-height:220px}
  .mv-final__inner{display:block}
  .mv-final .mv-btn{margin-top:22px}
  .mv-footer__grid{grid-template-columns:1fr}
}


/* =========================================================
   HEADER / MENÚ — CORRECCIÓN WORDPRESS
   ========================================================= */

.mv-header__inner{
  min-height:78px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:36px;
}

/* wp_nav_menu genera: nav.mv-nav > ul.menu > li > a */
.mv-nav{
  margin-left:auto;
  display:block;
}

.mv-nav > ul{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:24px;
  margin:0;
  padding:0;
  list-style:none;
}

.mv-nav > ul > li{
  margin:0;
  padding:0;
  list-style:none;
}

.mv-nav > ul > li > a{
  display:block;
  padding:29px 0 27px;
  color:rgba(255,255,255,.87);
  font-size:14px;
  line-height:1.2;
  font-weight:650;
  text-decoration:none;
  white-space:nowrap;
}

.mv-nav > ul > li > a:hover,
.mv-nav > ul > li.current-menu-item > a,
.mv-nav > ul > li.current_page_item > a{
  color:#fff;
}

.mv-nav > ul > li.menu-item-contacto > a{
  padding:11px 17px;
  border-radius:6px;
  background:var(--mv-blue);
  color:#fff;
}

.mv-nav > ul > li.menu-item-contacto > a:hover{
  background:var(--mv-blue-hover);
  color:#fff;
}

/* Evitar estilos de listas heredados */
.mv-nav ul,
.mv-nav li{
  list-style:none;
}

/* HERO: asegurar imagen y posición */
.mv-hero::before{
  background-image:url("assets/images/hero-ciberinvestigacion.webp") !important;
  background-position:center right !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
  opacity:1;
}

/* Mantener un buen contraste sobre la imagen */
.mv-hero::after{
  background:
    linear-gradient(
      90deg,
      rgba(6,24,43,.99) 0%,
      rgba(6,24,43,.96) 40%,
      rgba(6,24,43,.76) 62%,
      rgba(6,24,43,.32) 100%
    ) !important;
}

/* Responsive del menú real de WordPress */
@media(max-width:1100px){
  .mv-nav > ul{
    gap:16px;
  }

  .mv-nav > ul > li > a{
    font-size:13px;
  }
}

@media(max-width:860px){
  .mv-nav{
    display:none;
    position:absolute;
    top:78px;
    left:0;
    right:0;
    margin:0;
    padding:20px 28px 28px;
    background:var(--mv-navy);
    border-top:1px solid rgba(255,255,255,.06);
  }

  .mv-nav.is-open{
    display:block;
  }

  .mv-nav > ul{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:0;
  }

  .mv-nav > ul > li > a{
    padding:13px 0;
    font-size:15px;
  }

  .mv-nav > ul > li.menu-item-contacto > a{
    display:inline-block;
    margin-top:8px;
    padding:11px 17px;
  }
}

@media(max-width:700px){
  .mv-nav{
    top:70px;
  }

  .mv-hero::before{
    background-position:68% center !important;
  }
}


/* =========================================================
   V1.2 — CONTENIDO EDITABLE DE PÁGINAS
   ========================================================= */

.mv-editable-content{
  max-width:980px;
  margin-inline:auto;
}

.mv-editable-content > *:first-child{
  margin-top:0;
}

.mv-editable-content h2{
  margin-top:54px;
}

.mv-editable-content h3{
  margin-top:34px;
}

.mv-editable-content p,
.mv-editable-content li{
  font-size:17px;
  line-height:1.72;
}

.mv-editable-content ul,
.mv-editable-content ol{
  margin:0 0 28px;
  padding-left:24px;
  color:var(--mv-muted);
}

.mv-editable-content li{
  margin-bottom:8px;
}

.mv-editable-content .wp-block-columns{
  gap:34px;
  margin:38px 0;
}

.mv-editable-content .wp-block-column{
  padding:28px;
  border:1px solid var(--mv-line);
  border-radius:14px;
  background:#fff;
}

.mv-editable-content .wp-block-column h2,
.mv-editable-content .wp-block-column h3{
  margin-top:0;
}

.mv-editable-content .wp-block-group{
  margin:36px 0;
  padding:30px;
  border-radius:14px;
  background:var(--mv-soft);
}

.mv-editable-content .wp-block-group h2,
.mv-editable-content .wp-block-group h3{
  margin-top:0;
}

.mv-editable-content .wp-block-buttons{
  margin-top:28px;
}

.mv-editable-content .wp-block-button__link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:50px;
  padding:13px 22px;
  border-radius:7px;
  background:var(--mv-blue);
  color:#fff;
  font-weight:750;
  text-decoration:none;
}

.mv-editable-content .wp-block-button__link:hover{
  background:var(--mv-blue-hover);
  color:#fff;
}

/* reCAPTCHA */
.mv-recaptcha{
  margin:4px 0 20px;
}

.mv-recaptcha-note{
  margin:0 0 18px;
  padding:12px 14px;
  border-radius:7px;
  background:#fff7df;
  color:#705514;
  font-size:13px;
}

@media(max-width:700px){
  .mv-editable-content .wp-block-columns{
    display:block;
  }

  .mv-editable-content .wp-block-column{
    margin-bottom:18px;
  }

  .g-recaptcha{
    transform:scale(.90);
    transform-origin:0 0;
  }
}


/* =========================================================
   V1.3 — TODAS LAS PÁGINAS EDITABLES CON GUTENBERG
   ========================================================= */

/* El contenido de la Home ocupa todo el ancho; cada sección controla
   internamente su propio contenedor. */
.mv-home-editable{
  width:100%;
}

.mv-home-editable > .wp-block-group{
  margin-top:0;
  margin-bottom:0;
}

/* HERO EDITABLE */
.mv-home-hero{
  position:relative;
  isolation:isolate;
  min-height:650px;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:var(--mv-navy);
  color:#fff;
}

.mv-home-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  background:url("assets/images/hero-ciberinvestigacion.webp") center right/cover no-repeat;
}

.mv-home-hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(
    90deg,
    rgba(6,24,43,.99) 0%,
    rgba(6,24,43,.96) 40%,
    rgba(6,24,43,.76) 62%,
    rgba(6,24,43,.32) 100%
  );
}

.mv-home-hero > .wp-block-group__inner-container{
  width:min(var(--mv-container),calc(100% - 56px));
  margin-inline:auto;
  padding:78px 0;
}

.mv-home-hero .wp-block-heading{
  max-width:760px;
  color:#fff;
  font-size:clamp(44px,5vw,72px);
  line-height:.98;
  letter-spacing:-.05em;
}

.mv-home-hero .mv-blue-text{
  color:#2e88ff;
}

.mv-home-hero p{
  max-width:700px;
  color:rgba(255,255,255,.82);
}

.mv-home-hero .mv-home-claim{
  color:#fff;
  font-size:21px;
  line-height:1.5;
  font-weight:600;
}

.mv-home-hero .wp-block-buttons{
  gap:12px;
  margin-top:30px;
}

.mv-home-hero .wp-block-button__link{
  min-height:50px;
  padding:13px 22px;
  border-radius:7px;
  background:var(--mv-blue);
  color:#fff;
  font-weight:750;
  text-decoration:none;
}

.mv-home-hero .is-style-outline .wp-block-button__link{
  border:1px solid rgba(255,255,255,.62);
  background:transparent;
  color:#fff;
}

/* SECCIONES HOME */
.mv-home-section{
  padding:82px 0;
}

.mv-home-section > .wp-block-group__inner-container{
  width:min(var(--mv-container),calc(100% - 56px));
  margin-inline:auto;
}

.mv-home-section-soft{
  background:var(--mv-soft);
}

.mv-home-section .wp-block-heading{
  color:var(--mv-ink);
}

/* PREVENIR / INVESTIGAR */
.mv-home-paths .wp-block-columns{
  display:grid;
  grid-template-columns:1.15fr 1fr 1fr;
  gap:26px;
  align-items:stretch;
  margin:0;
}

.mv-home-paths .wp-block-column{
  min-width:0;
}

.mv-home-paths .mv-home-path-intro{
  padding-right:18px;
}

.mv-home-paths .mv-home-path-intro h2{
  font-size:clamp(34px,3vw,42px);
}

.mv-home-card{
  height:100%;
  padding:30px;
  border:1px solid var(--mv-line);
  border-radius:var(--mv-radius);
  background:#fff;
  transition:.2s ease;
}

.mv-home-card:hover{
  transform:translateY(-4px);
  border-color:#c9d8e8;
  box-shadow:var(--mv-shadow);
}

.mv-home-card h3{
  margin-top:0;
}

/* DIAGNÓSTICO HOME */
.mv-home-diagnostic-box{
  padding:52px 58px;
  border:1px solid #d9e8f7;
  border-radius:20px;
  background:linear-gradient(135deg,#f8fbff,#eaf4ff);
}

.mv-home-diagnostic-box .wp-block-columns{
  gap:50px;
}

.mv-home-diagnostic-box ul{
  margin-bottom:28px;
}

/* SERVICIOS HOME */
.mv-home-services .wp-block-columns{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:16px;
  margin:0;
}

.mv-home-service{
  position:relative;
  min-height:285px;
  padding:27px 22px 66px;
  border:1px solid var(--mv-line);
  border-radius:13px;
  background:#fff;
}

.mv-home-service h3{
  font-size:18px;
}

.mv-home-service p{
  font-size:14px;
  line-height:1.55;
}

/* ALERTAPHISHING HOME */
.mv-home-alert{
  padding:36px 42px;
  border-radius:15px;
  background:linear-gradient(115deg,var(--mv-navy),#0c3158);
  color:#fff;
}

.mv-home-alert .wp-block-columns{
  margin:0;
  align-items:center;
}

.mv-home-alert h2,
.mv-home-alert h3{
  color:#fff;
}

.mv-home-alert p{
  color:rgba(255,255,255,.75);
}

/* SOBRE MI HOME */
.mv-home-about .wp-block-columns{
  align-items:center;
  gap:64px;
}

.mv-home-about img{
  border-radius:20px;
  box-shadow:var(--mv-shadow);
}

/* CONFIANZA HOME */
.mv-home-trust .wp-block-columns{
  gap:30px;
  text-align:center;
}

.mv-home-trust p{
  font-size:14px;
}

/* CTA FINAL HOME */
.mv-home-final{
  padding:66px 0;
  background:var(--mv-navy);
}

.mv-home-final > .wp-block-group__inner-container{
  width:min(var(--mv-container),calc(100% - 56px));
  margin-inline:auto;
}

.mv-home-final .wp-block-columns{
  margin:0;
  align-items:center;
}

.mv-home-final h2{
  color:#fff;
}

.mv-home-final p{
  color:rgba(255,255,255,.7);
}

/* PÁGINAS INTERIORES EDITABLES */
.mv-page-editable-hero{
  padding:84px 0 68px;
  background:linear-gradient(120deg,var(--mv-navy),var(--mv-navy-2));
}

.mv-page-editable-hero h1{
  max-width:930px;
  color:#fff;
}

.mv-page-editable-hero .mv-lead{
  max-width:850px;
  color:rgba(255,255,255,.82);
}

/* Casos: introducción editable */
.mv-cases-intro{
  padding:70px 0 26px;
}

.mv-cases-intro .mv-editable-content{
  max-width:1000px;
}

/* Contacto: intro totalmente editable */
.mv-contact-copy .mv-editable-content{
  max-width:none;
}

/* Editor: mejora la aproximación visual en Gutenberg */
.editor-styles-wrapper{
  color:var(--mv-ink);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

/* RESPONSIVE HOME EDITABLE */
@media(max-width:1100px){
  .mv-home-services .wp-block-columns{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .mv-home-paths .wp-block-columns{
    grid-template-columns:1fr 1fr;
  }

  .mv-home-paths .mv-home-path-intro{
    grid-column:1/-1;
  }
}

@media(max-width:860px){
  .mv-home-hero::after{
    background:rgba(6,24,43,.84);
  }

  .mv-home-about .wp-block-columns{
    display:block;
  }
}

@media(max-width:700px){
  .mv-home-hero{
    min-height:auto;
  }

  .mv-home-hero > .wp-block-group__inner-container,
  .mv-home-section > .wp-block-group__inner-container,
  .mv-home-final > .wp-block-group__inner-container{
    width:min(100% - 34px,var(--mv-container));
  }

  .mv-home-hero > .wp-block-group__inner-container{
    padding:74px 0;
  }

  .mv-home-section{
    padding:56px 0;
  }

  .mv-home-paths .wp-block-columns,
  .mv-home-services .wp-block-columns{
    display:block;
  }

  .mv-home-paths .wp-block-column,
  .mv-home-services .wp-block-column{
    margin-bottom:18px;
  }

  .mv-home-diagnostic-box{
    margin-left:-17px;
    margin-right:-17px;
    padding:36px 22px;
    border-radius:0;
  }

  .mv-home-alert{
    margin-left:-17px;
    margin-right:-17px;
    padding:34px 23px;
    border-radius:0;
  }

  .mv-home-final .wp-block-columns{
    display:block;
  }
}


/* =========================================================
   V1.4 — CONTACTO SIN FORMULARIO + ALERTAPHISHING LOGO
   ========================================================= */
.mv-home-alert .wp-block-image{
  margin:0 0 14px;
}

.mv-home-alert .wp-block-image img{
  width:auto;
  max-width:220px;
  height:auto;
}

.mv-contact-direct .wp-block-columns{
  gap:24px;
  margin:28px 0 34px;
}

.mv-contact-direct .wp-block-column{
  padding:28px;
  border:1px solid var(--mv-line);
  border-radius:14px;
  background:#fff;
}

.mv-contact-direct .wp-block-column h3{
  margin-top:0;
}

.mv-contact-direct .wp-block-button__link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:50px;
  padding:13px 22px;
  border-radius:7px;
  background:var(--mv-blue);
  color:#fff;
  text-decoration:none;
  font-weight:750;
}

.mv-contact-direct .wp-block-button__link:hover{
  background:var(--mv-blue-hover);
  color:#fff;
}

.mv-legal-page h2,
.mv-legal-page h3{
  margin-top:42px;
}

.mv-legal-page p,
.mv-legal-page li{
  font-size:16px;
  line-height:1.72;
}


/* =========================================================
   V1.5 — CONTACTO, LEGALES Y SEO VISUAL
   ========================================================= */
.mv-contact-direct{
  max-width:1050px;
}

.mv-contact-direct > p:first-child{
  max-width:820px;
  font-size:20px;
  line-height:1.55;
}

.mv-contact-direct .mv-contact-cards{
  margin:34px 0 42px;
  gap:24px;
}

.mv-contact-direct .mv-contact-card{
  position:relative;
  padding:32px;
  border:1px solid var(--mv-line);
  border-radius:16px;
  background:#fff;
  box-shadow:0 12px 34px rgba(6,24,43,.05);
}

.mv-contact-direct .mv-contact-card::before{
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  margin-bottom:20px;
  border-radius:50%;
  background:var(--mv-soft-blue);
  color:var(--mv-blue);
  font-size:22px;
  font-weight:800;
}

.mv-contact-direct .mv-contact-card--email::before{
  content:"@";
}

.mv-contact-direct .mv-contact-card--whatsapp::before{
  content:"W";
}

.mv-contact-direct .mv-contact-card h3{
  margin:0 0 10px;
  font-size:24px;
}

.mv-contact-direct .mv-contact-card p{
  margin-bottom:18px;
}

.mv-contact-direct .mv-contact-card .wp-block-button__link{
  width:auto;
}

.mv-contact-privacy{
  margin-top:24px !important;
  padding:28px 30px !important;
  border:1px solid #d9e8f7;
  border-radius:14px !important;
  background:linear-gradient(135deg,#f8fbff,#eef6ff) !important;
}

.mv-contact-privacy h3{
  margin-top:0 !important;
}

.mv-legal-page{
  max-width:930px;
}

.mv-legal-page > p:first-child{
  font-size:18px;
  line-height:1.65;
}

.mv-legal-page h2{
  padding-top:8px;
  border-top:1px solid var(--mv-line);
}

.mv-legal-page a{
  overflow-wrap:anywhere;
}

/* Alertaphishing: logo más integrado */
.mv-home-alert .wp-block-image img{
  max-width:245px;
  filter:drop-shadow(0 8px 18px rgba(0,0,0,.16));
}

/* Evitar un segundo gran bloque de artículos en la home: la página Casos queda independiente */
.mv-home-editable + .mv-section--soft{
  display:none;
}

@media(max-width:700px){
  .mv-contact-direct .mv-contact-card{
    padding:26px 22px;
  }

  .mv-contact-privacy{
    padding:24px 22px !important;
  }
}


/* =========================================================
   V1.6 — RESTAURACIÓN DE LA LÍNEA GRÁFICA ORIGINAL
   ========================================================= */

/* ---------------------------------------------------------
   BOTONES — azul, radio corto y aspecto de la primera versión
   --------------------------------------------------------- */

.mv-home-editable .wp-block-button__link,
.mv-home-final .wp-block-button__link,
.mv-home-alert .wp-block-button__link,
.mv-home-diagnostic-box .wp-block-button__link,
.mv-contact-direct .wp-block-button__link {
  min-height: 50px !important;
  padding: 13px 22px !important;
  border: 1px solid var(--mv-blue) !important;
  border-radius: 7px !important;
  background: var(--mv-blue) !important;
  color: #fff !important;
  font-size: 15px !important;
  line-height: 1.2 !important;
  font-weight: 750 !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

.mv-home-editable .wp-block-button__link:hover,
.mv-home-final .wp-block-button__link:hover,
.mv-home-alert .wp-block-button__link:hover,
.mv-home-diagnostic-box .wp-block-button__link:hover,
.mv-contact-direct .wp-block-button__link:hover {
  background: var(--mv-blue-hover) !important;
  border-color: var(--mv-blue-hover) !important;
  color: #fff !important;
}

/* Segundo botón del Hero: conserva el estilo outline */
.mv-home-hero .is-style-outline .wp-block-button__link {
  background: transparent !important;
  border: 1px solid rgba(255,255,255,.68) !important;
  color: #fff !important;
  border-radius: 7px !important;
}

.mv-home-hero .is-style-outline .wp-block-button__link:hover {
  background: rgba(255,255,255,.10) !important;
  border-color: #fff !important;
}

/* ---------------------------------------------------------
   ANTES / DESPUÉS DEL INCIDENTE — recuperar iconos
   --------------------------------------------------------- */

.mv-home-paths .mv-home-card {
  position: relative;
}

.mv-home-paths .wp-block-columns > .mv-home-card::before {
  content: "";
  display: block;
  width: 42px;
  height: 42px;
  margin: 0 0 21px;
  border-radius: 50%;
  background-color: var(--mv-soft-blue);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 22px 22px;
}

/* Escudo — Antes del incidente */
.mv-home-paths .wp-block-columns > .mv-home-card:nth-child(2)::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231478ff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v5c0 5-3.5 8.5-7 10-3.5-1.5-7-5-7-10V6l7-3z'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E");
}

/* Lupa — Después del incidente */
.mv-home-paths .wp-block-columns > .mv-home-card:nth-child(3)::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231478ff' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='5.5'/%3E%3Cpath d='M15 15l5 5'/%3E%3C/svg%3E");
}

/* ---------------------------------------------------------
   DIAGNÓSTICO — checks azules y botón original
   --------------------------------------------------------- */

.mv-home-diagnostic-box ul {
  list-style: none !important;
  padding-left: 0 !important;
  margin-left: 0 !important;
}

.mv-home-diagnostic-box li {
  position: relative;
  padding-left: 27px !important;
  margin-bottom: 10px;
}

.mv-home-diagnostic-box li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--mv-blue);
  font-weight: 900;
}

/* ---------------------------------------------------------
   SERVICIOS — recuperar numeración 01–05
   --------------------------------------------------------- */

.mv-home-services .wp-block-columns {
  counter-reset: mvservice;
}

.mv-home-services .mv-home-service {
  counter-increment: mvservice;
}

.mv-home-services .mv-home-service::before {
  content: "0" counter(mvservice);
  display: block;
  margin: 0 0 22px;
  color: var(--mv-blue);
  font-size: 12px;
  line-height: 1;
  font-weight: 850;
  letter-spacing: .02em;
}

.mv-home-services .mv-home-service h3 {
  margin-top: 0 !important;
}

/* ---------------------------------------------------------
   ALERTAPHISHING — recuperar composición horizontal inicial
   conservando el logo pedido posteriormente
   --------------------------------------------------------- */

.mv-home-alert {
  position: relative;
  padding: 29px 34px !important;
  border-radius: 14px !important;
  background: linear-gradient(115deg,var(--mv-navy),#0c3158) !important;
}

.mv-home-alert .wp-block-columns {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) auto !important;
  gap: 34px !important;
  align-items: center !important;
}

.mv-home-alert .wp-block-columns > .wp-block-column {
  flex-basis: auto !important;
}

.mv-home-alert .wp-block-columns > .wp-block-column:first-child {
  position: relative;
  min-height: 88px;
  padding-left: 172px;
}

.mv-home-alert .wp-block-image {
  position: absolute;
  left: 0;
  top: 50%;
  width: 145px;
  margin: 0 !important;
  transform: translateY(-50%);
}

.mv-home-alert .wp-block-image img {
  display: block;
  width: 145px !important;
  max-width: 145px !important;
  height: auto !important;
}

.mv-home-alert .mv-kicker {
  margin-bottom: 3px !important;
  color: #77b4ff !important;
}

.mv-home-alert h2 {
  margin: 0 0 1px !important;
  color: #fff !important;
  font-size: 25px !important;
  line-height: 1.08 !important;
  letter-spacing: -.025em !important;
}

.mv-home-alert h3 {
  margin: 0 0 4px !important;
  color: #fff !important;
  font-size: 16px !important;
  line-height: 1.25 !important;
  letter-spacing: -.01em !important;
}

.mv-home-alert p:not(.mv-kicker) {
  margin-bottom: 0 !important;
  color: rgba(255,255,255,.78) !important;
  font-size: 14px !important;
}

.mv-home-alert .wp-block-buttons {
  justify-content: flex-end;
  margin: 0 !important;
}

/* ---------------------------------------------------------
   CTA FINAL — botón azul como en la primera versión
   --------------------------------------------------------- */

.mv-home-final .wp-block-buttons {
  justify-content: flex-end;
}

/* ---------------------------------------------------------
   Responsive
   --------------------------------------------------------- */

@media (max-width: 860px) {
  .mv-home-alert .wp-block-columns {
    display: block !important;
  }

  .mv-home-alert .wp-block-columns > .wp-block-column:first-child {
    padding-left: 155px;
  }

  .mv-home-alert .wp-block-buttons {
    justify-content: flex-start;
    margin-top: 22px !important;
  }
}

@media (max-width: 700px) {
  .mv-home-alert {
    padding: 32px 22px !important;
  }

  .mv-home-alert .wp-block-columns > .wp-block-column:first-child {
    min-height: 0;
    padding-left: 0;
  }

  .mv-home-alert .wp-block-image {
    position: static;
    width: 135px;
    margin: 0 0 18px !important;
    transform: none;
  }

  .mv-home-alert .wp-block-image img {
    width: 135px !important;
    max-width: 135px !important;
  }

  .mv-home-alert .wp-block-button__link,
  .mv-home-final .wp-block-button__link {
    width: 100%;
  }
}


/* =========================================================
   V1.7 — BENEFICIOS, MÉTRICAS Y LOGO EDITABLE
   ========================================================= */

/* Logo del header/footer. Si se configura un logo en
   Apariencia > Personalizar > Identidad del sitio, sustituye al incluido. */
.mv-brand-logo,
.custom-logo-link{
  display:inline-flex;
  align-items:center;
  line-height:1;
  text-decoration:none;
}

.mv-header .mv-brand-logo img,
.mv-header .custom-logo{
  display:block;
  width:180px;
  max-width:180px;
  height:auto;
  max-height:34px;
  object-fit:contain;
}

.mv-footer .mv-brand-logo img,
.mv-footer .custom-logo{
  display:block;
  width:170px;
  max-width:170px;
  height:auto;
  max-height:32px;
  object-fit:contain;
}

/* El bloque azul claro mantiene el diseño existente,
   pero ahora presenta beneficios concretos. */
.mv-home-benefits-box .wp-block-columns{
  gap:50px;
}

.mv-home-benefits-box ul{
  list-style:none !important;
  margin-left:0 !important;
  padding-left:0 !important;
}

.mv-home-benefits-box li{
  position:relative;
  margin-bottom:13px;
  padding-left:28px !important;
}

.mv-home-benefits-box li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  color:var(--mv-blue);
  font-weight:900;
}

/* Métricas: misma sección limpia de la Home, pero con datos concretos. */
.mv-home-trust .mv-home-stat{
  text-align:center;
}

.mv-home-trust .mv-home-stat strong{
  display:block;
  margin-bottom:5px;
  color:var(--mv-ink);
  font-size:clamp(30px,3vw,42px);
  line-height:1;
  font-weight:500;
  letter-spacing:-.045em;
}

.mv-home-trust .mv-home-stat span{
  display:block;
  color:var(--mv-muted);
  font-size:14px;
}

@media(max-width:860px){
  .mv-header .mv-brand-logo img,
  .mv-header .custom-logo{
    width:160px;
    max-width:160px;
  }
}

@media(max-width:700px){
  .mv-header .mv-brand-logo img,
  .mv-header .custom-logo{
    width:145px;
    max-width:145px;
  }

  .mv-home-trust .mv-home-stat{
    margin-bottom:24px;
  }
}


/* =========================================================
   V1.8 — AJUSTES HOME
   ========================================================= */

/* ¿Hablamos? en azul, sin verse afectado por la regla genérica de párrafos */
.mv-home-final .mv-kicker{
  color:var(--mv-blue) !important;
}

/* Centrar el botón Contactar en su columna */
.mv-home-final .wp-block-column:last-child{
  display:flex;
  align-items:center;
  justify-content:center;
}

.mv-home-final .wp-block-buttons{
  width:100%;
  justify-content:center !important;
  align-items:center;
  margin:0 !important;
}

/* Últimas entradas en Home */
.mv-home-blog{
  padding:82px 0;
  background:var(--mv-soft);
}

.mv-home-blog__head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:35px;
  margin-bottom:34px;
}

.mv-home-blog__head > div{
  max-width:760px;
}

.mv-home-blog__head p:last-child{
  margin-bottom:0;
}

@media(max-width:700px){
  .mv-home-final .wp-block-column:last-child{
    display:block;
  }

  .mv-home-final .wp-block-buttons{
    justify-content:flex-start !important;
    margin-top:24px !important;
  }

  .mv-home-blog__head{
    display:block;
  }

  .mv-home-blog__head .mv-link{
    display:inline-block;
    margin-top:6px;
  }
}
