@import url('https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700;800&display=swap');

/* VIGMO — sistema visual para páginas públicas y documentos */
:root {
    --vpub-red: #d60b35;
    --vpub-red-dark: #ad082a;
    --vpub-red-soft: #fff0f3;
    --vpub-black: #111318;
    --vpub-charcoal: #30333b;
    --vpub-gray-700: #48505f;
    --vpub-gray-600: #636b79;
    --vpub-gray-500: #7d8594;
    --vpub-gray-300: #d8dce3;
    --vpub-gray-200: #e7e9ed;
    --vpub-gray-100: #f4f5f7;
    --vpub-white: #fff;
    --vpub-green: #128a5a;
    --vpub-amber: #b97800;
    --vpub-blue: #2468cb;
    --vpub-shadow: 0 18px 48px rgba(17,19,24,.09);
}

body.vigmo-public {
    font-family: 'Manrope', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    -webkit-font-smoothing: antialiased;
}
body.vigmo-public h1,
body.vigmo-public h2,
body.vigmo-public h3,
body.vigmo-public .headline,
body.vigmo-public .logo,
body.vigmo-public .topbar-logo { font-family: 'Sora', sans-serif; }

/* ───────────────── Selector de presentación ───────────────── */
body.vigmo-public-selector {
    min-height: 100dvh;
    padding: max(28px, env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) max(28px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left));
    background: var(--vpub-gray-100);
    color: var(--vpub-black);
}
body.vigmo-public-selector::before {
    background-image: radial-gradient(circle at 50% 0, rgba(214,11,53,.08), transparent 32%);
    background-size: 100% 100%;
}
.vigmo-public-selector .logo {
    width: 126px;
    height: 126px;
    margin: 0 auto 22px;
    overflow: hidden;
    color: transparent !important;
    font-size: 0;
    background: url('/logo.png') center/contain no-repeat;
}
.vigmo-public-selector .logo span { display: none; }
.vigmo-public-selector .eyebrow { margin-bottom: 9px; color: var(--vpub-red); font-size: 10px; font-weight: 800; letter-spacing: 2.4px; }
.vigmo-public-selector .headline { color: var(--vpub-black); font-size: clamp(28px, 4.5vw, 48px); font-weight: 780; line-height: 1.04; text-transform: none; letter-spacing: -1.6px; }
.vigmo-public-selector .headline span { color: var(--vpub-red); }
.vigmo-public-selector .divider { background: var(--vpub-red); }
.vigmo-public-selector .subline { max-width: 650px; color: var(--vpub-gray-600); font-size: 13px; font-weight: 500; }
.vigmo-public-selector .cards { max-width: 980px; gap: 18px; }
.vigmo-public-selector .card {
    min-height: 100%;
    padding: 26px;
    border: 1px solid var(--vpub-gray-200);
    border-left: 5px solid var(--vpub-red);
    border-radius: 22px;
    background: #fff;
    color: var(--vpub-black);
    box-shadow: var(--vpub-shadow);
}
.vigmo-public-selector .card:hover { border-color: var(--vpub-red); transform: translateY(-4px); box-shadow: 0 24px 55px rgba(17,19,24,.13); }
.vigmo-public-selector .card::before { display: none; }
.vigmo-public-selector .card-tag { width: max-content; border-color: var(--vpub-gray-200); background: var(--vpub-gray-100); color: var(--vpub-red); }
.vigmo-public-selector .card-icon { width: 52px; height: 52px; display: grid; place-items: center; border-radius: 15px; background: var(--vpub-red-soft); font-size: 25px; }
.vigmo-public-selector .card-title { color: var(--vpub-black); font-family: 'Sora', sans-serif; font-size: 23px; font-weight: 750; line-height: 1.2; text-transform: none; }
.vigmo-public-selector .card-title span { color: var(--vpub-red); }
.vigmo-public-selector .card-desc,
.vigmo-public-selector .card-features li { color: var(--vpub-gray-600); }
.vigmo-public-selector .card-features li::before { color: var(--vpub-red); }
.vigmo-public-selector .card-cta { color: var(--vpub-black); border-top-color: var(--vpub-gray-200); }
.vigmo-public-selector .card-cta .arrow { color: var(--vpub-red); }
.vigmo-public-selector .card-blue .card-cta,
.vigmo-public-selector .card-purple .card-cta {
    border: 0;
    background: linear-gradient(135deg, var(--vpub-red), var(--vpub-red-dark));
    color: #fff;
    box-shadow: 0 8px 20px rgba(214, 11, 53, .2);
}
.vigmo-public-selector .card-blue .card-cta .arrow,
.vigmo-public-selector .card-purple .card-cta .arrow { color: #fff; }
.vigmo-public-selector .btn-exit { border-color: var(--vpub-charcoal); background: var(--vpub-charcoal); color: #fff; }
.vigmo-public-selector .bottom-note { color: var(--vpub-gray-500); }

/* ───────────────── Presentaciones por diapositivas ───────────────── */
body.vigmo-public-deck {
    --blue: var(--vpub-red);
    --blue-dim: rgba(214,11,53,.10);
    --blue-border: rgba(214,11,53,.24);
    --purple: var(--vpub-red);
    --purple-dim: rgba(214,11,53,.10);
    --purple-border: rgba(214,11,53,.24);
    --teal: #fff;
    --teal-dim: rgba(255,255,255,.09);
    --teal-border: rgba(255,255,255,.18);
    --gold: #fff;
    --gold-dim: rgba(255,255,255,.08);
    --gold-border: rgba(255,255,255,.16);
    --text: rgba(255,255,255,.88);
    --muted: rgba(255,255,255,.65);
    --bg: var(--vpub-black);
    background: var(--vpub-black);
}
.vigmo-public-deck .bg-blue,
.vigmo-public-deck .bg-violet,
.vigmo-public-deck .bg-teal,
.vigmo-public-deck .bg-mid,
.vigmo-public-deck .bg-steel,
.vigmo-public-deck .bg-dark,
.vigmo-public-deck .bg-hw { background: radial-gradient(circle at 75% 20%, rgba(214,11,53,.17), transparent 34%), linear-gradient(145deg, #30333b, #111318) !important; }
.vigmo-public-deck > .logo {
    width: 108px;
    height: 68px;
    top: 16px;
    left: 20px;
    z-index: 20;
    color: transparent !important;
    font-size: 0;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 15px;
    background: rgba(255,255,255,.96) url('/logo.png') center/62px auto no-repeat;
    box-shadow: 0 10px 28px rgba(0,0,0,.22);
}
.vigmo-public-deck > .logo span { display: none; }
.vigmo-public-deck .headline { font-size: clamp(36px, 6.4vw, 82px); font-weight: 780; line-height: .98; letter-spacing: -2px; text-transform: none; }
.vigmo-public-deck .headline span,
.vigmo-public-deck .headline span.teal,
.vigmo-public-deck .teal,
.vigmo-public-deck .gold { color: #ff4f70 !important; }
.vigmo-public-deck .eyebrow { color: #ff6480; letter-spacing: 3px; }
.vigmo-public-deck .divider,
.vigmo-public-deck .progress-bar { background: var(--vpub-red); }
.vigmo-public-deck .slide-counter { color: rgba(255,255,255,.72); }
.vigmo-public-deck .nav button.active,
.vigmo-public-deck .nav span.active { background: var(--vpub-red); }
.vigmo-public-deck .arrow-btn { border-color: rgba(255,255,255,.18); background: rgba(255,255,255,.09); color: #fff; backdrop-filter: blur(10px); }
.vigmo-public-deck .arrow-btn:hover { border-color: var(--vpub-red); background: var(--vpub-red); }
.vigmo-public-deck .role-card,
.vigmo-public-deck .module-card,
.vigmo-public-deck .visit-card,
.vigmo-public-deck .schema-box,
.vigmo-public-deck .compare-col,
.vigmo-public-deck .alert-card,
.vigmo-public-deck .hw-hero,
.vigmo-public-deck .cta-box {
    border-color: rgba(255,255,255,.14) !important;
    background: rgba(255,255,255,.075) !important;
    box-shadow: none !important;
}
.vigmo-public-deck .role-card:hover,
.vigmo-public-deck .module-card:hover,
.vigmo-public-deck .visit-card:hover { border-color: rgba(214,11,53,.7) !important; }
.vigmo-public-deck .role-label,
.vigmo-public-deck .pill,
.vigmo-public-deck .badge,
.vigmo-public-deck .hw-tag,
.vigmo-public-deck .consultar-tag { border-color: rgba(214,11,53,.52) !important; background: rgba(214,11,53,.15) !important; color: #ff718b !important; }
.vigmo-public-deck .visit-number,
.vigmo-public-deck .s-icon { background: var(--vpub-red) !important; color: #fff !important; }
.vigmo-public-deck .check-list li::before { color: #ff6480; }
.vigmo-public-deck .check-list li.cross::before { color: #ff6480; }

/* ───────────────── Páginas informativas comerciales ───────────────── */
body.vigmo-public-info {
    --blue: var(--vpub-red);
    --blue-dim: var(--vpub-red-soft);
    --blue-border: #f1c5cf;
    --purple: var(--vpub-red);
    --purple-dim: var(--vpub-red-soft);
    --purple-border: #f1c5cf;
    --teal: var(--vpub-charcoal);
    --teal-dim: var(--vpub-gray-100);
    --teal-border: var(--vpub-gray-200);
    --gold: var(--vpub-red);
    --gold-dim: var(--vpub-red-soft);
    --gold-border: #f1c5cf;
    --red: var(--vpub-red);
    --text: var(--vpub-black);
    --muted: var(--vpub-gray-600);
    --bg: var(--vpub-gray-100);
    --surface: #fff;
    --surface2: #fff;
    background: var(--vpub-gray-100);
    color: var(--vpub-black);
}
.vigmo-public-info .topbar {
    min-height: 76px;
    padding: 12px max(20px, 5vw);
    border-bottom: 1px solid var(--vpub-gray-200);
    background: rgba(255,255,255,.97);
    box-shadow: 0 5px 20px rgba(17,19,24,.05);
}
.vigmo-public-info .topbar-logo {
    width: 92px;
    height: 52px;
    overflow: hidden;
    color: transparent !important;
    font-size: 0;
    background: url('/assets/images/logo.png') left center/contain no-repeat;
}
.vigmo-public-info .topbar-logo span { display: none; }
.vigmo-public-info .topbar-back { min-height: 42px; padding: 0 13px; border-radius: 12px; background: var(--vpub-charcoal); color: #fff; font-size: 11px; font-weight: 750; }
.vigmo-public-info .topbar-back:hover { background: var(--vpub-red); color: #fff; }
.vigmo-public-info .hero {
    padding: 54px 5vw 48px;
    border-bottom: 0;
    background: radial-gradient(circle at 75% 20%, rgba(214,11,53,.17), transparent 34%), linear-gradient(145deg, #30333b, #111318);
}
.vigmo-public-info .hero-eyebrow { color: #ff718b; letter-spacing: 3px; }
.vigmo-public-info .hero h1 { font-family: 'Sora', sans-serif; font-weight: 780; letter-spacing: -1.5px; text-transform: none; }
.vigmo-public-info .hero h1 span { color: #ff5c79; }
.vigmo-public-info .hero p { color: rgba(255,255,255,.73); }
.vigmo-public-info .btn-outline { border-color: rgba(255,255,255,.34); color: #fff; }
.vigmo-public-info .btn-outline:hover { background: rgba(255,255,255,.1); }
.vigmo-public-info .btn-wa { background: var(--vpub-green); box-shadow: none; }
.vigmo-public-info .mockup-card,
.vigmo-public-info .central-img { border-color: rgba(255,255,255,.18); background: rgba(255,255,255,.08); }
.vigmo-public-info .mockup-card img,
.vigmo-public-info .central-img img { mix-blend-mode: normal; }
.vigmo-public-info .mockup-card span { color: rgba(255,255,255,.72); }
.vigmo-public-info .content { max-width: 1100px; }
.vigmo-public-info section { scroll-margin-top: 95px; }
.vigmo-public-info .section-title { border-bottom-color: var(--vpub-gray-200); color: var(--vpub-black); font-family: 'Sora', sans-serif; font-weight: 750; text-transform: none; }
.vigmo-public-info .section-title i { color: var(--vpub-red); }
.vigmo-public-info .card,
.vigmo-public-info .step,
.vigmo-public-info .command,
.vigmo-public-info .modo-card,
.vigmo-public-info .hw-card,
.vigmo-public-info .faq-item,
.vigmo-public-info .compare-col,
.vigmo-public-info .workflow,
.vigmo-public-info .licencia-box,
.vigmo-public-info .cta-final {
    border-color: var(--vpub-gray-200) !important;
    background: #fff !important;
    color: var(--vpub-black) !important;
    box-shadow: 0 8px 24px rgba(17,19,24,.055) !important;
}
.vigmo-public-info .card:hover { border-color: #efb4c1 !important; box-shadow: 0 14px 32px rgba(17,19,24,.09) !important; }
.vigmo-public-info .card-icon,
.vigmo-public-info .step-num,
.vigmo-public-info .wf-icon { border-color: #f1c5cf !important; background: var(--vpub-red-soft) !important; color: var(--vpub-red) !important; }
.vigmo-public-info .card-icon i,
.vigmo-public-info .command i { color: var(--vpub-red); }
.vigmo-public-info .card h3,
.vigmo-public-info .step h4,
.vigmo-public-info .command .word,
.vigmo-public-info .hw-card h3,
.vigmo-public-info .faq-q,
.vigmo-public-info .modo-card h3 { color: var(--vpub-black); font-family: 'Sora', sans-serif; }
.vigmo-public-info .card p,
.vigmo-public-info .card li,
.vigmo-public-info .step p,
.vigmo-public-info .command .action,
.vigmo-public-info .hw-card li,
.vigmo-public-info .faq-a,
.vigmo-public-info .modo-card li { color: var(--vpub-gray-600); }
.vigmo-public-info .card li::before,
.vigmo-public-info .hw-card li::before { color: var(--vpub-red); }
.vigmo-public-info .modular-note,
.vigmo-public-info .install-note { border: 1px solid var(--vpub-gray-200); border-left: 5px solid var(--vpub-red); background: #fff; }
.vigmo-public-info .modular-note i,
.vigmo-public-info .install-note i { color: var(--vpub-red); }
.vigmo-public-info .modular-note p,
.vigmo-public-info .install-note p { color: var(--vpub-gray-700); }
.vigmo-public-info .hw-tag,
.vigmo-public-info .modo-label,
.vigmo-public-info .consultar-tag { border-color: #f1c5cf !important; background: var(--vpub-red-soft) !important; color: var(--vpub-red) !important; }
.vigmo-public-info .alert-card.red { border-color: #efb4c1 !important; background: var(--vpub-red-soft) !important; }
.vigmo-public-info .alert-card.green { border-color: #b9dfcb !important; background: #eff9f3 !important; }
.vigmo-public-info .alert-card.teal { border-color: #bfd0eb !important; background: #f0f5fc !important; }
.vigmo-public-info .alert-card.yellow { border-color: #efd59f !important; background: #fff8e9 !important; }
.vigmo-public-info .alert-card h3 { color: var(--vpub-black); }
.vigmo-public-info .alert-card p { color: var(--vpub-gray-600); }
.vigmo-public-info .footer { border-top-color: var(--vpub-gray-200); background: var(--vpub-charcoal); color: rgba(255,255,255,.72); }

/* ───────────────── Documentos legales y eliminación ───────────────── */
body.vigmo-public-legal {
    min-height: 100dvh;
    padding: max(20px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(20px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));
    align-items: flex-start;
    background: var(--vpub-gray-100);
    color: var(--vpub-black);
}
.vigmo-public-legal .content {
    max-width: 920px;
    margin: 0 auto;
    padding: 28px;
    align-items: stretch;
    border: 1px solid var(--vpub-gray-200);
    border-top: 5px solid var(--vpub-red);
    border-radius: 24px;
    background: #fff;
    box-shadow: var(--vpub-shadow);
}
.vigmo-public-legal .image-container {
    width: 118px;
    height: 118px;
    margin: 0 auto 10px;
    background: #fff url('/assets/images/logo.png') center/contain no-repeat !important;
}
.vigmo-public-legal .header-text { margin-bottom: 23px; padding-bottom: 20px; border-bottom: 1px solid var(--vpub-gray-200); text-align: center; }
.vigmo-public-legal .header-text h1 { color: var(--vpub-black); font-size: clamp(22px, 4vw, 31px); font-weight: 780; letter-spacing: -.8px; text-transform: none; }
.vigmo-public-legal .header-text h1 i { color: var(--vpub-red) !important; }
.vigmo-public-legal .header-text p { color: var(--vpub-gray-600); }
.vigmo-public-legal .date { width: max-content; max-width: 100%; margin: 8px auto 0; padding: 6px 10px; border-radius: 999px; background: var(--vpub-gray-100); color: var(--vpub-gray-500); font-size: 10px; }
.vigmo-public-legal .section {
    width: 100%;
    margin: 0 0 14px;
    padding: 20px;
    border: 1px solid var(--vpub-gray-200);
    border-left: 4px solid var(--vpub-red);
    border-radius: 16px;
    background: #fff;
    box-shadow: none;
}
.vigmo-public-legal .section h2 { color: var(--vpub-black); font-size: 17px; font-weight: 750; }
.vigmo-public-legal .section h2 i { color: var(--vpub-red); }
.vigmo-public-legal .section h3 { color: var(--vpub-black); }
.vigmo-public-legal .section p,
.vigmo-public-legal .section li { color: var(--vpub-gray-700); }
.vigmo-public-legal .highlight,
.vigmo-public-legal .info-message { border: 1px solid var(--vpub-gray-200); border-left: 4px solid var(--vpub-charcoal); background: var(--vpub-gray-100); color: var(--vpub-gray-700); }
.vigmo-public-legal .warning-box { border: 1px solid #efd59f; border-left: 4px solid var(--vpub-amber); background: #fff8e9; color: #704900; }
.vigmo-public-legal .confirmation-box { border: 1px solid #b9dfcb; border-left: 4px solid var(--vpub-green); background: #eff9f3; color: #08613e; }
.vigmo-public-legal .step { border-color: var(--vpub-gray-200); background: var(--vpub-gray-100); }
.vigmo-public-legal .step-number { background: var(--vpub-red); color: #fff; }
.vigmo-public-legal .data-table { overflow: hidden; border: 1px solid var(--vpub-gray-200); border-radius: 13px; }
.vigmo-public-legal .data-table th { background: var(--vpub-charcoal); color: #fff; }
.vigmo-public-legal .data-table td { color: var(--vpub-gray-700); }
.vigmo-public-legal .contact-box { border-color: var(--vpub-gray-200); background: var(--vpub-charcoal); color: #fff; }
.vigmo-public-legal .email,
.vigmo-public-legal .email-contact,
.vigmo-public-legal .text-link { color: var(--vpub-red); }
.vigmo-public-legal .btn-email { background: var(--vpub-red); box-shadow: none; }
.vigmo-public-legal .btn-volver { border-color: var(--vpub-charcoal); background: var(--vpub-charcoal); color: #fff; }
.vigmo-public-legal .footer { width: calc(100% + 56px); margin: 18px -28px -28px; padding: 22px 28px; background: var(--vpub-charcoal); color: rgba(255,255,255,.72); }

/* ───────────────── Manual general vigmo.html ───────────────── */
body.vigmo-public-manual {
    --alerta: var(--vpub-red);
    --alerta-oscuro: var(--vpub-red-dark);
    --alerta-claro: var(--vpub-red-soft);
    --alerta-borde: #f1c5cf;
    --azul: var(--vpub-charcoal);
    --azul-oscuro: var(--vpub-black);
    --azul-claro: var(--vpub-gray-100);
    --teal: var(--vpub-charcoal);
    --teal-oscuro: var(--vpub-black);
    --teal-claro: var(--vpub-gray-100);
    --morado: var(--vpub-red);
    --naranja: var(--vpub-red);
    --naranja-claro: var(--vpub-red-soft);
    --grad-red: linear-gradient(145deg, var(--vpub-red), var(--vpub-red-dark));
    --grad-green: linear-gradient(145deg, var(--vpub-charcoal), var(--vpub-black));
    --grad-orange: linear-gradient(145deg, var(--vpub-charcoal), var(--vpub-black));
    --grad-blue: linear-gradient(145deg, var(--vpub-charcoal), var(--vpub-black));
    --grad-teal: linear-gradient(145deg, var(--vpub-charcoal), var(--vpub-black));
    --grad-naranja: linear-gradient(145deg, var(--vpub-charcoal), var(--vpub-black));
    background: var(--vpub-gray-100);
}
.vigmo-public-manual .container { border-top: 5px solid var(--vpub-red); border-radius: 24px; box-shadow: var(--vpub-shadow); }
.vigmo-public-manual .header .logo { width: 120px; height: 120px; object-fit: contain; }
.vigmo-public-manual .header h1 { color: var(--vpub-black); font-size: clamp(23px, 4vw, 34px); }
.vigmo-public-manual .version,
.vigmo-public-manual .badge-new { background: var(--vpub-red-soft); color: var(--vpub-red); }
.vigmo-public-manual .indice { border: 1px solid var(--vpub-gray-200); border-left: 5px solid var(--vpub-red); background: var(--vpub-gray-100); }
.vigmo-public-manual .indice h2,
.vigmo-public-manual .seccion-titulo { color: var(--vpub-black); }
.vigmo-public-manual .indice h2 i,
.vigmo-public-manual .seccion-titulo i,
.vigmo-public-manual .seccion-subtitulo i,
.vigmo-public-manual .indice-item i { color: var(--vpub-red); }
.vigmo-public-manual .indice-item a { border-color: var(--vpub-gray-200); background: #fff; color: var(--vpub-gray-700); }
.vigmo-public-manual .indice-item a:hover { border-color: #efb4c1; color: var(--vpub-red); }
.vigmo-public-manual .seccion { border-color: var(--vpub-gray-200); border-left: 4px solid var(--vpub-red); background: #fff; }
.vigmo-public-manual .card,
.vigmo-public-manual .paso,
.vigmo-public-manual .comando-item,
.vigmo-public-manual .faq-item,
.vigmo-public-manual .modo-inner,
.vigmo-public-manual .inst-stat { border-color: var(--vpub-gray-200) !important; background: var(--vpub-gray-100) !important; box-shadow: none !important; }
.vigmo-public-manual .card-icon,
.vigmo-public-manual .paso-numero,
.vigmo-public-manual .comando-icono { background: var(--vpub-red) !important; color: #fff !important; box-shadow: none !important; }
.vigmo-public-manual .tip { border-color: var(--vpub-gray-200); border-left-color: var(--vpub-charcoal); background: var(--vpub-gray-100); }
.vigmo-public-manual .tip.warning { border-color: #efd59f; border-left-color: var(--vpub-amber); background: #fff8e9; }
.vigmo-public-manual .alerta-card.emergencia { border-color: #efb4c1; background: var(--vpub-red-soft); }
.vigmo-public-manual .alerta-card.medica { border-color: #b9dfcb; background: #eff9f3; }
.vigmo-public-manual .alerta-card.sospechoso { border-color: #bfd0eb; background: #f0f5fc; }
.vigmo-public-manual .alerta-card.silenciosa { border-color: #efd59f; background: #fff8e9; }
.vigmo-public-manual .btn-volver,
.vigmo-public-manual .btn-principal { background: var(--vpub-charcoal); color: #fff; }

/* ───────────────── Móviles ───────────────── */
@media (max-width: 720px) {
    .vigmo-public-selector { justify-content: flex-start; }
    .vigmo-public-selector .logo { width: 104px; height: 104px; margin-bottom: 15px; }
    .vigmo-public-selector .cards { grid-template-columns: 1fr; }
    .vigmo-public-selector .card { padding: 20px; }
    .vigmo-public-deck > .logo { width: 76px; height: 54px; top: 10px; left: 13px; border-radius: 12px; background-size: 49px auto; }
    .vigmo-public-deck .slide { padding: 74px 20px 70px; overflow-y: auto; justify-content: flex-start; }
    .vigmo-public-deck .slide > :first-child { margin-top: auto; }
    .vigmo-public-deck .slide > :last-child { margin-bottom: auto; }
    .vigmo-public-deck .headline { font-size: clamp(31px, 11vw, 52px); }
    .vigmo-public-deck .arrow-btn { bottom: 16px; top: auto; width: 48px; height: 48px; }
    .vigmo-public-info .topbar { gap: 10px; padding: 10px 14px; }
    .vigmo-public-info .topbar-logo { width: 72px; height: 45px; }
    .vigmo-public-info .topbar-back { min-width: 44px; padding: 0 11px; font-size: 0; }
    .vigmo-public-info .topbar-back i { font-size: 14px; }
    .vigmo-public-info .hero { padding: 40px 18px 34px; }
    .vigmo-public-info .content { padding: 30px 15px 48px; }
    .vigmo-public-info .card-grid { grid-template-columns: 1fr; }
    .vigmo-public-legal { padding: 0; }
    .vigmo-public-legal .content { margin: 0; padding: 20px 15px; border-right: 0; border-left: 0; border-radius: 0; }
    .vigmo-public-legal .image-container { width: 96px; height: 96px; }
    .vigmo-public-legal .section { padding: 16px; }
    .vigmo-public-legal .footer { width: calc(100% + 30px); margin: 18px -15px -20px; padding: 20px 15px; }
    .vigmo-public-manual { padding: 0; }
    .vigmo-public-manual .container { padding: 17px 14px; border-right: 0; border-left: 0; border-radius: 0; }
}

@media (prefers-reduced-motion: reduce) {
    body.vigmo-public *, body.vigmo-public *::before, body.vigmo-public *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}
