:root{
–rep-green:#93F1C9;–rep-forest:#1E2F23;–rep-teal:#41999F;–rep-sun:#F7D450;
–rep-mint:#92F1CB;–rep-white:#FFFFFF;–rep-bg-light:#F7FBF9;
–rep-text-secondary:#3B4B45;–rep-text-tertiary:#547065;–rep-text-muted:#6B7D76;
–rep-border:#E6F3EF;
–rep-shadow-sm:0 1px 2px 0 rgba(30,47,35,.05);
–rep-shadow-md:0 4px 6px -1px rgba(30,47,35,.10),0 2px 4px -1px rgba(30,47,35,.06);
–rep-shadow-lg:0 10px 15px -3px rgba(30,47,35,.10),0 4px 6px -2px rgba(30,47,35,.05);
–rep-font-display:’Sora’,system-ui,-apple-system,sans-serif;
–rep-font-body:’Inter’,system-ui,-apple-system,sans-serif;
–rep-radius-sm:8px;–rep-radius-md:12px;–rep-radius-lg:16px;
–rep-radius-xl:24px;–rep-radius-full:999px;
}
/* ===== BASE ===== */
.mig-landing{font-family:var(–rep-font-body);color:var(–rep-forest);line-height:1.6;}
.mig-landing *{box-sizing:border-box;}
.mig-landing .wrap{max-width:1140px;margin:0 auto;padding:0 24px;}
.mig-landing h1,.mig-landing h2,.mig-landing h3{font-family:var(–rep-font-display);font-weight:700;margin:0 0 16px;}
.mig-landing h1{font-size:clamp(2rem,5vw,3rem);line-height:1.15;}
.mig-landing h2{font-size:clamp(1.5rem,3.5vw,2.25rem);line-height:1.2;}
.mig-landing h3{font-size:1.15rem;line-height:1.35;}
.mig-landing p{margin:0 0 16px;}
/* Kicker badges */
.mig-landing .kicker{
display:inline-flex;align-items:center;gap:6px;
padding:6px 14px;border-radius:var(–rep-radius-full);
background:rgba(65,153,159,.08);color:var(–rep-teal);
font:600 .75rem/1 var(–rep-font-body);text-transform:uppercase;letter-spacing:.04em;
margin-bottom:16px;
}
.mig-landing .kicker–light{background:rgba(255,255,255,.1);color:var(–rep-green);}
/* Buttons */
.mig-landing .btn{
display:inline-flex;align-items:center;gap:8px;
padding:14px 28px;border-radius:var(–rep-radius-full);
font:600 .95rem/1 var(–rep-font-body);text-decoration:none;
transition:all .2s;cursor:pointer;border:none;
}
.mig-landing .btn-primary{background:var(–rep-teal);color:#fff;}
.mig-landing .btn-primary:hover{background:#378488;transform:translateY(-2px);box-shadow:var(–rep-shadow-md);}
.mig-landing .btn-ghost{background:transparent;border:1.5px solid rgba(255,255,255,.25);color:#fff;}
.mig-landing .btn-ghost:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.4);}
.mig-landing .btn-outline{background:transparent;border:1.5px solid var(–rep-border);color:var(–rep-forest);}
.mig-landing .btn-outline:hover{border-color:var(–rep-teal);color:var(–rep-teal);}
/* Reveal animations */
.mig-landing .reveal{opacity:0;transform:translateY(24px);transition:opacity .5s ease,transform .5s ease;}
.mig-landing .reveal.is-visible{opacity:1;transform:none;}
.mig-landing .reveal[data-delay=»1″]{transition-delay:.1s;}
.mig-landing .reveal[data-delay=»2″]{transition-delay:.2s;}
.mig-landing .reveal[data-delay=»3″]{transition-delay:.3s;}
.mig-landing .reveal[data-delay=»4″]{transition-delay:.4s;}
/* ===== 1. HERO ===== */
.mig-hero{
padding:80px 0 64px;
background:linear-gradient(180deg,#0D1B12 0%,#1E2F23 100%);
position:relative;overflow:hidden;
}
.mig-hero::before{
content:»»;position:absolute;inset:0;
background:
radial-gradient(ellipse 60% 50% at 70% 30%,rgba(65,153,159,.12) 0%,transparent 60%),
radial-gradient(ellipse 40% 40% at 20% 80%,rgba(147,241,201,.06) 0%,transparent 60%);
pointer-events:none;
}
.mig-hero .wrap{position:relative;z-index:1;}
.mig-hero-grid{display:grid;grid-template-columns:1fr 380px;gap:48px;align-items:center;}
.mig-hero-content{max-width:600px;}
.mig-hero h1{color:#fff;margin-bottom:16px;font-size:clamp(1.75rem,4vw,2.5rem);}
.mig-hero h1 span{color:var(–rep-green);}
.mig-hero .lead{font-size:1.05rem;line-height:1.7;color:rgba(255,255,255,.6);margin-bottom:28px;}
.mig-hero-btns{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:28px;}
.mig-hero-btns .btn{padding:12px 24px;font-size:.9rem;}
.mig-hero-trust{display:flex;gap:20px;flex-wrap:wrap;font-size:.8rem;color:rgba(255,255,255,.35);}
.mig-hero-trust span{display:flex;align-items:center;gap:5px;}
.mig-hero-trust i{color:var(–rep-green);font-size:14px;}
/* Hero visual card */
.mig-hero-visual{
background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);
border-radius:var(–rep-radius-xl);padding:24px;
}
.mig-hero-visual-title{
font:600 .7rem/1 var(–rep-font-body);text-transform:uppercase;letter-spacing:.06em;
color:rgba(255,255,255,.35);margin-bottom:16px;display:flex;align-items:center;gap:6px;
}
.mig-hero-visual-title i{color:var(–rep-teal);}
.mig-hero-steps{display:flex;flex-direction:column;gap:10px;}
.mig-hero-step{
display:flex;align-items:center;gap:12px;
padding:12px 14px;border-radius:var(–rep-radius-md);
background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);
transition:all .2s;
}
.mig-hero-step:hover{background:rgba(65,153,159,.08);border-color:rgba(65,153,159,.2);}
.mig-hero-step-icon{
width:32px;height:32px;border-radius:8px;flex-shrink:0;
background:rgba(65,153,159,.15);display:flex;align-items:center;justify-content:center;
font-size:16px;color:var(–rep-green);
}
.mig-hero-step-text{font-size:.85rem;color:rgba(255,255,255,.7);line-height:1.4;}
.mig-hero-step-text strong{color:#fff;font-weight:600;}
.mig-hero-badge{
margin-top:16px;text-align:center;padding:10px;
border-radius:var(–rep-radius-md);background:rgba(147,241,201,.08);
font:600 .75rem/1 var(–rep-font-body);color:var(–rep-green);
display:flex;align-items:center;justify-content:center;gap:6px;
}
/* ===== 2. PROCESO (HowTo) ===== */
.mig-process{padding:88px 0;background:#fff;}
.mig-process-head{text-align:center;margin-bottom:56px;}
.mig-process-head p{color:var(–rep-text-muted);max-width:540px;margin:0 auto;}
.mig-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
.mig-step{
position:relative;padding:32px 24px;
background:var(–rep-bg-light);border-radius:var(–rep-radius-xl);
border:1px solid var(–rep-border);
text-align:center;
}
.mig-step-num{
position:absolute;top:-14px;left:50%;transform:translateX(-50%);
width:28px;height:28px;border-radius:50%;
background:var(–rep-teal);color:#fff;
font:700 .8rem/28px var(–rep-font-body);
box-shadow:0 2px 8px rgba(65,153,159,.25);
}
.mig-step-icon{
width:56px;height:56px;margin:12px auto 16px;
border-radius:var(–rep-radius-lg);background:#fff;
display:flex;align-items:center;justify-content:center;
font-size:28px;color:var(–rep-teal);
border:1px solid var(–rep-border);
}
.mig-step h3{margin-bottom:8px;}
.mig-step p{font-size:.88rem;color:var(–rep-text-muted);margin:0;}
/* ===== 3. BENEFICIOS ===== */
.mig-benefits{padding:88px 0;background:var(–rep-bg-light);}
.mig-benefits-head{text-align:center;margin-bottom:52px;}
.mig-benefits-head p{color:var(–rep-text-muted);max-width:560px;margin:0 auto;}
.mig-benefits-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.mig-benefit{
background:#fff;border:1px solid var(–rep-border);border-radius:var(–rep-radius-xl);
padding:28px;transition:all .25s;
}
.mig-benefit:hover{box-shadow:var(–rep-shadow-lg);transform:translateY(-4px);border-color:rgba(65,153,159,.2);}
.mig-benefit-icon{
width:48px;height:48px;border-radius:var(–rep-radius-md);
background:rgba(65,153,159,.08);display:flex;align-items:center;justify-content:center;
font-size:24px;color:var(–rep-teal);margin-bottom:16px;
}
.mig-benefit h3{margin-bottom:8px;font-size:1.05rem;}
.mig-benefit p{font-size:.88rem;color:var(–rep-text-muted);line-height:1.7;margin:0;}
/* ===== 4. PRECIOS (placeholder para shortcode) ===== */
.mig-pricing{padding:88px 0;background:#fff;}
.mig-pricing-head{text-align:center;margin-bottom:48px;}
.mig-pricing-head p{color:var(–rep-text-muted);max-width:560px;margin:0 auto;}
.mig-pricing-note{
text-align:center;margin-top:32px;padding:20px;
background:var(–rep-bg-light);border-radius:var(–rep-radius-lg);
font-size:.9rem;color:var(–rep-text-secondary);
}
.mig-pricing-note strong{color:var(–rep-forest);}
.mig-pricing-note i{color:var(–rep-teal);margin-right:6px;}
/* ===== 5. COMPARATIVA ===== */
.mig-compare{padding:88px 0;background:var(–rep-bg-light);}
.mig-compare-head{text-align:center;margin-bottom:52px;}
.mig-compare-head p{color:var(–rep-text-muted);max-width:540px;margin:0 auto;}
.mig-compare-table{
width:100%;max-width:900px;margin:0 auto;
border-radius:var(–rep-radius-xl);overflow:hidden;
border:1px solid var(–rep-border);background:#fff;
box-shadow:var(–rep-shadow-sm);
}
.mig-compare-table thead th{
padding:18px 20px;font:600 .8rem/1 var(–rep-font-body);
text-transform:uppercase;letter-spacing:.07em;text-align:left;
}
.mig-compare-table thead th:first-child{color:var(–rep-text-muted);background:#fafafa;width:45%;}
.mig-compare-table thead th:nth-child(2){background:#fef9ef;color:#6C5E1A;border-left:1px solid #e8e0c8;text-align:center;}
.mig-compare-table thead th:nth-child(3){background:rgba(65,153,159,.08);color:var(–rep-teal);border-left:1px solid rgba(65,153,159,.15);text-align:center;}
.mig-compare-table tbody tr:not(:last-child){border-bottom:1px solid var(–rep-border);}
.mig-compare-table tbody tr:hover td{background-color:rgba(147,241,201,.03);}
.mig-compare-table tbody td{padding:14px 20px;font-size:.87rem;color:var(–rep-text-secondary);}
.mig-compare-table tbody td:first-child{font-weight:500;color:var(–rep-forest);}
.mig-compare-table tbody td:nth-child(2){background:#fffdf5;border-left:1px solid #e8e0c8;text-align:center;color:#7A6A2A;}
.mig-compare-table tbody td:nth-child(3){background:rgba(65,153,159,.02);border-left:1px solid rgba(65,153,159,.12);text-align:center;font-weight:600;color:var(–rep-teal);}
.cell-yes{color:#1a854a!important;font-weight:600!important;}
.cell-no{color:#b0443a!important;}
.cell-partial{color:#92660a!important;}
/* ===== 6. FAQs ===== */
.mig-faqs{padding:88px 0;background:#fff;}
.mig-faqs-head{text-align:center;margin-bottom:52px;}
.mig-faqs-head p{color:var(–rep-text-muted);max-width:500px;margin:0 auto;}
.mig-faq-list{max-width:820px;margin:0 auto;display:flex;flex-direction:column;gap:10px;}
.mig-faq{
border:1px solid var(–rep-border);border-radius:var(–rep-radius-lg);
background:#fff;overflow:hidden;
}
.mig-faq summary{
display:flex;align-items:center;justify-content:space-between;
padding:20px 26px;cursor:pointer;
font:600 .97rem/1.35 var(–rep-font-display);color:var(–rep-forest);
list-style:none;gap:14px;transition:background .15s;
}
.mig-faq summary::-webkit-details-marker{display:none;}
.mig-faq summary:hover,.mig-faq[open] summary{background:var(–rep-bg-light);}
.mig-faq .fi{
width:26px;height:26px;border-radius:50%;background:var(–rep-bg-light);
border:1.5px solid var(–rep-border);display:flex;align-items:center;justify-content:center;
font-size:13px;color:var(–rep-teal);flex-shrink:0;transition:transform .22s;
}
.mig-faq[open] .fi{transform:rotate(45deg);}
.mig-faq .fb{padding:0 26px 22px;border-top:1px solid var(–rep-border);}
.mig-faq .fb p{font-size:.93rem;line-height:1.75;color:var(–rep-text-secondary);padding-top:16px;margin:0;}
.mig-faq .fb p strong{color:var(–rep-forest);}
.mig-faq .fb p a{color:var(–rep-teal);font-weight:600;}
/* ===== 7. CTA FINAL ===== */
.mig-cta{
padding:100px 0;
background:linear-gradient(180deg,#0D1B12 0%,#122018 50%,#1E2F23 100%);
position:relative;overflow:hidden;
}
.mig-cta::before{
content:»»;position:absolute;inset:0;
background:
radial-gradient(ellipse 55% 60% at 50% 50%,rgba(65,153,159,.07) 0%,transparent 65%),
radial-gradient(ellipse 30% 30% at 10% 80%,rgba(147,241,201,.04) 0%,transparent 60%);
pointer-events:none;
}
.mig-cta .wrap{position:relative;z-index:1;text-align:center;}
.mig-cta h2{color:#fff;margin-bottom:16px;max-width:600px;margin-left:auto;margin-right:auto;}
.mig-cta p{color:rgba(255,255,255,.55);max-width:520px;margin:0 auto 34px;font-size:1.05rem;line-height:1.75;}
.mig-cta-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-bottom:26px;}
.mig-trust-strip{
display:flex;gap:18px;justify-content:center;flex-wrap:wrap;
font:400 .78rem/1 var(–rep-font-body);color:rgba(255,255,255,.32);
}
.mig-trust-strip span{display:flex;align-items:center;gap:5px;}
.mig-trust-strip i{font-size:13px;color:var(–rep-green);}
/* ── RESPONSIVE ── */
@media(max-width:1024px){
.mig-hero-grid{grid-template-columns:1fr;gap:32px;}
.mig-hero-visual{max-width:400px;}
.mig-steps{grid-template-columns:repeat(2,1fr);}
.mig-benefits-grid{grid-template-columns:repeat(2,1fr);}
.mig-compare-table{overflow-x:auto;display:block;}
}
@media(max-width:640px){
.mig-steps{grid-template-columns:1fr;}
.mig-benefits-grid{grid-template-columns:1fr;}
.mig-faq summary{padding:16px 18px;font-size:.88rem;}
.mig-faq .fb{padding:0 18px 18px;}
.mig-hero-btns{flex-direction:column;}
.mig-hero-trust{gap:12px;}
}/* End custom CSS */
{
«@context»: «https://schema.org»,
«@type»: «HowTo»,
«name»: «Cómo migrar tu web a Replanta ECO Hosting»,
«description»: «Guía paso a paso para migrar tu sitio web a un hosting ecológico con energía 100% renovable. Migración gratuita sin tiempo de inactividad.»,
«totalTime»: «PT4H»,
«estimatedCost»: {
«@type»: «MonetaryAmount»,
«currency»: «EUR»,
«value»: «0»
},
«step»: [
{
«@type»: «HowToStep»,
«position»: 1,
«name»: «Elige tu plan de hosting»,
«text»: «Selecciona el plan de hosting que mejor se adapte a las necesidades de tu web. Todos los planes incluyen migración gratuita.»,
«url»: «https://dev.replanta.net/migrar-a-un-eco-hosting/#planes»
},
{
«@type»: «HowToStep»,
«position»: 2,
«name»: «Envía los accesos de tu hosting actual»,
«text»: «Proporciona las credenciales de acceso a tu hosting actual (cPanel, FTP o similar). Toda la información se trata con máxima confidencialidad.»
},
{
«@type»: «HowToStep»,
«position»: 3,
«name»: «Migramos tu web completa»,
«text»: «Copiamos todos los archivos, base de datos y configuraciones al nuevo servidor. Optimizamos la configuración de caché y CDN.»
},
{
«@type»: «HowToStep»,
«position»: 4,
«name»: «Tu web online en el nuevo hosting»,
«text»: «Cambiamos los DNS, activamos el certificado SSL y verificamos que todo funcione correctamente. Cero tiempo de inactividad durante el proceso.»
}
]
}
{
«@context»: «https://schema.org»,
«@type»: «FAQPage»,
«mainEntity»: [
{
«@type»: «Question»,
«name»: «¿Cuánto tarda la migración a Replanta?»,
«acceptedAnswer»: {
«@type»: «Answer»,
«text»: «El proceso completo suele tardar entre 2 y 4 horas. Esto incluye copia de archivos, base de datos, configuración de SSL y verificación funcional. Durante todo el proceso tu web sigue funcionando con normalidad en el servidor anterior.»
}
},
{
«@type»: «Question»,
«name»: «¿Tendré tiempo de inactividad durante la migración?»,
«acceptedAnswer»: {
«@type»: «Answer»,
«text»: «No. Mantenemos tu web funcionando en el servidor original mientras configuramos todo en el nuevo. El cambio de DNS es prácticamente instantáneo gracias a Cloudflare. No hay momento en que tu web deje de estar accesible.»
}
},
{
«@type»: «Question»,
«name»: «¿Qué necesito para iniciar la migración?»,
«acceptedAnswer»: {
«@type»: «Answer»,
«text»: «Solo necesitas proporcionarnos acceso a tu hosting actual: credenciales de cPanel, acceso SFTP, o un backup completo de archivos y base de datos. También necesitaremos acceso al panel de DNS de tu dominio para el cambio final.»
}
},
{
«@type»: «Question»,
«name»: «¿Migráis cualquier tipo de web?»,
«acceptedAnswer»: {
«@type»: «Answer»,
«text»: «Migramos WordPress, WooCommerce, PrestaShop, sitios estáticos y la mayoría de CMS en PHP. Para aplicaciones Node.js, Python o configuraciones especiales, contáctanos primero para evaluar la viabilidad.»
}
},
{
«@type»: «Question»,
«name»: «¿Qué pasa si algo sale mal durante la migración?»,
«acceptedAnswer»: {
«@type»: «Answer»,
«text»: «Antes de cualquier cambio, hacemos un backup completo de tu sitio. Si algo no funciona como debería, podemos revertir al estado anterior en minutos. Verificamos todo antes de cambiar los DNS.»
}
},
{
«@type»: «Question»,
«name»: «¿La migración tiene coste adicional?»,
«acceptedAnswer»: {
«@type»: «Answer»,
«text»: «No, nunca. La migración completa está incluida en todos los planes de hosting. No hay letra pequeña ni cargos ocultos. Todo está incluido en el precio del plan que elijas.»
}
},
{
«@type»: «Question»,
«name»: «¿También migráis el email?»,
«acceptedAnswer»: {
«@type»: «Answer»,
«text»: «Sí. Si usas cuentas de email vinculadas al hosting, migramos el correo electrónico incluyendo todos los mensajes existentes. Configuramos los registros MX correctamente para que no pierdas ningún email.»
}
}
]
}
(function(){
if(‘IntersectionObserver’ in window){
var io=new IntersectionObserver(function(es){es.forEach(function(e){if(e.isIntersecting)e.target.classList.add(‘is-visible’);});},{threshold:.1,rootMargin:’0px 0px -40px 0px’});
document.querySelectorAll(‘.mig-landing .reveal’).forEach(function(el){io.observe(el);});
} else {
document.querySelectorAll(‘.mig-landing .reveal’).forEach(function(el){el.classList.add(‘is-visible’);});
}
})();