/* Links (QR) page — standalone, mobile-first */
.links-page {
  min-height: 100vh; margin: 0; color: #e6eef5; overflow-x: hidden;
  background: #071a2c;
}
.lk-bg { position: fixed; inset: 0; z-index: 0; overflow: hidden; pointer-events: none; }
.lk-bg span { position: absolute; border-radius: 50%; filter: blur(70px); opacity: .55; animation: lk-float 18s ease-in-out infinite alternate; }
.lk-bg span:nth-child(1) { width: 420px; height: 420px; background: var(--accent); top: -120px; right: -120px; }
.lk-bg span:nth-child(2) { width: 360px; height: 360px; background: #c9a45c; bottom: -140px; left: -100px; animation-delay: -6s; opacity: .35; }
.lk-bg span:nth-child(3) { width: 300px; height: 300px; background: #3b5bdb; top: 40%; left: 30%; animation-delay: -12s; opacity: .25; }
@keyframes lk-float { to { transform: translate(40px, 60px) scale(1.15); } }

.lk { position: relative; z-index: 1; width: min(520px, 100% - 32px); margin: 0 auto; padding: 44px 0 32px; }
.lk-lang { position: absolute; top: 14px; inset-inline-end: 0; display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border-radius: 999px;
  color: #e6eef5; text-decoration: none; font-size: .82rem; font-weight: 600; background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .16); }
.lk-lang:hover { background: rgba(255, 255, 255, .16); color: #fff; }
[dir="ltr"] .lk-book__arrow, [dir="ltr"] .lk-site .fa-chevron-left, [dir="ltr"] .lk-card__go { transform: scaleX(-1); }
[dir="ltr"] .lk-book:hover .lk-book__arrow { transform: scaleX(-1) translateX(-5px); }

/* Header */
.lk-head { text-align: center; animation: lk-in .6s ease both; }
.lk-avatar { position: relative; width: 132px; height: 132px; margin: 0 auto 18px; padding: 4px; border-radius: 50%;
  background: conic-gradient(from 180deg, var(--accent), #c9a45c, #7fe0da, var(--accent)); animation: lk-spin 8s linear infinite; }
.lk-avatar img { width: 100%; height: 100%; border-radius: 50%; object-fit: cover; border: 4px solid #071a2c; animation: lk-spin 8s linear infinite reverse; }
.lk-verified { position: absolute; bottom: 6px; left: 6px; width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center;
  background: #1d9bf0; color: #fff; font-size: .8rem; border: 3px solid #071a2c; animation: lk-spin 8s linear infinite reverse; }
@keyframes lk-spin { to { transform: rotate(360deg); } }
.lk-head h1 { color: #fff; font-size: 1.7rem; margin: 0 0 4px; letter-spacing: -.01em; }
.lk-bio { margin: 0 0 14px; color: #b9cad8; font-size: 1rem; }
.lk-status { display: inline-flex; align-items: center; gap: 8px; padding: 6px 14px; border-radius: 999px; font-size: .85rem; font-weight: 600;
  background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .14); color: #f3c9c9; }
.lk-status i { width: 8px; height: 8px; border-radius: 50%; background: #f87171; }
.lk-status.is-open { color: #b6f2cf; }
.lk-status.is-open i { background: #34d399; box-shadow: 0 0 0 0 rgba(52, 211, 153, .7); animation: lk-ping 1.8s infinite; }
@keyframes lk-ping { 70% { box-shadow: 0 0 0 8px rgba(52, 211, 153, 0); } 100% { box-shadow: 0 0 0 0 rgba(52, 211, 153, 0); } }

/* Quick actions */
.lk-quick { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin: 28px 0 18px; animation: lk-in .6s .1s ease both; }
.lk-quick a { display: flex; flex-direction: column; align-items: center; gap: 8px; color: #dbe6ef; font-size: .82rem; font-weight: 600; text-decoration: none; }
.lk-quick span { width: 58px; height: 58px; border-radius: 18px; display: grid; place-items: center; font-size: 1.3rem; color: #fff;
  background: rgba(255, 255, 255, .09); border: 1px solid rgba(255, 255, 255, .16); backdrop-filter: blur(12px); transition: transform .2s, background .2s; }
.lk-quick span.is-wa { background: rgba(37, 211, 102, .2); color: #5cf09b; }
.lk-quick span.is-map { background: rgba(234, 67, 53, .2); color: #ff8a80; }
.lk-quick a:hover span { transform: translateY(-3px); background: rgba(255, 255, 255, .18); }

/* Booking CTA */
.lk-book { display: flex; align-items: center; gap: 14px; padding: 18px 20px; border-radius: 22px; text-decoration: none; color: #fff;
  background: linear-gradient(120deg, var(--accent), color-mix(in srgb, var(--accent) 55%, #3b5bdb)); position: relative; overflow: hidden;
  box-shadow: 0 18px 40px color-mix(in srgb, var(--accent) 40%, transparent); animation: lk-in .6s .2s ease both; }
.lk-book::after { content: ""; position: absolute; inset: 0; background: linear-gradient(100deg, transparent 30%, rgba(255, 255, 255, .28) 50%, transparent 70%);
  transform: translateX(120%); animation: lk-shine 3.5s 1s infinite; }
@keyframes lk-shine { 60%, 100% { transform: translateX(-120%); } }
.lk-book__icon { width: 50px; height: 50px; border-radius: 16px; display: grid; place-items: center; font-size: 1.4rem; background: rgba(255, 255, 255, .2); flex: none; }
.lk-book__text { flex: 1; display: flex; flex-direction: column; line-height: 1.4; }
.lk-book__text strong { font-size: 1.12rem; }
.lk-book__text small { color: rgba(255, 255, 255, .85); font-size: .85rem; }
.lk-book__arrow { transition: transform .2s; }
.lk-book:hover .lk-book__arrow { transform: translateX(-5px); }

/* Platform cards */
.lk-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 14px; }
.lk-card { --c1: #24384d; --c2: #1a2c3e; --fg: #fff;
  position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: 18px; min-height: 132px; padding: 16px;
  border-radius: 22px; text-decoration: none; color: var(--fg); overflow: hidden;
  background: linear-gradient(145deg, var(--c1), var(--c2)); border: 1px solid rgba(255, 255, 255, .1);
  transition: transform .25s, box-shadow .25s; animation: lk-in .55s calc(.3s + var(--d, 0ms)) ease both; }
.lk-card:hover { transform: translateY(-4px) scale(1.015); box-shadow: 0 16px 36px rgba(0, 0, 0, .35); color: var(--fg); }
.lk-card::before { content: ""; position: absolute; width: 140px; height: 140px; border-radius: 50%; background: rgba(255, 255, 255, .12); top: -60px; left: -50px; }
.lk-card__icon { width: 46px; height: 46px; border-radius: 14px; display: grid; place-items: center; font-size: 1.45rem; background: rgba(255, 255, 255, .2); position: relative; }
.lk-card__text { display: flex; flex-direction: column; line-height: 1.35; position: relative; min-width: 0; max-width: 100%; }
.lk-card__text strong { font-size: 1.02rem; }
.lk-card__text small { font-size: .78rem; opacity: .85; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.lk-card__go { position: absolute; top: 16px; left: 16px; font-size: .8rem; opacity: .7; }

/* First platform in an odd list spans the full width */
.lk-grid .lk-card:first-child:nth-last-child(odd) { grid-column: 1 / -1; flex-direction: row; align-items: center; min-height: 0; }

.lk-card--whatsapp  { --c1: #25d366; --c2: #0f9f4b; }
.lk-card--tiktok    { --c1: #111; --c2: #000; }
.lk-card--tiktok .lk-card__icon { background: #000; color: #fff; text-shadow: -2px -2px 0 #25f4ee, 2px 2px 0 #fe2c55; }
.lk-card--tiktok::before { background: radial-gradient(circle, rgba(254, 44, 85, .45), transparent 70%); }
.lk-card--tiktok::after { content: ""; position: absolute; width: 120px; height: 120px; border-radius: 50%; bottom: -60px; right: -40px; background: radial-gradient(circle, rgba(37, 244, 238, .4), transparent 70%); }
.lk-card--snapchat  { --c1: #fffc00; --c2: #f5d400; --fg: #111; }
.lk-card--snapchat .lk-card__icon { background: #fff; color: #111; }
.lk-card--instagram { --c1: #f58529; --c2: #8134af; background: linear-gradient(135deg, #feda75, #fa7e1e 25%, #d62976 55%, #962fbf 80%, #4f5bd5); }
.lk-card--facebook  { --c1: #1877f2; --c2: #0c56c2; }
.lk-card--youtube   { --c1: #ff0000; --c2: #b30000; }
.lk-card--x, .lk-card--threads { --c1: #1c1c1c; --c2: #000; }
.lk-card--linkedin  { --c1: #0a66c2; --c2: #084b8f; }
.lk-card--telegram  { --c1: #2aabee; --c2: #1883bd; }
.lk-card--google    { --c1: #ffffff; --c2: #e9eef6; --fg: #1f2937; }
.lk-card--google .lk-card__icon { background: conic-gradient(#ea4335 0 25%, #fbbc05 0 50%, #34a853 0 75%, #4285f4 0); color: #fff; }
.lk-card--maps      { --c1: #34a853; --c2: #1e7e3c; }

.lk-site { display: flex; align-items: center; justify-content: center; gap: 10px; margin-top: 14px; padding: 15px; border-radius: 18px;
  color: #e6eef5; text-decoration: none; font-weight: 600; background: rgba(255, 255, 255, .06); border: 1px solid rgba(255, 255, 255, .14); backdrop-filter: blur(12px); }
.lk-site:hover { background: rgba(255, 255, 255, .12); color: #fff; }

.lk-foot { text-align: center; margin-top: 30px; color: #93a9bb; font-size: .9rem; }
.lk-foot p { margin: 0 0 14px; }
.lk-share { display: inline-flex; align-items: center; gap: 8px; padding: 9px 18px; border-radius: 999px; border: 1px solid rgba(255, 255, 255, .2);
  background: transparent; color: #e6eef5; font: inherit; font-weight: 600; cursor: pointer; margin-bottom: 16px; }
.lk-share:hover { background: rgba(255, 255, 255, .1); }
.lk-foot small { display: block; opacity: .7; }

@keyframes lk-in { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }

@media (max-width: 380px) {
  .lk-quick span { width: 52px; height: 52px; }
  .lk-card { min-height: 120px; padding: 14px; }
}
@media (prefers-reduced-motion: reduce) {
  .lk-bg span, .lk-avatar, .lk-avatar img, .lk-verified, .lk-book::after, .lk-status i { animation: none !important; }
}
