/* ============================================================
   Allzone — Portada "Atención al cliente"  ·  v2 (moderno)
   Identidad real Allzone: Montserrat + azules #5272eb / #375cd8
   Paleta azul oscura, SIN rojo/coral.
   ============================================================ */

:root{
  --marca:#5272eb;      /* azul Allzone */
  --marca-d:#3a55c8;    /* azul medio-oscuro */
  --marca-dd:#243a8f;   /* índigo profundo */
  --marca-deep:#161f4d; /* azul marino muy oscuro (bases hero/CTA) */
  --acc:#7d97ff;        /* azul claro para acentos/realces */
  --tinta:#12141c;
  --suave:#6b7280;
  --suave-2:#9aa1ad;
  --linea:#e9eaf1;
  --fondo:#f4f5f8;
  --blanco:#ffffff;
  --ancho:1160px;
  --r:18px;
  --sombra:0 18px 40px -22px rgba(22,31,77,.5);
  --sombra-sm:0 8px 22px -14px rgba(22,31,77,.42);
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:'Montserrat',-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
  color:var(--tinta);background:var(--fondo);line-height:1.6;-webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.wrap{max-width:var(--ancho);margin:0 auto;padding:0 24px}

/* ---------- Barra superior (sticky, glass) ---------- */
.az-top{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.82);backdrop-filter:saturate(160%) blur(12px);border-bottom:1px solid var(--linea)}
.az-top__in{max-width:var(--ancho);margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:14px 24px;gap:20px}
.az-logo{height:42px;width:auto}
.az-top__links{display:flex;gap:22px;font-size:13.5px;font-weight:600}
.az-top__links a{color:var(--suave);transition:color .15s;white-space:nowrap}
.az-top__links a:hover{color:var(--marca)}
.az-tel{display:inline-flex;align-items:center;gap:8px;font-weight:700;color:var(--tinta);font-size:14.5px;white-space:nowrap;padding:9px 16px;border:1.5px solid var(--linea);border-radius:999px;transition:.18s}
.az-tel:hover{border-color:var(--marca);color:var(--marca);box-shadow:var(--sombra-sm)}
.az-tel svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
/* Selector de pais ES/PT */
.az-top__right{display:flex;align-items:center;gap:12px}
.az-lang{display:inline-flex;gap:3px;align-items:center;border:1.5px solid var(--linea);border-radius:999px;padding:3px;background:#fff}
.az-lang a{display:inline-flex;align-items:center;font-size:12.5px;font-weight:700;color:var(--suave);text-decoration:none;padding:5px 12px;border-radius:999px;transition:.15s;white-space:nowrap}
.az-lang a.is-active{background:var(--marca);color:#fff}
.az-lang a:not(.is-active):hover{color:var(--marca)}
@media(max-width:520px){.az-tel{display:none}}

/* ---------- HERO con mesh gradient (azul oscuro) ---------- */
.az-hero{position:relative;overflow:hidden;color:#fff;background:
  radial-gradient(1100px 480px at 12% -8%, #4f74ff 0%, rgba(79,116,255,0) 55%),
  radial-gradient(900px 520px at 108% 16%, #2f49b8 0%, rgba(47,73,184,0) 50%),
  linear-gradient(135deg,var(--marca-deep) 0%, var(--marca-dd) 55%, var(--marca-d) 100%)}
.az-hero::after{content:"";position:absolute;inset:0;background:
  radial-gradient(60% 60% at 50% 120%, rgba(255,255,255,.10), transparent 70%);pointer-events:none}
.az-hero__in{position:relative;z-index:1;max-width:var(--ancho);margin:0 auto;padding:74px 24px 84px;text-align:center}
.az-badge{display:inline-flex;align-items:center;gap:9px;font-size:12.5px;font-weight:600;letter-spacing:.4px;text-transform:uppercase;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);padding:8px 16px;border-radius:999px;margin-bottom:22px;backdrop-filter:blur(4px)}
.az-dot{width:8px;height:8px;border-radius:50%;background:#46f08a;box-shadow:0 0 0 0 rgba(70,240,138,.7);animation:pulse 2s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(70,240,138,.6)}70%{box-shadow:0 0 0 9px rgba(70,240,138,0)}100%{box-shadow:0 0 0 0 rgba(70,240,138,0)}}
.az-hero h1{font-size:clamp(30px,5vw,52px);font-weight:800;line-height:1.08;letter-spacing:-1.2px;margin-bottom:18px}
.az-hero h1 em{font-style:normal;background:linear-gradient(90deg,#fff,#c7d2ff);-webkit-background-clip:text;background-clip:text;color:transparent}
.az-hero p{font-size:clamp(15px,2.1vw,19px);max-width:660px;margin:0 auto;color:rgba(255,255,255,.9);font-weight:400}
.az-chips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:30px}
.az-chip{font-size:13px;font-weight:600;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);padding:8px 16px;border-radius:999px}

/* ---------- Aviso importante ---------- */
.az-aviso{margin-top:-46px;position:relative;z-index:2}
.az-aviso__card{display:flex;gap:20px;align-items:flex-start;background:var(--blanco);border:1px solid var(--linea);border-radius:var(--r);padding:26px 30px;box-shadow:var(--sombra)}
.az-aviso__ic{flex:0 0 auto;width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#eef2ff,#dfe6ff);color:var(--marca-d)}
.az-aviso__ic svg{width:26px;height:26px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.az-aviso__card h2{font-size:18px;font-weight:700;margin-bottom:6px}
.az-aviso__card p{color:var(--suave);font-size:14.5px}

/* ---------- Accesos de cliente ---------- */
.az-acc{padding:54px 0 18px}
.az-acc__head{margin-bottom:26px}
.az-acc__kicker{font-size:12.5px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--marca)}
.az-acc__head h2{font-size:clamp(22px,3vw,30px);font-weight:800;letter-spacing:-.6px;margin-top:6px}
.az-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.az-card{position:relative;overflow:hidden;background:var(--blanco);border:1px solid var(--linea);border-radius:var(--r);padding:26px 24px 24px;transition:transform .2s,box-shadow .2s,border-color .2s}
.az-card::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--marca),var(--acc));transform:scaleX(0);transform-origin:left;transition:transform .25s}
.az-card:hover{transform:translateY(-6px);box-shadow:var(--sombra);border-color:transparent}
.az-card:hover::before{transform:scaleX(1)}
.az-card__ic{width:50px;height:50px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--marca),var(--marca-dd));color:#fff;margin-bottom:16px;box-shadow:0 10px 18px -8px rgba(82,114,235,.7)}
.az-card__ic svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.az-card h3{font-size:16px;font-weight:700;margin-bottom:6px;display:flex;align-items:center;justify-content:space-between}
.az-card h3 .arw{color:var(--suave-2);transition:transform .2s,color .2s}
.az-card:hover h3 .arw{transform:translateX(4px);color:var(--marca)}
.az-card p{font-size:13px;color:var(--suave)}

/* ---------- Banners de marca (azules oscuros) ---------- */
.az-bandas{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:26px 0}
.az-banda{position:relative;overflow:hidden;min-height:158px;border-radius:var(--r);display:flex;align-items:center;gap:20px;padding:28px 30px;color:#fff;box-shadow:var(--sombra-sm)}
.az-banda::after{content:"";position:absolute;right:-50px;top:-50px;width:200px;height:200px;border-radius:50%;background:rgba(255,255,255,.09)}
.az-banda__ic{flex:0 0 auto;width:58px;height:58px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.16);border-radius:16px}
.az-banda__ic svg{width:30px;height:30px;stroke:#fff;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.az-banda__tx{position:relative;z-index:1}
.az-banda__tx h3{font-size:19px;font-weight:800;letter-spacing:-.2px;margin-bottom:5px}
.az-banda__tx p{font-size:13.5px;opacity:.9;font-weight:400}
.az-banda--1{background:linear-gradient(130deg,var(--marca-deep),var(--marca))}
.az-banda--2{background:linear-gradient(130deg,#1d2747,#374a86)}

/* ---------- Banner entrada de blog ---------- */
.az-blog{padding:26px 0 0}
.az-blog__card{display:grid;grid-template-columns:320px 1fr;background:var(--blanco);border:1px solid var(--linea);border-radius:var(--r);overflow:hidden;box-shadow:var(--sombra-sm);transition:transform .2s,box-shadow .2s}
.az-blog__card:hover{transform:translateY(-4px);box-shadow:var(--sombra)}
.az-blog__img{position:relative;overflow:hidden;background:var(--marca-deep);min-height:190px}
.az-blog__img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s}
.az-blog__card:hover .az-blog__img img{transform:scale(1.04)}
.az-blog__body{padding:26px 30px;display:flex;flex-direction:column;justify-content:center}
.az-blog__tag{font-size:11.5px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--marca);margin-bottom:9px}
.az-blog__body h3{font-size:20px;font-weight:800;letter-spacing:-.3px;line-height:1.25;color:var(--marca-deep);margin-bottom:9px}
.az-blog__body p{font-size:13.5px;color:var(--suave);margin-bottom:15px;line-height:1.6}
.az-blog__more{display:inline-flex;align-items:center;gap:7px;font-size:13.5px;font-weight:700;color:var(--marca)}
.az-blog__more svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.az-blog__card:hover .az-blog__more svg{transform:translateX(3px)}
@media(max-width:680px){
  .az-blog__card{grid-template-columns:1fr}
  .az-blog__img{min-height:170px}
}

/* ---------- CTA ayuda ---------- */
.az-ayuda{padding:18px 0 56px}
.az-ayuda__card{position:relative;overflow:hidden;border-radius:24px;padding:40px 40px;display:flex;align-items:center;justify-content:space-between;gap:26px;flex-wrap:wrap;color:#fff;
  background:radial-gradient(700px 320px at 90% -25%, #3a57d6 0%, rgba(58,87,214,0) 55%), linear-gradient(120deg,var(--marca-deep),var(--marca-dd))}
.az-ayuda__tx h2{font-size:clamp(20px,2.6vw,26px);font-weight:800;letter-spacing:-.4px;margin-bottom:6px}
.az-ayuda__tx p{font-size:14.5px;color:rgba(255,255,255,.88);max-width:440px}
.az-btns{display:flex;gap:12px;flex-wrap:wrap}
.az-btn{display:inline-flex;align-items:center;gap:9px;font-weight:700;font-size:14.5px;padding:14px 22px;border-radius:999px;transition:transform .15s,box-shadow .15s}
.az-btn svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.az-btn:hover{transform:translateY(-2px)}
.az-btn--tel{background:#fff;color:var(--marca-deep);box-shadow:0 12px 24px -12px rgba(42,42,42,.5)}
.az-btn--mail{background:var(--marca);color:#fff;box-shadow:0 12px 24px -12px rgba(82,114,235,.9)}
.az-btn:focus-visible{outline:3px solid #fff;outline-offset:2px}

/* ---------- Pie oscuro con textura de ondas (seigaiha, CSS puro) ---------- */
.az-foot{
  position:relative;color:#d3d6dd;
  background-color:#3a3a3a;
  --dots:
    radial-gradient(circle at 6% 11%, rgba(42,42,42,.26) 2px, transparent 2.5px),
    radial-gradient(circle at 17% 5%, rgba(42,42,42,.16) 1.5px, transparent 2px),
    radial-gradient(circle at 28% 14%, rgba(42,42,42,.30) 2.5px, transparent 3px),
    radial-gradient(circle at 38% 7%, rgba(42,42,42,.14) 1.5px, transparent 2px),
    radial-gradient(circle at 49% 13%, rgba(42,42,42,.22) 2px, transparent 2.5px),
    radial-gradient(circle at 59% 5%, rgba(42,42,42,.12) 1px, transparent 1.5px),
    radial-gradient(circle at 68% 16%, rgba(42,42,42,.27) 2.5px, transparent 3px),
    radial-gradient(circle at 79% 9%, rgba(42,42,42,.18) 1.5px, transparent 2px),
    radial-gradient(circle at 89% 6%, rgba(42,42,42,.22) 2px, transparent 2.5px),
    radial-gradient(circle at 96% 15%, rgba(42,42,42,.15) 1.5px, transparent 2px),
    radial-gradient(circle at 9% 27%, rgba(42,42,42,.18) 1.5px, transparent 2px),
    radial-gradient(circle at 21% 34%, rgba(42,42,42,.24) 2px, transparent 2.5px),
    radial-gradient(circle at 32% 24%, rgba(42,42,42,.13) 1px, transparent 1.5px),
    radial-gradient(circle at 43% 33%, rgba(42,42,42,.29) 2.5px, transparent 3px),
    radial-gradient(circle at 54% 26%, rgba(42,42,42,.16) 1.5px, transparent 2px),
    radial-gradient(circle at 64% 35%, rgba(42,42,42,.22) 2px, transparent 2.5px),
    radial-gradient(circle at 75% 28%, rgba(42,42,42,.12) 1px, transparent 1.5px),
    radial-gradient(circle at 86% 32%, rgba(42,42,42,.26) 2.5px, transparent 3px),
    radial-gradient(circle at 94% 26%, rgba(42,42,42,.17) 1.5px, transparent 2px),
    radial-gradient(circle at 7% 45%, rgba(42,42,42,.21) 2px, transparent 2.5px),
    radial-gradient(circle at 18% 52%, rgba(42,42,42,.15) 1.5px, transparent 2px),
    radial-gradient(circle at 29% 44%, rgba(42,42,42,.28) 2.5px, transparent 3px),
    radial-gradient(circle at 40% 53%, rgba(42,42,42,.13) 1px, transparent 1.5px),
    radial-gradient(circle at 51% 46%, rgba(42,42,42,.23) 2px, transparent 2.5px),
    radial-gradient(circle at 62% 54%, rgba(42,42,42,.16) 1.5px, transparent 2px),
    radial-gradient(circle at 72% 45%, rgba(42,42,42,.27) 2.5px, transparent 3px),
    radial-gradient(circle at 83% 52%, rgba(42,42,42,.18) 1.5px, transparent 2px),
    radial-gradient(circle at 92% 44%, rgba(42,42,42,.21) 2px, transparent 2.5px),
    radial-gradient(circle at 12% 63%, rgba(42,42,42,.16) 1.5px, transparent 2px),
    radial-gradient(circle at 24% 70%, rgba(42,42,42,.23) 2px, transparent 2.5px),
    radial-gradient(circle at 35% 62%, rgba(42,42,42,.13) 1px, transparent 1.5px),
    radial-gradient(circle at 46% 71%, rgba(42,42,42,.27) 2.5px, transparent 3px),
    radial-gradient(circle at 57% 64%, rgba(42,42,42,.16) 1.5px, transparent 2px),
    radial-gradient(circle at 67% 72%, rgba(42,42,42,.22) 2px, transparent 2.5px),
    radial-gradient(circle at 78% 63%, rgba(42,42,42,.17) 1.5px, transparent 2px),
    radial-gradient(circle at 89% 70%, rgba(42,42,42,.26) 2.5px, transparent 3px),
    radial-gradient(circle at 9% 82%, rgba(42,42,42,.21) 2px, transparent 2.5px),
    radial-gradient(circle at 22% 89%, rgba(42,42,42,.15) 1.5px, transparent 2px),
    radial-gradient(circle at 34% 81%, rgba(42,42,42,.29) 2.5px, transparent 3px),
    radial-gradient(circle at 45% 90%, rgba(42,42,42,.13) 1px, transparent 1.5px),
    radial-gradient(circle at 56% 84%, rgba(42,42,42,.23) 2px, transparent 2.5px),
    radial-gradient(circle at 66% 91%, rgba(42,42,42,.16) 1.5px, transparent 2px),
    radial-gradient(circle at 77% 83%, rgba(42,42,42,.26) 2.5px, transparent 3px),
    radial-gradient(circle at 88% 90%, rgba(42,42,42,.18) 1.5px, transparent 2px);
  background-image:var(--dots);
  background-size:260px 260px;
  background-repeat:repeat;
  overflow:hidden;
}
.az-foot::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background-image:var(--dots);background-repeat:repeat;background-size:178px 178px;background-position:62px 41px}
.az-foot::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background-image:var(--dots);background-repeat:repeat;background-size:127px 127px;background-position:33px 96px}
.az-foot__in{position:relative;z-index:1;max-width:var(--ancho);margin:0 auto;padding:48px 24px 22px;display:grid;grid-template-columns:2fr 1fr 1fr;gap:34px}
.az-foot__logo{height:52px;width:auto;display:block;margin-bottom:16px}
.az-foot__brand p{font-size:13px;color:var(--suave-2);max-width:330px}
.az-sellos{margin-top:16px;font-size:12px;color:#7c8190}
.az-foot__col h4{font-size:12px;text-transform:uppercase;letter-spacing:1.2px;color:#fff;margin-bottom:14px;font-weight:700}
.az-foot__col a{display:block;color:#aeb3c0;font-size:13.5px;padding:4px 0;transition:color .15s}
.az-foot__col a:hover{color:#fff}
.az-legal{position:relative;z-index:1;border-top:1px solid rgba(255,255,255,.08);text-align:center;font-size:12px;color:#8a8f9c;padding:18px;max-width:var(--ancho);margin:0 auto}
.az-legal a{color:#aeb3c0}
.az-legal a:hover{color:#fff}

/* ---------- Responsive ---------- */
@media(max-width:920px){
  .az-grid{grid-template-columns:repeat(2,1fr)}
  .az-foot__in{grid-template-columns:1fr 1fr}
}
@media(max-width:680px){
  .az-top__links{display:none}
  .az-bandas{grid-template-columns:1fr}
  .az-grid{grid-template-columns:1fr 1fr}
  .az-aviso__card{flex-direction:column;gap:14px}
  .az-ayuda__card{padding:30px 26px}
  .az-foot__in{grid-template-columns:1fr}
}
@media(max-width:420px){
  .az-grid{grid-template-columns:1fr}
}
