/* ══════════════════════════════════════════
   DATOS UTILES PAGE
══════════════════════════════════════════ */

/* HERO */
#hero.du-hero { min-height: 38vh; display: flex; align-items: center; background: var(--navy); padding: 140px 5% 60px; position: relative; overflow: hidden; }
#hero.du-hero h1 { font-family: 'Syne', 'Syne Fallback', sans-serif; font-size: clamp(2rem, 4vw, 3rem); font-weight: 800; color: var(--white) !important; line-height: 1.15; margin-bottom: 14px; letter-spacing: -.02em; }
#hero.du-hero h1 span { color: var(--blue-lighter) !important; }
#hero.du-hero p { font-size: 17px; color: rgba(var(--white-rgb), 0.65) !important; line-height: 1.7; font-weight: 300; max-width: 500px; margin: 0 auto; }
.du-hero .hero-content { position: relative; z-index: 1; text-align: center; max-width: 700px; margin: 0 auto; }

/* CONTENT */
.du-content { padding: 56px 5% 40px; max-width: 1000px; margin: 0 auto; }
.du-content body { background-color: var(--off-white); }

/* CATEGORY */
.category { margin-bottom: 52px; }
.category-title { font-family: 'DM Sans', 'DM Sans Fallback', sans-serif; font-size: 15px; font-weight: 800; color: var(--blue); letter-spacing: .14em; text-transform: uppercase; margin-bottom: 16px; padding-bottom: 12px; border-bottom: 2px solid var(--blue-pale); }

/* TABLE */
.aseg-table { width: 100%; border-collapse: separate; border-spacing: 0; border: 1px solid var(--gray-light); border-radius: 12px; overflow: hidden; table-layout: fixed; }
.aseg-table col:nth-child(1) { width: 35%; }
.aseg-table col:nth-child(2) { width: 22%; }
.aseg-table col:nth-child(3) { width: 22%; }
.aseg-table col:nth-child(4) { width: 21%; }
.aseg-table thead tr { background: var(--navy); }
.aseg-table thead th { padding: 12px 20px; font-family: 'Syne', 'Syne Fallback', sans-serif; font-size: 11px; font-weight: 700; color: rgba(var(--white-rgb), 0.5); letter-spacing: .08em; text-transform: uppercase; text-align: left; }
.aseg-table tbody tr { background: var(--white); border-top: 1px solid var(--gray-light); transition: background .15s; }
.aseg-table tbody tr:hover { background: var(--off-white); }
.aseg-table td { padding: 16px 20px; font-size: 14px; color: var(--navy); vertical-align: middle; }
.aseg-table td:first-child { font-family: 'Syne', 'Syne Fallback', sans-serif; font-weight: 700; font-size: 14px; }
.phone-link { color: var(--blue); font-weight: 600; text-decoration: none; font-size: 15px; white-space: nowrap; }
.phone-link:hover { color: var(--navy); text-decoration: underline; }
.web-link { color: var(--gray); text-decoration: none; font-size: 13px; }
.web-link:hover { color: var(--blue); text-decoration: underline; }
.badge { display: inline-block; background: var(--blue-pale); color: var(--blue); font-size: 11px; font-weight: 600; padding: 2px 8px; border-radius: 99px; white-space: nowrap; }

/* Datos utiles responsive */
@media (max-width: 650px) {
  .aseg-table, .aseg-table thead, .aseg-table tbody, .aseg-table th, .aseg-table td, .aseg-table tr { display: block; }
  .aseg-table thead { display: none; }
  .aseg-table tbody tr { border: 1px solid var(--gray-light); border-radius: 10px; margin-bottom: 10px; padding: 14px 16px; display: flex; flex-direction: column; gap: 8px; }
  .aseg-table td { padding: 0; border: none; font-size: 14px; }
  .aseg-table td:first-child { font-family: 'Syne', 'Syne Fallback', sans-serif; font-weight: 800; font-size: 15px; color: var(--navy); border-bottom: 1px solid var(--gray-light); padding-bottom: 8px; margin-bottom: 2px; }
  .aseg-table td::before { content: attr(data-label); font-size: 11px; font-weight: 600; color: var(--gray); text-transform: uppercase; letter-spacing: .06em; display: block; margin-bottom: 2px; }
  .aseg-table td:first-child::before { display: none; }
  .du-content { padding: 32px 4% 60px; }
}

/* ── FAQ PAGE ── */
.content{ padding:60px 5% 40px;max-width:1100px;margin:0 auto; }
body.faq-page{
  background-color:var(--off-white);
  background-image:repeating-linear-gradient(45deg,rgba(var(--blue-rgb), 0.07) 0px,rgba(var(--blue-rgb), 0.07) 1px,transparent 1px,transparent 16px);
}

