/* Servicios, contacto y legales (2026-10-17). Se carga después de main.css y casos.css. */
.page-hero{padding-block:48px 56px}
.page-hero h1{margin-top:20px;max-width:14ch;font-size:clamp(40px,6vw,88px);line-height:1.02}
.page-hero>p{margin-top:24px;max-width:560px;color:var(--gris);font-size:18px;line-height:1.5}
.sv-wrap{display:grid;gap:0;padding-bottom:40px}
.sv-group{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);gap:60px;padding-block:56px;border-top:1px solid var(--linea)}
.sv-head h2{margin-top:16px;font-size:clamp(30px,3.6vw,48px);line-height:1.08}
.sv-list{list-style:none;margin:0;padding:0;display:grid}
.sv-list li{padding:24px 0;border-bottom:1px solid var(--linea);display:grid;gap:10px}
.sv-list li:first-child{padding-top:0}
.sv-list li:last-child{border-bottom:0}
.sv-list h3{font-size:22px;font-weight:600;margin:0}
.sv-list p{margin:0;color:var(--gris);font-size:15px;line-height:1.55;max-width:560px}
.sv-list .text-link{justify-self:start}
.page-cta{padding-block:80px;border-top:1px solid var(--linea);text-align:left;display:grid;gap:18px;justify-items:start}
.page-cta p{color:var(--gris)}
.contact-page{padding-bottom:96px}
.legal{max-width:760px;padding-bottom:96px}
.legal h2{font-size:22px;font-weight:600;margin:36px 0 10px}
.legal p{color:#333;line-height:1.65;margin:0 0 12px}
.legal-note{border:1px dashed var(--acento);background:#fff;padding:14px 16px;font-size:13px}
@media(max-width:900px){.sv-group{grid-template-columns:1fr;gap:28px;padding-block:40px}.contact-page{gap:40px}}

dialog nav a:hover,dialog nav a:focus-visible{text-decoration:underline;text-decoration-color:#72ff6a;text-decoration-thickness:.06em;text-underline-offset:.12em}
dialog nav a small,dialog nav a span{display:inline-block}
.sv-list li{scroll-margin-top:110px}
.caso-hero{display:grid;justify-items:start;gap:0}
.caso-hero .eyebrow{margin-top:28px}
.caso-hero h1{max-width:none;font-family:Minal,Georgia,serif;font-weight:400}
.caso-hero .caso-tags{margin:26px 0 0}
.caso-page{padding-bottom:64px}
.caso-page .caso-mosaic{width:100%}
.caso-nav{display:flex;justify-content:space-between;gap:20px;padding-block:28px;border-top:1px solid var(--linea)}
.sv-bloque{padding-block:48px;border-top:1px solid var(--linea)}
.sv-bloque>h2{font-size:clamp(26px,3vw,38px);margin-bottom:24px}
.sv-inc{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 48px}
.sv-inc li{padding:16px 0 16px 26px;border-bottom:1px solid var(--linea);position:relative;font-size:16px;line-height:1.5}
.sv-inc li:before{content:"";position:absolute;left:0;top:25px;width:10px;height:10px;border-radius:50%;background:var(--acento)}
.sv-pasos{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.sv-pasos li{border:1px solid var(--linea);background:#fff;padding:24px;display:grid;gap:8px;align-content:start}
.sv-pasos .pn{font-size:12px;font-weight:600;color:var(--gris);letter-spacing:.06em}
.sv-pasos h3{font-size:20px;margin:0}
.sv-pasos p{margin:0;color:var(--gris);font-size:14px;line-height:1.5}
.sv-casos{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-wrap:wrap;gap:8px 28px}
.sv-list li>.text-link+.text-link{margin-top:-2px}
@media(max-width:900px){.sv-inc{grid-template-columns:1fr}.sv-pasos{grid-template-columns:1fr}}
.sv-casos{list-style:none;margin:0 0 24px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.sv-caso{display:grid;gap:8px;align-content:start;border:1px solid var(--linea);background:#fff;padding:14px 14px 20px;text-decoration:none;color:inherit;height:100%}
.sv-caso-img{display:block;aspect-ratio:3/2;overflow:hidden;background:var(--papel)}
.sv-caso-img img{width:100%;height:100%;object-fit:cover;object-position:top;display:block}
.sv-caso .kicker{margin-top:8px;color:var(--gris)}
.sv-caso strong{font:400 clamp(24px,2.4vw,32px)/1.05 Minal,Georgia,serif}
.sv-caso:hover,.sv-caso:focus-visible{border-color:var(--tinta)}
.sv-caso:focus-visible{outline:3px solid var(--acento);outline-offset:2px}
@media(max-width:900px){.sv-casos{grid-template-columns:1fr}}
.mail-lead{max-width:560px;color:var(--gris);margin:0 0 24px}
.mail-row{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}
.mail-row a{display:block;position:relative;border:1px solid var(--linea);background:#fff;padding:14px;text-decoration:none;color:inherit}
.mail-row img{display:block;width:100%;height:auto;max-height:640px;object-fit:cover;object-position:top}
.mail-row a:after{content:"";position:absolute;left:14px;right:14px;bottom:56px;height:90px;background:linear-gradient(transparent,#fff);pointer-events:none}
.mail-row span{display:block;margin-top:14px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.06em}
.mail-row a:hover,.mail-row a:focus-visible{border-color:var(--tinta)}
@media(max-width:700px){.mail-row{grid-template-columns:1fr}}
.legal ul{margin:0 0 12px;padding-left:20px;color:#333;line-height:1.65}

/* Tarjetas de caso con marco de móvil (Redes y Mailing) */
.sv-phone{justify-items:center;text-align:center;padding:26px 14px 22px}
.sv-phone .sv-caso-img{position:relative;width:min(230px,70%);aspect-ratio:9/19;border:8px solid #0B0B0B;border-radius:34px;background:#0B0B0B;box-shadow:0 14px 30px -14px rgba(0,0,0,.45)}
.sv-phone .sv-caso-img:before{content:"";position:absolute;z-index:1;top:6px;left:50%;width:34%;height:14px;transform:translateX(-50%);border-radius:10px;background:#0B0B0B}
.sv-phone .sv-caso-img img{border-radius:26px;object-position:top}
.sv-phone .kicker{margin-top:14px}
.sv-phone .text-link{justify-self:center}
.sv-phone .sv-caso-img img{object-fit:contain;object-position:center;background:#0B0B0B}

/* Planes y precios (página oculta) */
.planes{padding-bottom:40px}
.planes-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.plan{border:1px solid var(--linea);background:#fff;padding:34px 30px;display:grid;gap:18px;align-content:start}
.plan .kicker{color:var(--gris)}
.plan h2{font:400 clamp(34px,3.4vw,48px)/1 Minal,Georgia,serif;margin:0}
.plan-precio{margin:0;display:flex;align-items:baseline;gap:8px}
.plan-precio strong{font:400 clamp(40px,4vw,58px)/1 Minal,Georgia,serif}
.plan-precio span{font-size:13px;color:var(--gris)}
.plan-lista{list-style:none;margin:0;padding:0;display:grid}
.plan-lista li{padding:11px 0 11px 24px;border-top:1px solid var(--linea);position:relative;font-size:15px;line-height:1.4}
.plan-lista li:before{content:"";position:absolute;left:0;top:19px;width:9px;height:9px;border-radius:50%;background:var(--acento)}
.plan-nota{margin:0;font-size:13px;color:var(--gris)}
.plan .button{justify-self:start;margin-top:6px}
.plan.destacado{background:var(--tinta);color:#fff;border-color:var(--tinta)}
.plan.destacado .kicker,.plan.destacado .plan-precio span,.plan.destacado .plan-nota{color:#c9c9c9}
.plan.destacado .plan-lista li{border-top-color:#333}
.plan.destacado .plan-lista li:before{background:#72ff6a}
.planes-iva{margin:22px 0 0;text-align:center;font-size:13px;color:var(--gris)}
@media(max-width:900px){.planes-grid{grid-template-columns:1fr}}
.plan.destacado .button{background:#fff;color:#0B0B0B;border-color:#fff}.plan.destacado .button:hover{background:#72ff6a;border-color:#72ff6a}

.planes-agente{margin:14px 0 0;text-align:center;font-size:15px}

.plan-lista li.clave{font-weight:700;font-size:17px}
.plan-lista li.clave:before{background:var(--tinta)}
.plan.destacado .plan-lista li.clave:before{background:#fff}
.planes-comun{margin-top:26px;border:1px solid var(--linea);background:#fff;padding:28px 30px;display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,2fr);gap:24px;align-items:start}
.planes-comun h2{font:400 clamp(26px,2.6vw,34px)/1.05 Minal,Georgia,serif;margin:0}
.planes-comun ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 36px}
.planes-comun li{padding:11px 0 11px 24px;border-top:1px solid var(--linea);position:relative;font-size:15px;line-height:1.4}
.planes-comun li:before{content:"";position:absolute;left:0;top:19px;width:9px;height:9px;border-radius:50%;background:var(--acento)}
@media(max-width:900px){.planes-comun{grid-template-columns:1fr}.planes-comun ul{grid-template-columns:1fr}}
