/* ============================================================
   ha-seo.css — Maquetación de los cuerpos de contenido SEO
   (páginas de servicio/hub). Todo va scoped bajo .ha-seo para
   no afectar a ningún otro componente del tema.
   ============================================================ */
.ha-seo{font-size:16px;line-height:1.7;color:#33373e}
.ha-seo h2{font-size:1.7rem;font-weight:800;color:#032843;margin:0 0 .6em;line-height:1.25}
.ha-seo h3{font-size:1.15rem;font-weight:700;color:#0a4a78;margin:1.2em 0 .4em}
.ha-seo .ha-sec{margin:34px 0}
.ha-seo .ha-lead{font-size:1.12rem;color:#444}

/* tira de confianza */
.ha-seo .ha-trust{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin:26px 0}
.ha-seo .ha-trust .it{background:linear-gradient(135deg,#032843,#0a4a78);color:#fff;border-radius:16px;padding:22px 16px;text-align:center;box-shadow:0 6px 18px rgba(3,40,67,.18)}
.ha-seo .ha-trust .it i{font-size:26px;opacity:.9}
.ha-seo .ha-trust .it .n{display:block;font-size:1.05rem;font-weight:800;margin-top:8px;line-height:1.3}

/* grid de tarjetas */
.ha-seo .ha-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-top:8px}
.ha-seo .ha-card{background:#fff;border:1px solid #e7ecf1;border-radius:16px;padding:24px;box-shadow:0 4px 14px rgba(3,40,67,.05);transition:transform .2s,box-shadow .2s}
.ha-seo .ha-card:hover{transform:translateY(-5px);box-shadow:0 12px 26px rgba(3,40,67,.12)}
.ha-seo .ha-card .ico{width:54px;height:54px;border-radius:14px;background:#eef4fb;color:#0a4a78;display:flex;align-items:center;justify-content:center;font-size:24px;margin-bottom:14px}
.ha-seo .ha-card h3{margin:0 0 .35em;color:#032843;font-size:1.08rem}
.ha-seo .ha-card p{margin:0;font-size:.96rem;color:#555}

/* Variantes card con imagen (foto a sangre arriba + padding solo en el cuerpo).
   .ha-card-island: cards de islas en la pagina /mudanzas-en-canarias
   .ha-card-photo: cards de servicios en las paginas individuales de cada isla */
.ha-seo .ha-card-island,
.ha-seo .ha-card-photo{padding:0;overflow:hidden;display:flex;flex-direction:column}
.ha-seo .ha-card-island .ha-card-img,
.ha-seo .ha-card-photo .ha-card-img{position:relative;aspect-ratio:16/10;overflow:hidden;background:#eef4fb}
.ha-seo .ha-card-island .ha-card-img img,
.ha-seo .ha-card-photo .ha-card-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
.ha-seo .ha-card-island:hover .ha-card-img img,
.ha-seo .ha-card-photo:hover .ha-card-img img{transform:scale(1.05)}
.ha-seo .ha-card-island h3,
.ha-seo .ha-card-photo h3{padding:18px 22px 6px;color:#032843;font-size:1.08rem;margin:0 0 .35em;position:relative}
.ha-seo .ha-card-island h3:after{content:"\f061";font-family:"Font Awesome 6 Free";font-weight:900;color:#032843;font-size:.85rem;margin-left:8px;opacity:0;transform:translateX(-4px);transition:opacity .2s,transform .2s;display:inline-block}
.ha-seo .ha-card-island p,
.ha-seo .ha-card-photo p{padding:0 22px 22px;margin:0;font-size:.96rem;color:#555}

/* Chips de localidades: lista inline con badges navy claros */
.ha-seo .ha-chips{list-style:none;padding:0;margin:14px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.ha-seo .ha-chips li{display:inline-flex;align-items:center;padding:7px 14px;border-radius:18px;background:#eef4fb;color:#032843;font-size:.88rem;font-weight:600;border:1px solid #d8e3ee;transition:background .2s,transform .2s}
.ha-seo .ha-chips li:hover{background:#032843;color:#fff;transform:translateY(-1px)}

/* Card como link: mantiene apariencia de tarjeta + cursor pointer + hover lift */
.ha-seo .ha-card-link{display:block;text-decoration:none!important;color:inherit!important;height:100%}
.ha-seo .ha-card-link:hover,.ha-seo .ha-card-link:focus{text-decoration:none!important;color:inherit!important}
.ha-seo .ha-card-link:hover h3:after{opacity:1;transform:translateX(0)}
.ha-seo .ha-card-link:focus-visible .ha-card-island{outline:3px solid #032843;outline-offset:3px}

/* caja destacada */
.ha-seo .ha-callout{border-left:6px solid #0a4a78;background:#f4f8fc;padding:22px 26px;border-radius:0 16px 16px 0;margin:22px 0}
.ha-seo .ha-callout h3{margin-top:0}
.ha-seo .ha-check{list-style:none;padding:0;margin:10px 0 0}
.ha-seo .ha-check li{padding:9px 0 9px 34px;position:relative}
.ha-seo .ha-check li:before{content:"\2713";position:absolute;left:0;top:7px;width:22px;height:22px;border-radius:50%;background:#1a9e5f;color:#fff;font-size:13px;font-weight:700;text-align:center;line-height:22px}
.ha-seo .ha-codes{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.ha-seo .ha-codes span{background:#032843;color:#fff;border-radius:8px;padding:6px 12px;font-size:.85rem;font-weight:600}

/* mini stats */
.ha-seo .ha-mini{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-top:14px}
.ha-seo .ha-mini .b{background:#fff;border:1px solid #e7ecf1;border-radius:14px;padding:18px;text-align:center}
.ha-seo .ha-mini .b i{color:#0a4a78;font-size:22px}
.ha-seo .ha-mini .b .t{font-weight:800;color:#032843;font-size:1.15rem;margin:6px 0 2px}
.ha-seo .ha-mini .b .s{font-size:.88rem;color:#666}

/* tabla */
.ha-seo .ha-tablewrap{overflow-x:auto;border-radius:14px;border:1px solid #e7ecf1;margin-top:8px}
.ha-seo .ha-table{width:100%;border-collapse:collapse;font-size:.97rem;min-width:520px}
.ha-seo .ha-table th{background:#032843;color:#fff;text-align:left;padding:14px 16px;font-weight:700}
.ha-seo .ha-table td{padding:13px 16px;border-top:1px solid #eef1f4;vertical-align:top}
.ha-seo .ha-table tr:nth-child(even) td{background:#f7fafc}

/* proceso pasos */
.ha-seo .ha-steps{display:grid;gap:14px;margin-top:8px}
.ha-seo .ha-step{display:flex;gap:16px;align-items:flex-start;background:#fff;border:1px solid #e7ecf1;border-radius:14px;padding:18px 20px}
.ha-seo .ha-step .num{flex:0 0 40px;height:40px;border-radius:50%;background:#0a4a78;color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center}
.ha-seo .ha-step .tx h3{margin:0 0 .2em;color:#032843;font-size:1.05rem}
.ha-seo .ha-step .tx p{margin:0;color:#555;font-size:.95rem}

/* faq acordeón */
.ha-seo .ha-faq details{background:#fff;border:1px solid #e7ecf1;border-radius:12px;margin-bottom:12px;overflow:hidden}
.ha-seo .ha-faq summary{cursor:pointer;list-style:none;padding:16px 20px;font-weight:700;color:#032843;display:flex;justify-content:space-between;align-items:center}
.ha-seo .ha-faq summary::-webkit-details-marker{display:none}
.ha-seo .ha-faq summary:after{content:"\002B";font-size:1.4rem;color:#0a4a78;font-weight:400;transition:transform .2s}
.ha-seo .ha-faq details[open] summary:after{transform:rotate(45deg)}
.ha-seo .ha-faq details[open] summary{background:#f4f8fc}
.ha-seo .ha-faq .ans{padding:0 20px 18px;color:#555}

/* enlace de consolidación a hub */
.ha-seo .ha-hublink{display:block;background:#f4f8fc;border:1px dashed #b9cfe2;border-radius:14px;padding:18px 22px;margin:24px 0;color:#0a4a78;font-weight:600;text-decoration:none}
.ha-seo .ha-hublink:hover{background:#eaf2fb}

/* CTA */
.ha-seo .ha-cta{background:linear-gradient(135deg,#032843,#0a4a78);color:#fff;border-radius:18px;padding:34px;text-align:center;margin-top:34px}
.ha-seo .ha-cta h3{color:#fff;margin:0 0 .4em;font-size:1.5rem}
.ha-seo .ha-cta p{margin:0 0 18px;opacity:.92}
.ha-seo .ha-cta a{display:inline-block;background:#fff;color:#032843;font-weight:800;padding:13px 30px;border-radius:30px;text-decoration:none;transition:transform .15s}
.ha-seo .ha-cta a:hover{transform:scale(1.04)}
@media(max-width:575px){.ha-seo h2{font-size:1.4rem}}
