/* /agentes/verificacion — agent landing page: verified buyers before every showing. Scoped under .av. */
.av { --av-gold: var(--accent, #c9a84c); --av-gold-l: var(--accent-light, #e4cc7a); --av-ink: #0a0a0a; overflow-x: hidden; }
.av .av-wrap { max-width: 1180px; margin: 0 auto; padding: 0 20px; }
.av .av-narrow { max-width: 820px; }
.av h1, .av h2 { font-family: 'Playfair Display', Georgia, serif; line-height: 1.12; letter-spacing: -0.01em; }
.av h2 { font-size: clamp(1.7rem, 3.6vw, 2.5rem); margin: 6px 0 18px; }
.av h3 { font-size: 1.05rem; margin: 10px 0 6px; }
.av-ico { width: 28px; height: 28px; flex: none; }
.av .sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.av-kicker { display: inline-block; text-transform: uppercase; letter-spacing: 0.14em; font-size: 0.74rem; font-weight: 700; color: var(--av-gold); }
.av-kicker.dark { color: var(--accent-dark, #a88a3a); }
.av-fine { font-size: 0.85rem; opacity: 0.8; }

/* hero */
.av-hero { position: relative; background: radial-gradient(ellipse at 80% 20%, rgba(201,168,76,0.18), transparent 55%), linear-gradient(160deg, #000 0%, #0d0d0d 45%, #1a1a1a 100%); color: #f4f1ea; padding: 120px 0 72px; overflow: hidden; }
.av-hero::after { content: ''; position: absolute; inset: 0; background-image: linear-gradient(rgba(201,168,76,0.06) 1px, transparent 1px), linear-gradient(90deg, rgba(201,168,76,0.06) 1px, transparent 1px); background-size: 44px 44px; mask-image: linear-gradient(180deg, transparent, #000 30%, #000 70%, transparent); pointer-events: none; }
.av-hero-grid { position: relative; z-index: 1; display: grid; grid-template-columns: 1.15fr 0.85fr; gap: 48px; align-items: center; }
.av-hero h1 { font-size: clamp(2.2rem, 6vw, 4rem); margin: 12px 0 18px; color: #fff; }
.av-hero h1 em { font-style: italic; color: var(--av-gold-l); }
.av-lead { font-size: 1.12rem; line-height: 1.6; color: rgba(244,241,234,0.86); max-width: 38em; }
.av-hero .av-fine a { color: var(--av-gold-l); }
.av-cta { display: flex; flex-wrap: wrap; gap: 12px; margin: 26px 0 14px; }
.av-cta.center { justify-content: center; }
.av-btn { display: inline-flex; align-items: center; justify-content: center; padding: 14px 26px; border-radius: 999px; background: linear-gradient(135deg, var(--av-gold-l), var(--av-gold)); color: #111 !important; font-weight: 700; text-decoration: none; box-shadow: 0 8px 30px rgba(201,168,76,0.28); transition: transform .2s, box-shadow .2s; }
.av-btn:hover { transform: translateY(-2px); box-shadow: 0 12px 36px rgba(201,168,76,0.4); }
.av-btn-ghost { background: transparent; color: var(--av-gold-l) !important; border: 1px solid rgba(201,168,76,0.6); box-shadow: none; }

/* animated ID card */
.av-hero-art { display: flex; justify-content: center; }
.av-idcard { position: relative; width: min(100%, 360px); background: linear-gradient(145deg, #1d1d1d, #111); border: 1px solid rgba(201,168,76,0.45); border-radius: 18px; padding: 18px; box-shadow: 0 30px 80px rgba(0,0,0,0.55), inset 0 1px 0 rgba(255,255,255,0.06); overflow: hidden; transform: rotate(-2deg); }
.av-id-top { display: flex; justify-content: space-between; align-items: center; font-size: 0.7rem; letter-spacing: 0.2em; color: var(--av-gold); font-weight: 700; }
.av-id-chip { width: 34px; height: 24px; border-radius: 5px; background: linear-gradient(135deg, #e4cc7a, #a88a3a); }
.av-id-body { display: flex; gap: 14px; margin: 16px 0; }
.av-id-photo { width: 78px; height: 94px; border-radius: 10px; background: #2a2a2a; display: flex; align-items: flex-end; justify-content: center; overflow: hidden; }
.av-id-photo svg { width: 64px; fill: #555; }
.av-id-lines { flex: 1; display: flex; flex-direction: column; gap: 10px; padding-top: 6px; }
.av-id-lines i { display: block; height: 9px; border-radius: 5px; background: #333; } .av-id-lines i.s { width: 62%; }
.av-scan { position: absolute; left: 0; right: 0; top: 40px; height: 70px; background: linear-gradient(180deg, transparent, rgba(228,204,122,0.28) 50%, transparent); border-bottom: 2px solid rgba(228,204,122,0.9); animation: av-scan 3.2s ease-in-out infinite; pointer-events: none; }
@keyframes av-scan { 0%, 100% { transform: translateY(0); opacity: .2; } 50% { transform: translateY(80px); opacity: 1; } }
.av-checks { list-style: none; margin: 0; padding: 12px 0 0; border-top: 1px solid rgba(255,255,255,0.08); display: grid; gap: 8px; }
.av-checks li { display: flex; align-items: center; gap: 8px; font-size: 0.9rem; color: #e9e4d6; opacity: 0; animation: av-tick .5s ease forwards; }
.av-checks li:nth-child(1) { animation-delay: .6s; } .av-checks li:nth-child(2) { animation-delay: 1.2s; } .av-checks li:nth-child(3) { animation-delay: 1.8s; }
.av-checks .av-ico { width: 20px; height: 20px; color: #4cc38a; stroke-width: 2.6; }
@keyframes av-tick { from { opacity: 0; transform: translateX(-8px); } to { opacity: 1; transform: none; } }

/* sections */
.av-sec { padding: 72px 0; background: var(--bg, #f8f7f4); color: var(--text, #1a1a1a); }
.av-alt { background: var(--card-bg, #fff); }
.av-dark { background: linear-gradient(160deg, #0a0a0a, #161616); color: #f1ede4; }
.av-dark h2 { color: #fff; }

.av-steps { list-style: none; margin: 18px 0 0; padding: 0; display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px; counter-reset: s; position: relative; }
.av-steps li { position: relative; background: var(--card-bg, #fff); border: 1px solid var(--border, #e8e6e1); border-radius: 16px; padding: 22px 18px; box-shadow: var(--shadow); }
.av-steps li:not(:last-child)::after { content: ''; position: absolute; top: 44px; right: -14px; width: 12px; height: 2px; background: var(--av-gold); }
.av-step-n { position: absolute; top: 14px; right: 16px; font: 700 0.8rem Inter, sans-serif; color: var(--accent-dark, #a88a3a); }
.av-step-ico { width: 40px; height: 40px; padding: 8px; border-radius: 12px; background: rgba(201,168,76,0.14); color: var(--accent-dark, #a88a3a); }
.av-steps p { font-size: 0.92rem; color: var(--text-light, #666); margin: 0; }

.av-split { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; }
.av-split p { color: var(--text-light, #666); line-height: 1.65; }
.av-lead-card { background: #fff; color: #1a1a1a; border: 1px solid #eadfbf; border-radius: 18px; padding: 20px; box-shadow: 0 24px 60px rgba(0,0,0,0.12); max-width: 440px; justify-self: center; width: 100%; }
.av-lc-head { display: flex; gap: 14px; align-items: center; }
.av-lc-avatar { width: 58px; height: 58px; border-radius: 50%; background: #ece7da; overflow: hidden; display: flex; align-items: flex-end; justify-content: center; border: 2px solid #4cc38a; }
.av-lc-avatar svg { width: 46px; fill: #b9b09a; }
.av-lc-head b { display: block; font-size: 1.1rem; }
.av-badge { display: inline-flex; align-items: center; gap: 4px; background: #e7f5ec; color: #1f6b3d; border-radius: 999px; padding: 2px 10px 2px 6px; font-size: 0.78rem; font-weight: 600; margin-top: 4px; }
.av-badge .av-ico { width: 16px; height: 16px; stroke-width: 2.6; }
.av-lc-rows { margin: 16px 0 10px; display: grid; gap: 8px; }
.av-lc-rows div { display: flex; justify-content: space-between; gap: 12px; font-size: 0.9rem; border-bottom: 1px dashed #eee; padding-bottom: 6px; }
.av-lc-rows dt { color: #777; } .av-lc-rows dd { margin: 0; font-weight: 600; text-align: right; } .av-lc-rows dd.ok { color: #1f6b3d; }
.av-lc-warn { background: #fdf1e6; color: #8a4b14; border-radius: 8px; padding: 8px 10px; font-size: 0.85rem; margin: 8px 0 12px; }
.av-lc-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.av-chip { border: 1px solid #ddd; border-radius: 999px; padding: 6px 12px; font-size: 0.85rem; font-weight: 600; }
.av-chip.on { background: #0a0a0a; color: #e4cc7a; border-color: #0a0a0a; }

.av-perks { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-top: 10px; }
.av-perk { background: var(--card-bg, #fff); border: 1px solid var(--border, #e8e6e1); border-radius: 16px; padding: 24px; transition: transform .2s, box-shadow .2s; }
.av-perk:hover { transform: translateY(-3px); box-shadow: var(--shadow-lg); }
.av-perk > .av-ico { color: var(--accent-dark, #a88a3a); width: 34px; height: 34px; }
.av-perk p { color: var(--text-light, #666); font-size: 0.95rem; margin: 0; line-height: 1.6; }

.av-claim { font-size: 1.15rem; line-height: 1.6; max-width: 46em; color: #f4f1ea; border-left: 3px solid var(--av-gold); padding-left: 16px; }
.av-claim sup { color: var(--av-gold); }
.av-table-wrap { margin: 26px 0 18px; overflow-x: auto; -webkit-overflow-scrolling: touch; border-radius: 14px; border: 1px solid rgba(255,255,255,0.1); }
.av-table { width: 100%; min-width: 620px; border-collapse: collapse; font-size: 0.92rem; }
.av-table th, .av-table td { padding: 13px 12px; border-bottom: 1px solid rgba(255,255,255,0.08); text-align: center; vertical-align: middle; }
.av-table thead th { font-size: 0.78rem; text-transform: uppercase; letter-spacing: 0.06em; color: #bdb6a4; font-weight: 600; }
.av-table tbody th { text-align: left; font-weight: 500; color: #e9e4d6; }
.av-table .us { background: rgba(201,168,76,0.12); } .av-table thead .us { color: var(--av-gold-l); }
.av-yes .av-ico { color: #4cc38a; stroke-width: 2.6; width: 22px; height: 22px; } .av-no .av-ico { color: #8a8378; width: 18px; height: 18px; } .av-part .av-ico { color: #c9a84c; width: 18px; height: 18px; }
.av-txt { font-size: 0.85rem; color: #e9e4d6; } .av-table .us .av-txt { color: var(--av-gold-l); font-weight: 700; }
.av-note { color: rgba(241,237,228,0.85); max-width: 52em; }
.av-foot { font-size: 0.78rem; color: #9a9384; max-width: 60em; }

.av-stats { background: linear-gradient(90deg, #a88a3a, #c9a84c 50%, #a88a3a); color: #111; padding: 30px 0; }
.av-stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.av-stats b { display: block; font: 700 1.8rem 'Playfair Display', serif; }
.av-stats span { display: block; font-size: 0.85rem; line-height: 1.4; margin: 4px 0; }
.av-stats a { font-size: 0.75rem; color: #3a2e0a; }

.av-faq { background: var(--card-bg, #fff); border: 1px solid var(--border, #e8e6e1); border-radius: 12px; padding: 14px 18px; margin-bottom: 10px; }
.av-faq summary { cursor: pointer; font-weight: 600; }
.av-faq p { color: var(--text-light, #666); margin: 10px 0 0; line-height: 1.6; }
.av-links { margin-top: 20px; font-size: 0.92rem; }

.av-final { background: radial-gradient(ellipse at 50% 0%, rgba(201,168,76,0.22), transparent 60%), #0a0a0a; color: #f4f1ea; text-align: center; padding: 72px 0; }
.av-final h2 { color: #fff; } .av-final p { color: rgba(244,241,234,0.85); max-width: 40em; margin: 0 auto; }

/* light theme (site toggle): cream hero, same gold accents */
:root[data-theme="light"] .av-hero { background: radial-gradient(ellipse at 80% 20%, rgba(201,168,76,0.22), transparent 55%), linear-gradient(160deg, #fbfaf7, #f1ede4 45%, #e9e2d3); color: #0b1f33; }
:root[data-theme="light"] .av-hero h1 { color: #0b1f33; } :root[data-theme="light"] .av-hero h1 em { color: var(--accent-dark); }
:root[data-theme="light"] .av-lead { color: #33404d; } :root[data-theme="light"] .av-hero .av-fine a, :root[data-theme="light"] .av-btn-ghost { color: #7a5a00 !important; }

@media (max-width: 1000px) {
  .av-steps { grid-template-columns: 1fr; gap: 12px; }
  .av-steps li { display: grid; grid-template-columns: 44px 1fr; column-gap: 14px; padding: 16px; }
  .av-steps li .av-step-ico { grid-row: span 2; } .av-steps h3 { margin: 0 0 4px; }
  .av-steps li:not(:last-child)::after { top: auto; bottom: -12px; left: 36px; right: auto; width: 2px; height: 12px; }
  .av-perks { grid-template-columns: 1fr 1fr; }
  .av-stats-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 760px) {
  .av-hero { padding: 100px 0 48px; }
  .av-hero-grid, .av-split { grid-template-columns: 1fr; gap: 32px; }
  .av-idcard { transform: none; }
  .av-perks { grid-template-columns: 1fr; }
  .av-sec, .av-final { padding: 52px 0; }
  .av-btn { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .av-scan { animation: none; opacity: .5; transform: translateY(40px); }
  .av-checks li { animation: none; opacity: 1; }
  .av-btn, .av-perk { transition: none; }
}
.av-swipe { display: none; font-size: 0.8rem; color: #bdb6a4; margin: 18px 0 -14px; }
@media (max-width: 700px) { .av-swipe { display: block; } .av-table th, .av-table td { padding: 10px 8px; } .av-table tbody th { min-width: 150px; } }