/* CATEGORY ACCORDION */
.cat-item{ margin-bottom:14px;border-radius:14px;overflow:hidden;box-shadow:0 2px 12px rgba(var(--navy-rgb), 0.06);transition:box-shadow .4s,transform .4s; }
.cat-header{ width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 26px;background:var(--white);border:none;cursor:pointer;text-align:left;font-family:'Syne',sans-serif;font-size:16px;font-weight:800;color:var(--navy);transition:background .3s,color .3s; }
.cat-header:hover{ background:#f8f9fe; }
.cat-item.cat-open .cat-header{ background:var(--navy);color:var(--white); }
.cat-item.cat-open{ box-shadow:0 8px 32px rgba(var(--blue-rgb), 0.15); }
.cat-item.cat-open .cat-badge{ background:rgba(var(--white-rgb), 0.15);color:var(--white); }
.cat-arrow{ width:32px;height:32px;border-radius:50%;background:var(--blue-pale);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s,transform .3s; }
.cat-arrow svg{ width:14px;height:14px;stroke:var(--blue);transition:transform .3s; }
.cat-item.cat-open .cat-arrow{ background:rgba(var(--white-rgb), 0.15);transform:rotate(180deg); }
.cat-item.cat-open .cat-arrow svg{ stroke:var(--white); }
.cat-body{ max-height:0;overflow:hidden;background:var(--white);transition:max-height .45s cubic-bezier(0.4,0,0.2,1),padding .45s ease;padding:0 16px; }
.cat-body.cat-show{ max-height:2000px;padding:12px 16px 16px; }
.faq-question{ width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 18px;background:none;border:none;cursor:pointer;text-align:left;font-family:'Syne',sans-serif;font-size:13px;font-weight:700;color:var(--navy);transition:color .2s; }
.faq-question:hover{ color:var(--blue); }
.faq-answer{ font-size:13px;color:var(--text-muted);line-height:1.8;font-weight:300;max-height:0;overflow:hidden;transition:max-height .35s cubic-bezier(0.4,0,0.2,1),padding .35s ease;padding:0 18px; }
.faq-answer.show{ max-height:600px;padding:0 18px 16px; }
.faq-answer ul{ padding-left:18px;margin-top:6px; }
.faq-answer ul li{ margin-bottom:4px; }
.faq-answer strong{ color:var(--navy);font-weight:600; }

/* CTA */
.faq-cta{ background:var(--navy);border-radius:16px;padding:40px;text-align:center;margin-top:40px;margin-bottom:40px; }
.faq-cta h3{ font-family:'Syne',sans-serif;font-size:1.4rem;font-weight:800;color:var(--white);margin-bottom:10px; }
.faq-cta p{ font-size:15px;color:rgba(var(--white-rgb), 0.6);margin-bottom:24px;font-weight:300; }
.faq-cta a{ display:inline-block;background:var(--blue);color:var(--white);padding:12px 28px;border-radius:8px;text-decoration:none;font-size:14px;font-weight:600;font-family:'Syne',sans-serif;transition:background .2s; }
.faq-cta a:hover{ background:var(--blue-light); }

/* ── HERO páginas internas (faq, datos-utiles, etc.) ── */
#hero.inner-hero{ min-height:38vh;display:flex;align-items:center;background:var(--navy);padding:140px 5% 60px;position:relative;overflow:hidden; }
#hero.inner-hero #heroBg{ position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle 300px at 70% 50%,rgba(var(--blue-rgb), 0.22) 0%,transparent 70%); }
#hero.inner-hero .hero-grid{ position:absolute;inset:0;pointer-events:none;opacity:.025;background-image:linear-gradient(rgba(var(--white-rgb), .5) 1px,transparent 1px),linear-gradient(90deg,rgba(var(--white-rgb), .5) 1px,transparent 1px);background-size:60px 60px; }
#hero.inner-hero .hero-content{ position:relative;z-index:1;text-align:center;max-width:700px;margin:0 auto; }
#hero.inner-hero h1{ font-family:'Syne',sans-serif;font-size:clamp(2rem,4vw,3rem);font-weight:800;color:var(--white)!important;line-height:1.15;margin-bottom:14px;letter-spacing:-.02em; }
#hero.inner-hero h1 span{ color:var(--blue-lighter)!important; }
#hero.inner-hero p{ font-size:17px;color:rgba(var(--white-rgb), 0.65)!important;line-height:1.7;font-weight:300;max-width:500px;margin:0 auto; }

