:root{--red:#E10600;--red-dark:#B50500;--red-tint:#FFF1F0;--ink:#12151a;--muted:#5b6470;--line:#e6e8eb;--soft:#f6f7f8;--br:6px;--card:14px}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Manrope',system-ui,sans-serif;color:var(--ink);background:#fff;line-height:1.6;font-size:17px}
h1,h2,h3{font-family:'Sora',system-ui,sans-serif;line-height:1.12;letter-spacing:-.015em;text-wrap:balance}
h1{font-size:clamp(2.1rem,4.6vw,3.4rem);font-weight:800}
h2{font-size:clamp(1.6rem,3.2vw,2.3rem);font-weight:800}
h3{font-size:1.15rem;font-weight:700}
p{text-wrap:pretty}
a{color:var(--red);text-decoration:none}
a:hover{color:var(--red-dark)}
img{display:block;max-width:100%;background:var(--soft)}
.container{max-width:1140px;margin-inline:auto;padding-inline:22px}
.eyebrow{display:inline-block;color:var(--red);font-weight:700;text-transform:uppercase;letter-spacing:.09em;font-size:.8rem;margin-bottom:14px}
.lead{color:var(--muted);font-size:1.12rem;max-width:56ch}
.btn{display:inline-flex;align-items:center;gap:10px;border-radius:var(--br);padding:14px 26px;font-weight:700;font-family:'Sora',sans-serif;border:2px solid transparent;transition:.18s}
.btn-primary{background:var(--red);color:#fff}
.btn-primary:hover{background:var(--red-dark);color:#fff;transform:translateY(-2px);box-shadow:0 10px 24px rgba(225,6,0,.22)}
.btn-ghost{border-color:var(--line);color:var(--ink)}
.btn-ghost:hover{border-color:var(--ink);color:var(--ink)}
.btn-row{display:flex;flex-wrap:wrap;gap:14px}
.topbar{background:var(--red);color:#fff}
.topbar .container{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 16px;padding-block:10px;text-align:center}
.topbar p{font-size:1rem;font-weight:500;margin:0}
.topbar a{color:#fff;text-decoration:underline;text-underline-offset:3px;font-weight:700}
.topbar a:hover{color:#fff;opacity:.85}
/* En movil la frase ocupa varias lineas: se ajusta para no comerse la pantalla. */
@media(max-width:620px){.topbar p{font-size:.9rem}.topbar .container{padding-block:8px}}
.header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;gap:28px;min-height:70px}
.brand{font-family:'Sora',sans-serif;font-weight:800;font-size:1.22rem;color:var(--ink);letter-spacing:-.02em;white-space:nowrap}
.brand span{color:var(--red)}
.nav-links{display:flex;align-items:center;gap:26px;margin-left:auto;list-style:none}
.nav-links>li{flex-shrink:0}
.nav-links a{color:var(--ink);font-weight:500;font-size:.98rem;white-space:nowrap}
.nav-links a:hover,.nav-links a[aria-current]{color:var(--red)}
.nav-links a[aria-current]{font-weight:700}
.nav-links a.nav-cta,.nav-links a.nav-cta:hover{color:#fff}
.nav-cta{padding:10px 20px;font-size:.95rem}
.burger{display:none;margin-left:auto;cursor:pointer;width:40px;height:40px;flex-direction:column;justify-content:center;gap:6px}
.burger span{display:block;height:2.5px;background:var(--ink);border-radius:2px}
#menu{display:none}
section{padding-block:clamp(56px,8.5vw,96px)}
.hero{padding-block:clamp(48px,7vw,84px)}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,5vw,64px);align-items:center}
.hero-grid>*{min-width:0}
.saas-grid>*{min-width:0}
.hero-grid figure{position:relative;width:100%;aspect-ratio:16/10;border-radius:var(--card);overflow:hidden;border:1px solid var(--line)}
.hero-grid figure img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.trust{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.chip{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;padding:8px 16px;font-size:.92rem;font-weight:500;background:#fff}
.chip b{color:var(--red)}
.sec-head{max-width:640px;margin-bottom:clamp(28px,4vw,48px)}
.soft{background:var(--soft)}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--card);padding:30px;transition:.18s}
.card:hover{transform:translateY(-4px);box-shadow:0 14px 32px rgba(18,21,26,.08)}
.card h3{margin-bottom:10px}
.card p{color:var(--muted);font-size:.98rem}
ul.check{list-style:none;display:grid;gap:12px}
ul.check li{padding-left:30px;position:relative}
ul.check li::before{content:"✓";position:absolute;left:0;top:0;color:var(--red);font-weight:800}
ul.cross li::before{content:"✕";color:#9aa3ad}
.step-num{font-family:'Sora',sans-serif;font-size:2.6rem;font-weight:800;color:var(--red);line-height:1;margin-bottom:14px}
.domains{display:flex;flex-wrap:wrap;gap:12px}
.domain{border:1.5px solid var(--line);border-radius:999px;padding:10px 20px;font-weight:700;font-family:'Sora',sans-serif;font-size:.95rem}
.domain.more{border-style:dashed;color:var(--muted);font-weight:500}
.band{background:var(--red-tint);border:1px solid #ffd9d7;border-radius:var(--card);padding:clamp(30px,5vw,56px);display:grid;grid-template-columns:1.2fr .8fr;gap:32px;align-items:center}
.band h2{color:var(--ink)}
.saas-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(28px,5vw,60px);align-items:center}
.saas-grid figure{position:relative;border-radius:var(--card);overflow:hidden;border:1px solid var(--line);aspect-ratio:16/10}
.saas-grid figure img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
details{border:1px solid var(--line);border-radius:var(--card);padding:20px 24px;margin-bottom:14px;background:#fff}
details summary{cursor:pointer;font-weight:700;font-family:'Sora',sans-serif;font-size:1.05rem;list-style:none;display:flex;justify-content:space-between;gap:14px}
details summary::after{content:"+";color:var(--red);font-size:1.4rem;font-weight:700;line-height:1}
details[open] summary::after{content:"–"}
details p{margin-top:12px;color:var(--muted)}
.final{ text-align:center}
.final .btn-row{justify-content:center}
.breadcrumb{font-size:.88rem;color:var(--muted);padding-top:22px}
.breadcrumb a{color:var(--muted)}
.breadcrumb a:hover{color:var(--red)}
.page-hero{padding-block:clamp(36px,5vw,64px)}
.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.contact-card{border:1px solid var(--line);border-radius:var(--card);padding:34px 30px;text-align:center}
.contact-card.featured{border:2px solid var(--red);box-shadow:0 14px 34px rgba(225,6,0,.10)}
.contact-card .tag{display:inline-block;background:var(--red);color:#fff;border-radius:999px;font-size:.75rem;font-weight:700;padding:4px 12px;margin-bottom:14px;text-transform:uppercase;letter-spacing:.06em}
.contact-card p{color:var(--muted);font-size:.95rem;margin:8px 0 20px}
.footer{background:var(--soft);border-top:1px solid var(--line);padding-top:56px;margin-top:20px}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:36px;padding-bottom:44px}
.footer h4{font-family:'Sora',sans-serif;font-size:.95rem;margin-bottom:16px}
.footer ul{list-style:none;display:grid;gap:10px}
.footer a{color:var(--muted);font-size:.95rem}
.footer a:hover{color:var(--red)}
.footer .brand{display:inline-block;margin-bottom:12px}
.footer .about{color:var(--muted);font-size:.95rem;max-width:34ch}
.footer-bottom{border-top:1px solid var(--line);padding-block:20px;font-size:.88rem;color:var(--muted);display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}
@media(max-width:900px){
.grid-3,.contact-grid{grid-template-columns:1fr 1fr}
.hero-grid,.saas-grid,.band{grid-template-columns:1fr}
.footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:1000px){
.burger{display:flex}
.nav{flex-wrap:wrap}
.nav-links{display:none;flex-direction:column;align-items:flex-start;width:100%;padding:10px 0 22px;gap:18px}
.nav-links>li{width:auto}
#menu:checked~.nav-links{display:flex}
}
@media(max-width:620px){
.grid-2,.grid-3,.contact-grid,.footer-grid{grid-template-columns:1fr}
body{font-size:16px}
}
.finder{display:block;max-width:520px;margin-bottom:26px}
.finder input{width:100%;font:inherit;font-size:1rem;padding:14px 18px;border:1.5px solid var(--line);border-radius:var(--br);background:#fff;color:var(--ink)}
.finder input:focus{outline:none;border-color:var(--red)}
.jumps{display:flex;flex-wrap:wrap;gap:10px}
.jumps .jump{border:1px solid var(--line);border-radius:999px;padding:8px 16px;font-size:.92rem;font-weight:600;color:var(--ink);background:#fff}
.jumps .jump:hover{border-color:var(--red);color:var(--red)}
.muted-note{color:var(--muted);font-size:.92rem}
[data-list] .domain{font-size:.9rem;padding:8px 16px}

.domain-link{display:inline-flex;align-items:center;gap:8px}
.domain-link:hover{border-color:var(--red);color:var(--red)}
.dot{width:8px;height:8px;border-radius:50%;background:#16a34a;display:inline-block;flex:none}
.dot-off{background:#9aa3ad}
.leyenda .dot{margin-right:2px}
.badge-estado{display:inline-block;margin-top:14px;border-radius:999px;padding:6px 16px;font-weight:700;font-size:.85rem;font-family:'Sora',sans-serif;text-transform:uppercase;letter-spacing:.06em}
.badge-estado:empty{display:none}
.badge-estado.is-libre{background:#e8f7ed;color:#15803d}
.badge-estado.is-ocupada{background:var(--soft);color:var(--muted)}
.is-libre-text{color:#15803d}
.is-ocupada-text{color:var(--muted)}
.specs{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--card);overflow:hidden}
.spec{background:#fff;padding:22px 24px;display:grid;gap:6px}
.spec span{color:var(--muted);font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;font-weight:600}
.spec b{font-family:'Sora',sans-serif;font-size:1.05rem}
.shot-note{position:absolute;bottom:0;left:0;right:0;background:rgba(255,255,255,.92);border-top:1px solid var(--line);color:var(--muted);font-size:.82rem;padding:8px 14px;z-index:1}
@media(max-width:900px){.specs{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.specs{grid-template-columns:1fr}}

.precio-box{margin-top:18px;display:grid;gap:4px}
.precio{font-family:'Sora',sans-serif;font-weight:800;font-size:2.2rem;color:var(--ink);letter-spacing:-.02em}
.precio small{font-size:1rem;font-weight:700;color:var(--muted)}
.precio-detalle{color:var(--muted);font-size:.95rem}
.btn-big{padding:16px 34px;font-size:1.05rem;letter-spacing:.03em}
.badge-estado.is-libre{background:#e8f7ed;color:#15803d;border:1px solid #bbe7c9}
.badge-estado.is-ocupada{background:#fff1f0;color:var(--red);border:1px solid #ffd9d7}
.preview-frame{position:relative;background:var(--soft)}
.preview-frame iframe{position:absolute;inset:0;width:200%;height:200%;transform:scale(.5);transform-origin:0 0;border:0;background:#fff}
.specs-3{grid-template-columns:repeat(3,1fr)}
.spec b{font-size:1.02rem}
.band.venta{background:#fff;border:2px solid var(--red);align-items:center}
.venta-cta{text-align:left}
.modal-overlay[hidden]{display:none}
.modal-overlay{position:fixed;inset:0;background:rgba(18,21,26,.55);z-index:100;display:flex;align-items:center;justify-content:center;padding:22px}
.modal{background:#fff;border-radius:var(--card);padding:34px;max-width:480px;width:100%;position:relative;box-shadow:0 30px 80px rgba(18,21,26,.3)}
.modal h3{margin-bottom:10px;padding-right:30px}
.modal p{color:var(--muted);font-size:.98rem;margin-bottom:18px}
.modal-close{position:absolute;top:14px;right:16px;background:none;border:0;font-size:1.7rem;line-height:1;color:var(--muted);cursor:pointer}
.modal-close:hover{color:var(--ink)}
.modal-label{display:block;font-weight:600;font-size:.9rem;margin:14px 0 6px}
.modal-input{width:100%;font:inherit;padding:12px 14px;border:1.5px solid var(--line);border-radius:var(--br)}
.modal-input:focus{outline:none;border-color:var(--red)}
@media(max-width:900px){.specs-3{grid-template-columns:1fr}.preview-frame{min-height:300px}}

/* ── Garantía de resultados ────────────────────────────────────────────────
   Todo el compromiso en un solo bloque: promesa arriba, los tres momentos que
   importan en linea, y la letra pequena plegada para que no tape lo demas. */
.band.garantia{display:block}
.garantia .lead{margin-top:12px;max-width:60ch}
.hitos{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px}
.hitos li{background:#fff;border:1px solid #ffd9d7;border-radius:var(--card);padding:20px 22px;display:flex;flex-direction:column;gap:6px}
.hito-cuando{font-family:'Sora',sans-serif;font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em;color:var(--red)}
.hitos b{font-family:'Sora',sans-serif;font-size:1.05rem;font-weight:700}
.hito-que{color:var(--muted);font-size:.95rem;line-height:1.5}
.garantia details{margin-top:24px;margin-bottom:0;border-color:#ffd9d7}
.garantia details summary{font-size:.98rem}
.garantia details p{margin-top:12px}
.garantia details p+p{margin-top:10px}
@media(max-width:900px){.hitos{grid-template-columns:1fr}}


/* nb-ancho-pantalla */
/* Ancho de pantalla: el contenedor deja de tener tope fijo y el margen pasa a
   ser un carril proporcional (96px a 1920, 72 a 1440, 64 a 1280). El texto no
   se estira: el titular se queda en medida de lectura. Por debajo de 1280 no
   cambia nada. */
@media(min-width:1280px){
.container{max-width:none;width:auto;padding-inline:clamp(1rem,5vw,6rem);margin-inline:auto}
h1{max-width:961px}
.container p{max-width:72ch}
.contact-card h1,.contact-card p,.final h1,.final p,.topbar .container h1,.topbar .container p{margin-inline:auto}
}
