/* Página de Pauta en Meta y Google. Usa la base de inicio.css (ix-*) y agrega las piezas propias (pa-*). */

.pa-cab { max-width: 980px; margin-bottom: 70px; }
.pa-cab > p { margin: 26px 0 0; max-width: 34em; font-size: 18px; line-height: 1.7; color: rgba(244,239,227,.68); }
.pa-cab-claro > p { color: #3B3A36; }
.pa p a { color: #C9A84C; }

/* ── Portada ── */
.pa-hero { position: relative; min-height: max(100svh, 760px); display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); align-items: center; gap: 2vw;
  padding: 150px 4vw 90px; overflow: hidden; isolation: isolate;
  background: radial-gradient(60% 70% at 78% 55%, rgba(201,168,76,.16), transparent 70%), #0A0A0A; }
.pa-rejilla { position: absolute; inset: 0; z-index: -1; background-image: linear-gradient(rgba(244,239,227,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(244,239,227,.045) 1px, transparent 1px);
  background-size: 64px 64px; -webkit-mask-image: radial-gradient(70% 80% at 70% 50%, #000, transparent 78%); mask-image: radial-gradient(70% 80% at 70% 50%, #000, transparent 78%);
  animation: pa-rejilla 22s linear infinite; }
@keyframes pa-rejilla { to { background-position: 64px 64px; } }
.pa-hero-txt { position: relative; z-index: 3; }
.pa-migas { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 26px; font-size: 13px; color: rgba(244,239,227,.5); }
.pa-migas a { color: rgba(244,239,227,.7); text-decoration: none; }
.pa-migas a:hover { color: #C9A84C; }
.pa-h1 { font-family: 'Playfair Display', Georgia, serif; font-weight: 700; font-size: clamp(40px, 5.3vw, 86px); line-height: 1.02; letter-spacing: -.5px; margin: 0; color: #F4EFE3; }
.pa-h1 em { display: block; color: #C9A84C; }
.pa-lead { margin: 30px 0 36px; max-width: 34em; font-size: 18px; line-height: 1.7; color: rgba(244,239,227,.75); }
.pa-lead strong { color: #F4EFE3; }
.pa-datos { display: flex; flex-wrap: wrap; gap: 18px 46px; margin-top: 52px; padding-top: 28px; border-top: 1px solid rgba(244,239,227,.16); }
.pa-datos b { display: block; font-family: 'Playfair Display', serif; font-size: 46px; line-height: 1; color: #C9A84C; }
.pa-datos div > span { font-size: 13.5px; color: rgba(244,239,227,.6); }

.pa-escena { position: relative; height: min(78vh, 720px); min-height: 560px; }
.pa-arco { position: absolute; left: 14%; right: 6%; bottom: 0; top: 12%; border-radius: 999px 999px 0 0; background: linear-gradient(180deg, #C9A84C, #8F7430);
  transform: scaleY(0); transform-origin: bottom; animation: pa-subir 1.4s cubic-bezier(.7,0,.2,1) .2s forwards; }
.pa-lore { position: absolute; left: 50%; bottom: 0; height: 96%; width: auto; translate: -46% 0; z-index: 2; filter: drop-shadow(0 30px 50px rgba(0,0,0,.45));
  opacity: 0; animation: pa-lore 1.5s cubic-bezier(.2,.8,.2,1) .7s forwards; }
@keyframes pa-subir { to { transform: scaleY(1); } }
@keyframes pa-lore { from { opacity: 0; transform: translateY(60px) scale(.96); } to { opacity: 1; transform: none; } }
.pa-orbita { position: absolute; left: 50%; top: 52%; border: 1px dashed rgba(201,168,76,.35); border-radius: 50%; translate: -50% -50%; animation: pa-girar 26s linear infinite; }
.pa-o1 { width: 112%; aspect-ratio: 1; }
.pa-o2 { width: 82%; aspect-ratio: 1; animation-duration: 18s; animation-direction: reverse; border-style: solid; border-color: rgba(244,239,227,.08); }
.pa-orbita i { position: absolute; left: 50%; top: -6px; width: 12px; height: 12px; margin-left: -6px; border-radius: 50%; background: #E8C96A; box-shadow: 0 0 18px #C9A84C; }
@keyframes pa-girar { to { rotate: 360deg; } }

/* Tarjetas flotantes */
.pa-flota { position: absolute; z-index: 4; background: #F4EFE3; color: #0A0A0A; border-radius: 16px; box-shadow: 0 30px 60px rgba(0,0,0,.45);
  opacity: 0; animation: pa-entra .9s cubic-bezier(.2,.9,.25,1.2) forwards, pa-flotar 6s ease-in-out infinite; }
@keyframes pa-entra { from { opacity: 0; transform: translateY(30px) scale(.85); } to { opacity: 1; transform: none; } }
@keyframes pa-flotar { 0%, 100% { translate: 0 0; } 50% { translate: 0 -14px; } }
.pa-f-google { left: -6%; top: 14%; width: 330px; padding: 14px; animation-delay: 1.4s, 2.3s; }
.pa-f-meta { right: -2%; top: 30%; width: 190px; padding: 10px; animation-delay: 1.8s, 2.7s; rotate: 4deg; }
.pa-f-wa { left: 2%; bottom: 10%; display: flex; align-items: center; gap: 12px; padding: 14px 18px; max-width: 320px; animation-delay: 2.3s, 3.2s; }
.pa-g-barra { display: flex; align-items: center; gap: 10px; padding: 10px 14px; border-radius: 999px; background: #fff; box-shadow: 0 0 0 1px rgba(10,10,10,.1); font-size: 13.5px; min-height: 40px; }
.pa-g-logo { flex: none; width: 22px; height: 22px; display: grid; place-items: center; border-radius: 50%; font: 700 13px/1 'DM Sans', sans-serif; color: #fff;
  background: conic-gradient(#4285F4 0 25%, #34A853 0 50%, #FBBC05 0 75%, #EA4335 0); }
.pa-g-q { white-space: nowrap; overflow: hidden; border-right: 2px solid #0A0A0A; padding-right: 2px; animation: pa-parpadeo 1s steps(1) infinite; }
@keyframes pa-parpadeo { 50% { border-color: transparent; } }
.pa-g-res { padding: 12px 6px 4px; }
.pa-g-res small { display: block; font-size: 11.5px; color: #5f5f5f; }
.pa-g-res b { display: block; margin-top: 3px; font-size: 16px; color: #1a0dab; font-weight: 500; }
.pa-m-cab { display: flex; align-items: center; gap: 8px; font-size: 12px; line-height: 1.2; padding: 2px 2px 8px; }
.pa-m-cab small { display: block; color: #6b6b6b; font-size: 10.5px; }
.pa-m-av { flex: none; width: 28px; height: 28px; border-radius: 50%; background: linear-gradient(135deg, #C9A84C, #0A0A0A); box-shadow: 0 0 0 2px #fff, 0 0 0 3px #C9A84C; }
.pa-m-foto { aspect-ratio: 4 / 5; border-radius: 10px; background-size: cover; background-position: center; }
.pa-m-cta { display: flex; justify-content: space-between; margin-top: 8px; padding: 9px 12px; border-radius: 8px; background: #0A0A0A; color: #F4EFE3; font-size: 12.5px; font-weight: 600; }
.pa-wa-ico { flex: none; width: 42px; height: 42px; display: grid; place-items: center; border-radius: 50%; background: #25D366; color: #fff; }
.pa-wa-ico svg { width: 22px; height: 22px; }
.pa-f-wa small { display: block; font-size: 11.5px; color: #1f8f4e; font-weight: 600; }
.pa-f-wa b { font-size: 14px; font-weight: 500; line-height: 1.35; }
.pa-f-wa::after { content: "1"; position: absolute; right: -8px; top: -8px; width: 24px; height: 24px; border-radius: 50%; background: #C9A84C; color: #0A0A0A; font: 700 12px/24px 'DM Sans', sans-serif; text-align: center;
  animation: pa-ping 2s ease-out 3.4s infinite; }
@keyframes pa-ping { 0% { box-shadow: 0 0 0 0 rgba(201,168,76,.7); } 100% { box-shadow: 0 0 0 16px rgba(201,168,76,0); } }

/* ── Dolores ── */
.pa-dolor { padding: 140px 4vw 120px; background: #0A0A0A; }
.pa-dolor .ix-mega { max-width: 10em; }
.pa-dolor-lista { border-top: 1px solid rgba(201,168,76,.3); }
.pa-queja { display: grid; grid-template-columns: 90px minmax(0, 1.25fr) minmax(0, 1fr); gap: 20px 40px; align-items: start; padding: 46px 0; border-bottom: 1px solid rgba(201,168,76,.18); }
.pa-queja .ix-num { font-size: 24px; color: #C9A84C; padding-top: 6px; }
.pa-queja h3 { margin: 0; font-family: 'Playfair Display', serif; font-weight: 700; font-size: clamp(24px, 2.7vw, 40px); line-height: 1.15; color: #F4EFE3; }
.pa-queja s { text-decoration: none; background: linear-gradient(#C9A84C, #C9A84C) no-repeat 0 58% / 0% 3px; transition: background-size 1.1s cubic-bezier(.7,0,.2,1) .5s, color .8s .9s; }
.pa-queja.ix-in s { background-size: 100% 3px; color: rgba(244,239,227,.42); }
.pa-queja p { margin: 0; font-size: 16px; line-height: 1.75; color: rgba(244,239,227,.68); opacity: 0; transform: translateX(30px); transition: opacity .9s 1.1s, transform 1s cubic-bezier(.2,.7,.2,1) 1.1s; }
.pa-queja.ix-in p { opacity: 1; transform: none; }

/* ── Recorrido fijo con teléfono ── */
.pa-recorrido { position: relative; background: #F4EFE3; color: #0A0A0A; padding: 140px 4vw 120px; }
.pa-recorrido .ix-mega { max-width: 11em; }
.pa-rec-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 6vw; }
.pa-rec-paso { min-height: 78vh; display: flex; flex-direction: column; justify-content: center; opacity: .25; transition: opacity .6s; }
.pa-rec-paso.pa-on { opacity: 1; }
.pa-rec-n { font-size: 13px; font-weight: 600; letter-spacing: 3px; text-transform: uppercase; color: #8F7430; }
.pa-rec-paso h3 { margin: 18px 0 18px; font-family: 'Playfair Display', serif; font-weight: 700; font-size: clamp(32px, 3.6vw, 56px); line-height: 1.05; }
.pa-rec-paso p { margin: 0; max-width: 28em; font-size: 18px; line-height: 1.7; color: #3B3A36; }
.pa-rec-fijo { position: sticky; top: 14vh; height: 78vh; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 22px; }
.pa-tel { position: relative; height: min(64vh, 600px); max-width: 86%; aspect-ratio: 9 / 18.5; border-radius: 44px; background: #0A0A0A; padding: 12px; box-shadow: 0 60px 100px rgba(10,10,10,.28), inset 0 0 0 2px #2a2a28;
  rotate: -4deg; transition: rotate .8s cubic-bezier(.2,.7,.2,1); }
.pa-tel[data-en="1"] { rotate: 3deg; } .pa-tel[data-en="2"] { rotate: 0deg; }
.pa-tel-isla { position: absolute; left: 50%; top: 20px; width: 90px; height: 24px; margin-left: -45px; border-radius: 20px; background: #000; z-index: 5; }
.pa-pant { position: absolute; inset: 12px; border-radius: 34px; overflow: hidden; background: #fff; padding: 54px 14px 14px; opacity: 0; transform: translateY(40px) scale(.96); transition: opacity .55s, transform .7s cubic-bezier(.2,.8,.2,1); }
.pa-pant.pa-activa { opacity: 1; transform: none; }
.pa-ig-top { display: flex; justify-content: space-between; align-items: center; font: italic 700 20px 'Playfair Display', serif; padding: 0 4px 12px; }
.pa-ig-top span { width: 20px; height: 20px; border-radius: 6px; box-shadow: inset 0 0 0 2px #0A0A0A; }
.pa-ig-img { position: relative; aspect-ratio: 4 / 5; border-radius: 10px; background-size: cover; background-position: center 30%; overflow: hidden; }
.pa-ig-pregunta { position: absolute; left: 10px; right: 10px; bottom: 10px; padding: 10px 12px; border-radius: 10px; background: rgba(10,10,10,.78); color: #F4EFE3; font: 700 15px/1.25 'Playfair Display', serif; }
.pa-ig-acc { display: flex; gap: 12px; padding: 12px 4px 0; }
.pa-ig-acc i { width: 22px; height: 20px; border-radius: 5px; box-shadow: inset 0 0 0 2px #0A0A0A; }
.pa-ig-acc .pa-like { border-radius: 50% 50% 4px 50%; rotate: 45deg; width: 17px; height: 17px; margin: 2px 2px 0; }
.pa-activa .pa-like { animation: pa-like 2.4s ease-in-out 1s infinite; }
@keyframes pa-like { 0%, 40% { background: transparent; scale: 1; } 50% { background: #E0245E; box-shadow: none; scale: 1.35; } 60%, 100% { background: #E0245E; box-shadow: none; scale: 1; } }
.pa-gs-logo { text-align: center; font: 500 30px 'DM Sans', sans-serif; letter-spacing: -1px; color: #4285F4; margin: 6px 0 14px; }
.pa-gs-logo span { color: #4285F4; }
.pa-pant-g .pa-g-barra { margin-bottom: 14px; }
.pa-g-q2 { white-space: nowrap; overflow: hidden; width: 0; border-right: 2px solid #0A0A0A; }
.pa-pant-g.pa-activa .pa-g-q2 { animation: pa-teclear 1.8s steps(31) .3s forwards; }
@keyframes pa-teclear { to { width: 31ch; } }
.pa-gs-res { position: relative; padding: 12px 6px; border-bottom: 1px solid #eee; font-size: 12px; line-height: 1.45; color: #4d5156; opacity: 0; transform: translateY(14px); transition: opacity .5s, transform .5s; }
.pa-activa .pa-gs-res { opacity: 1; transform: none; }
.pa-activa .pa-gs-res { transition-delay: var(--d, 0s); }
.pa-gs-res small { font-weight: 700; color: #0A0A0A; margin-right: 6px; }
.pa-gs-res em { font-style: normal; font-size: 11.5px; }
.pa-gs-res b { display: block; margin: 2px 0 3px; font-size: 15px; font-weight: 500; color: #1a0dab; }
.pa-gs-res p { margin: 0; }
.pa-gs-tuyo { border-radius: 10px; box-shadow: 0 0 0 2px #C9A84C; background: #FFFBEF; }
.pa-cursor { position: absolute; right: 22px; top: 38px; width: 16px; height: 22px; background: #0A0A0A; clip-path: polygon(0 0, 100% 62%, 52% 64%, 74% 100%, 58% 100%, 38% 68%, 0 90%); opacity: 0; }
.pa-activa .pa-cursor { animation: pa-clic 1.6s ease 3s forwards; }
@keyframes pa-clic { 0% { opacity: 0; translate: 50px 60px; } 60% { opacity: 1; translate: 0 0; scale: 1; } 75% { scale: .8; } 100% { opacity: 1; scale: 1; } }
.pa-pant-wa { background: #ECE5DD; padding: 0; }
.pa-wa-top { display: flex; align-items: center; gap: 10px; padding: 54px 14px 12px; background: #075E54; color: #fff; font-size: 14px; }
.pa-wa-top small { margin-left: auto; font-size: 11px; opacity: .8; }
.pa-chat { display: flex; flex-direction: column; gap: 8px; padding: 16px 12px; }
.pa-b { max-width: 82%; margin: 0; padding: 9px 12px; border-radius: 12px; font-size: 13px; line-height: 1.4; box-shadow: 0 1px 1px rgba(0,0,0,.1); opacity: 0; transform: translateY(12px) scale(.9); transition: opacity .4s, transform .5s cubic-bezier(.2,.9,.3,1.3); }
.pa-b-in { align-self: flex-start; background: #fff; border-top-left-radius: 2px; transform-origin: 0 100%; }
.pa-b-out { align-self: flex-end; background: #DCF8C6; border-top-right-radius: 2px; transform-origin: 100% 100%; }
.pa-activa .pa-b { opacity: 1; transform: none; }
.pa-activa .pa-b:nth-child(1) { transition-delay: .4s; } .pa-activa .pa-b:nth-child(2) { transition-delay: 1.2s; }
.pa-activa .pa-b:nth-child(3) { transition-delay: 2.4s; } .pa-activa .pa-b:nth-child(4) { transition-delay: 3.4s; }
.pa-escribe { align-self: flex-start; display: flex; gap: 4px; margin: 0; padding: 10px 12px; border-radius: 12px; background: #fff; }
.pa-escribe i { width: 6px; height: 6px; border-radius: 50%; background: #9a9a9a; animation: pa-punto 1.2s ease-in-out infinite; }
.pa-escribe i:nth-child(2) { animation-delay: .15s; } .pa-escribe i:nth-child(3) { animation-delay: .3s; }
@keyframes pa-punto { 0%, 60%, 100% { transform: none; } 30% { transform: translateY(-5px); } }
.pa-rec-barra { display: flex; gap: 8px; }
.pa-rec-barra i { width: 34px; height: 4px; border-radius: 4px; background: rgba(10,10,10,.15); overflow: hidden; position: relative; }
.pa-rec-barra i::after { content: ""; position: absolute; inset: 0; background: #C9A84C; transform: scaleX(0); transform-origin: left; transition: transform .6s; }
.pa-rec-barra i.pa-on::after { transform: scaleX(1); }

/* ── Qué incluye ── */
.pa-incluye { padding: 140px 4vw; background: radial-gradient(50% 60% at 15% 20%, rgba(201,168,76,.1), transparent 70%), #0A0A0A; }
.pa-inc-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.pa-inc-col { padding: 36px 32px 40px; border-radius: 22px; background: #121211; box-shadow: inset 0 0 0 1px rgba(201,168,76,.2); }
.pa-inc-col.ix-rv:nth-child(2) { transition-delay: .12s; } .pa-inc-col.ix-rv:nth-child(3) { transition-delay: .24s; }
.pa-inc-oro { background: #C9A84C; color: #0A0A0A; box-shadow: none; }
.pa-inc-cab { display: flex; align-items: center; gap: 14px; padding-bottom: 24px; margin-bottom: 8px; border-bottom: 1px solid rgba(201,168,76,.25); }
.pa-inc-oro .pa-inc-cab { border-color: rgba(10,10,10,.25); }
.pa-inc-cab h3 { margin: 0; font-family: 'Playfair Display', serif; font-size: 30px; }
.pa-inc-logo { width: 46px; height: 46px; display: grid; place-items: center; border-radius: 14px; background: #F4EFE3; color: #0A0A0A; font: 700 22px/1 'DM Sans', sans-serif; }
.pa-inc-g { background: conic-gradient(#4285F4 0 25%, #34A853 0 50%, #FBBC05 0 75%, #EA4335 0); color: #fff; }
.pa-inc-m { background: linear-gradient(135deg, #0866FF, #A33BFF); color: #fff; font-size: 28px; }
.pa-inc-oro .pa-inc-logo { background: #0A0A0A; color: #C9A84C; }
.pa-checks { list-style: none; margin: 0; padding: 0; }
.pa-checks li { position: relative; padding: 18px 0 18px 40px; font-size: 14.5px; line-height: 1.6; color: rgba(244,239,227,.62); border-bottom: 1px solid rgba(244,239,227,.07); }
.pa-checks li:last-child { border-bottom: 0; }
.pa-checks b { display: block; font-size: 16px; color: #F4EFE3; margin-bottom: 2px; }
.pa-inc-oro .pa-checks li { color: rgba(10,10,10,.72); border-color: rgba(10,10,10,.12); }
.pa-inc-oro .pa-checks b { color: #0A0A0A; }
.pa-checks li::before { content: ""; position: absolute; left: 0; top: 20px; width: 24px; height: 24px; border-radius: 50%; box-shadow: inset 0 0 0 1.5px #C9A84C; transform: scale(0); transition: transform .5s cubic-bezier(.2,.9,.3,1.4); }
.pa-checks li::after { content: ""; position: absolute; left: 8px; top: 25px; width: 6px; height: 11px; border: solid #C9A84C; border-width: 0 2px 2px 0; rotate: 45deg; clip-path: inset(100% 0 0 0); transition: clip-path .45s ease; }
.pa-inc-oro .pa-checks li::before { box-shadow: inset 0 0 0 1.5px #0A0A0A; } .pa-inc-oro .pa-checks li::after { border-color: #0A0A0A; }
.ix-in .pa-checks li::before { transform: scale(1); }
.ix-in .pa-checks li::after { clip-path: inset(0); }
.pa-checks li:nth-child(1)::before { transition-delay: .5s; } .pa-checks li:nth-child(1)::after { transition-delay: .8s; }
.pa-checks li:nth-child(2)::before { transition-delay: .75s; } .pa-checks li:nth-child(2)::after { transition-delay: 1.05s; }
.pa-checks li:nth-child(3)::before { transition-delay: 1s; } .pa-checks li:nth-child(3)::after { transition-delay: 1.3s; }
.pa-checks li:nth-child(4)::before { transition-delay: 1.25s; } .pa-checks li:nth-child(4)::after { transition-delay: 1.55s; }

/* ── Reporte ── */
.pa-reporte { position: relative; min-height: 100svh; display: flex; align-items: center; padding: 130px 4vw; overflow: hidden; isolation: isolate; }
.pa-rep-foto { position: absolute; inset: -12% 0; z-index: -2; background-size: cover; background-position: center 30%; will-change: translate; }
.pa-rep-velo { position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, #0A0A0A 0%, rgba(10,10,10,.85) 40%, rgba(10,10,10,.35) 100%); }
.pa-rep-in { width: 100%; display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1fr); gap: 5vw; align-items: center; }
.pa-rep-txt p { margin: 24px 0 0; max-width: 30em; font-size: 18px; line-height: 1.7; color: rgba(244,239,227,.78); }
.pa-tablero { padding: 26px; border-radius: 22px; background: rgba(18,18,17,.82); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); box-shadow: inset 0 0 0 1px rgba(201,168,76,.28), 0 40px 80px rgba(0,0,0,.5);
  opacity: 0; transform: perspective(1400px) rotateY(-14deg) rotateX(6deg) translateY(40px); transition: opacity 1s, transform 1.4s cubic-bezier(.2,.7,.2,1); }
.pa-tablero.pa-vivo { opacity: 1; transform: perspective(1400px) rotateY(-5deg) rotateX(2deg); }
.pa-tab-cab { display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px; }
.pa-tab-cab b { font-family: 'Playfair Display', serif; font-size: 22px; }
.pa-tab-cab span { font-size: 11px; letter-spacing: 2px; text-transform: uppercase; color: #0A0A0A; background: #C9A84C; padding: 5px 10px; border-radius: 999px; }
.pa-kpis { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.pa-kpis > div { padding: 16px; border-radius: 14px; background: rgba(244,239,227,.05); }
.pa-kpis small { display: block; font-size: 12px; color: rgba(244,239,227,.6); }
.pa-kpis b { display: block; margin: 6px 0 4px; font-family: 'Playfair Display', serif; font-size: clamp(30px, 3vw, 44px); line-height: 1; color: #F4EFE3; }
.pa-kpis em { font-style: normal; font-size: 11.5px; color: #7BD88F; }
.pa-graf { display: block; width: 100%; height: 150px; margin: 18px 0 8px; overflow: visible; }
.pa-graf-rej line { stroke: rgba(244,239,227,.08); stroke-width: 1; }
.pa-graf-area { fill: rgba(201,168,76,.16); opacity: 0; transition: opacity 1s 1.6s; }
.pa-graf-linea { fill: none; stroke: #C9A84C; stroke-width: 3; stroke-linecap: round; stroke-dasharray: 1; stroke-dashoffset: 1; transition: stroke-dashoffset 2s cubic-bezier(.6,0,.2,1) .5s; vector-effect: non-scaling-stroke; }
.pa-graf-punto { fill: #E8C96A; transform-box: fill-box; transform-origin: center; transform: scale(0); transition: transform .5s cubic-bezier(.2,.9,.3,1.6) 2.4s; }
.pa-vivo .pa-graf-area { opacity: 1; } .pa-vivo .pa-graf-linea { stroke-dashoffset: 0; } .pa-vivo .pa-graf-punto { transform: scale(1); animation: pa-ping 2s ease-out 3s infinite; }
.pa-barras { display: grid; grid-template-columns: 60px 1fr; gap: 10px 14px; align-items: center; font-size: 12.5px; color: rgba(244,239,227,.65); }
.pa-barras i { height: 8px; border-radius: 8px; background: linear-gradient(90deg, #8F7430, #E8C96A); transform: scaleX(0); transform-origin: left; transition: transform 1.4s cubic-bezier(.2,.7,.2,1) 1s; }
.pa-vivo .pa-barras i { transform: scaleX(var(--v)); }

/* ── Proceso (sobre la base ix-proceso) ── */
.pa-proceso .ix-proc-grid { margin-top: 70px; }
.pa-proc-grid .ix-paso:first-child { grid-column: auto; }
.pa-proc-linea { position: relative; height: 2px; margin-top: 70px; background: rgba(10,10,10,.12); }
.pa-proc-linea i { position: absolute; inset: 0; background: #C9A84C; transform: scaleX(var(--p, 0)); transform-origin: left; }
.pa-proceso .ix-paso { border-top: 0; }

/* ── Precio ── */
.pa-precio { padding: 140px 4vw; background: #C9A84C; color: #0A0A0A; overflow: hidden; }
.pa-precio-in { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 6vw; align-items: center; }
.pa-precio .ix-eti-oro { color: #0A0A0A; }
.pa-precio-num { margin: 0; font-family: 'Playfair Display', serif; font-weight: 900; line-height: .9; }
.pa-precio-num small { display: block; font: 600 16px/1.6 'DM Sans', sans-serif; letter-spacing: .5px; }
.pa-precio-num > span { display: block; font-size: clamp(110px, 16vw, 250px); line-height: .82; letter-spacing: -.04em; margin: 10px 0 22px; }
.pa-precio-num sup { font-size: .38em; vertical-align: top; position: relative; top: .18em; margin-right: .04em; }
.pa-precio-in > div > p { max-width: 30em; font-size: 17px; line-height: 1.7; margin: 26px 0; }
.pa-sellos { list-style: none; margin: 0 0 36px; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; }
.pa-sellos li { padding: 9px 16px; border-radius: 999px; box-shadow: inset 0 0 0 1px rgba(10,10,10,.4); font-size: 14px; font-weight: 600; }
.pa-precio .ix-btn-oro { background: #0A0A0A; color: #F4EFE3; }
.pa-precio .ix-btn-oro:hover { background: #2a2a28; }
.pa-propuesta { padding: 44px 40px; border-radius: 26px; background: #0A0A0A; color: #F4EFE3; box-shadow: 0 50px 90px rgba(10,10,10,.35); }
.pa-propuesta h3 { margin: 0 0 18px; font-family: 'Playfair Display', serif; font-size: 30px; color: #C9A84C; }
.pa-propuesta ol { list-style: none; counter-reset: p; margin: 0; padding: 0; }
.pa-propuesta li { counter-increment: p; position: relative; padding: 18px 0 18px 58px; border-top: 1px solid rgba(244,239,227,.1); font-size: 14.5px; line-height: 1.6; color: rgba(244,239,227,.62); }
.pa-propuesta li::before { content: "0" counter(p); position: absolute; left: 0; top: 18px; font: 700 26px/1 'Playfair Display', serif; color: #C9A84C; }
.pa-propuesta b { display: block; font-size: 17px; color: #F4EFE3; margin-bottom: 2px; }

/* ── Testimonios que se barajan ── */
.pa-testi { padding: 140px 4vw; background: #0A0A0A; }
.pa-testi-in { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1fr); gap: 5vw; align-items: center; }
.pa-testi .pa-cab { margin-bottom: 0; }
.pa-testi .ix-mega { font-size: clamp(38px, 4.8vw, 76px); }
.pa-testi-nav { margin-top: 40px; }
.pa-testi-nav button { display: inline-flex; gap: 12px; padding: 0 0 4px; background: none; border: 0; border-bottom: 2px solid #C9A84C; color: #F4EFE3; font: 600 16px 'DM Sans', sans-serif; cursor: pointer; }
.pa-testi-nav button span { transition: transform .3s; }
.pa-testi-nav button:hover span { transform: translateX(6px); }
.pa-mazo { position: relative; height: 420px; }
.pa-carta { position: absolute; inset: 0; margin: 0; padding: 44px 42px; border-radius: 26px; background: #F4EFE3; color: #0A0A0A; display: flex; flex-direction: column; justify-content: space-between;
  box-shadow: 0 40px 80px rgba(0,0,0,.45); transition: transform .7s cubic-bezier(.2,.8,.2,1), opacity .6s, filter .6s; }
.pa-carta[data-pos="0"] { z-index: 3; transform: none; }
.pa-carta[data-pos="1"] { z-index: 2; transform: translate(26px, -26px) scale(.95) rotate(3deg); filter: brightness(.82); }
.pa-carta[data-pos="2"] { z-index: 1; transform: translate(52px, -52px) scale(.9) rotate(6deg); filter: brightness(.65); }
.pa-carta.pa-sale { z-index: 4; transform: translateX(120%) rotate(14deg); opacity: 0; }
.pa-carta-logo { height: 46px; width: auto; align-self: flex-start; filter: brightness(0); opacity: .85; }
.pa-carta blockquote { margin: 24px 0; font: 700 clamp(20px, 1.9vw, 27px)/1.35 'Playfair Display', serif; }
.pa-carta figcaption { font-size: 14px; color: #5b5a55; }
.pa-carta figcaption b { display: block; font-size: 16px; color: #0A0A0A; }

/* ── Preguntas frecuentes ── */
.pa-faq { padding: 140px 4vw; background: #F4EFE3; color: #0A0A0A; }
.pa-faq-in { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 6vw; align-items: start; }
.pa-faq-lado { position: sticky; top: 140px; }
.pa-faq-lado p { margin: 24px 0 0; font-size: 16px; line-height: 1.7; color: #3B3A36; max-width: 26em; }
.pa-faq .pa-faq-lado a { color: #8F7430; font-weight: 600; }
.pa-faq-lista { border-top: 1px solid #0A0A0A; }
.pa-faq details { border-bottom: 1px solid rgba(10,10,10,.25); }
.pa-faq summary { position: relative; list-style: none; cursor: pointer; padding: 28px 60px 28px 0; font: 700 clamp(19px, 1.7vw, 24px)/1.3 'Playfair Display', serif; transition: color .3s; }
.pa-faq summary::-webkit-details-marker { display: none; }
.pa-faq summary:hover { color: #8F7430; }
.pa-faq summary::before, .pa-faq summary::after { content: ""; position: absolute; right: 8px; top: 50%; width: 18px; height: 2px; background: currentColor; transition: transform .4s cubic-bezier(.2,.8,.2,1); }
.pa-faq summary::after { transform: rotate(90deg); }
.pa-faq details[open] summary::after { transform: rotate(0); }
.pa-faq details[open] summary::before { transform: rotate(180deg); }
.pa-faq details > div { overflow: hidden; }
.pa-faq details p { margin: 0 0 28px; max-width: 40em; font-size: 16px; line-height: 1.75; color: #3B3A36; }
.pa-faq details[open] > div { animation: pa-abrir .6s cubic-bezier(.2,.8,.2,1); }
@keyframes pa-abrir { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: none; } }

/* ── Celular y tableta ── */
@media (max-width: 980px) {
  .pa-hero { grid-template-columns: minmax(0, 1fr); padding-top: 130px; }
  .pa-escena { height: 560px; min-height: 0; max-width: 460px; width: 100%; margin: 10px auto 0; }
  .pa-f-google { left: -2%; top: -2%; width: 250px; }
  .pa-f-meta { right: -2%; top: 34%; width: 140px; }
  .pa-f-wa { left: 0; bottom: 6%; max-width: 270px; }
  .pa-queja { grid-template-columns: minmax(0, 1fr); gap: 12px; padding: 34px 0; }
  .pa-queja p { transform: translateY(16px); }
  .pa-rec-grid { grid-template-columns: minmax(0, 1fr); }
  .pa-rec-grid { gap: 0; }
  .pa-rec-fijo { top: 112px; height: auto; z-index: 4; padding: 14px 0 18px; order: -1; margin: 0 -4vw; background: linear-gradient(180deg, #F4EFE3 88%, rgba(244,239,227,0)); }
  .pa-tel { height: 270px; }
  .pa-rec-paso { min-height: 62vh; justify-content: flex-start; padding-top: 30px; opacity: 1; }
  .pa-ig-pregunta { font-size: 11px; padding: 6px 8px; left: 6px; right: 6px; bottom: 6px; }
  .pa-pant { padding: 40px 8px 8px; border-radius: 26px; } .pa-wa-top { padding-top: 40px; } .pa-tel { border-radius: 34px; padding: 8px; } .pa-tel-isla { width: 60px; height: 16px; margin-left: -30px; top: 14px; }
  .pa-inc-grid, .pa-rep-in, .pa-precio-in, .pa-testi-in, .pa-faq-in { grid-template-columns: minmax(0, 1fr); }
  .pa-faq-lado { position: static; }
  .pa-rep-velo { background: linear-gradient(180deg, rgba(10,10,10,.6), #0A0A0A 75%); }
  .pa-tablero { transform: translateY(30px); } .pa-tablero.pa-vivo { transform: none; }
  .pa-kpis { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } .pa-kpis > div:last-child { grid-column: 1 / -1; }
  .pa-mazo { height: 460px; margin-right: 40px; }
  .pa-carta { padding: 32px 28px; }
  .pa-proc-linea { display: none; }
}
@media (max-width: 480px) {
  .pa-escena { height: 480px; }
  .pa-f-google { width: 240px; font-size: 12px; }
  .pa-g-q { font-size: 12px; }
  .pa-f-meta { width: 118px; }
  .pa-mazo { height: 500px; margin-right: 30px; }
}
@media (prefers-reduced-motion: reduce) and (max-width: 1px) {
  .pa *, .pa *::before, .pa *::after { animation: none !important; transition: none !important; }
  .pa-arco { transform: none; } .pa-lore, .pa-flota, .pa-queja p, .pa-gs-res, .pa-b, .pa-tablero, .pa-graf-area { opacity: 1; transform: none; }
  .pa-graf-linea { stroke-dashoffset: 0; } .pa-graf-punto, .pa-checks li::before { transform: none; } .pa-checks li::after { clip-path: none; }
  .pa-barras i { transform: scaleX(var(--v)); } .pa-g-q2 { width: auto; } .pa-rec-paso { opacity: 1; }
}
