/*
 * RecombiDx shared site system v0.10.0
 * Source of truth: CSS IDENTIDAD RECOMBIDX + approved button/header/background CSS.
 */

:root {
    --background: oklch(1.0000 0 0);
    --foreground: oklch(0.1695 0.0727 272.9481);
    --card: oklch(0.9705 0.0054 274.9660);
    --card-foreground: oklch(0.1695 0.0727 272.9481);
    --popover: oklch(1.0000 0 0);
    --popover-foreground: oklch(0.1695 0.0727 272.9481);
    --primary: oklch(0.6375 0.2489 20.7320);
    --primary-foreground: oklch(1.0000 0 0);
    --secondary: oklch(0.7080 0.1489 234.3628);
    --secondary-foreground: oklch(1.0000 0 0);
    --muted: oklch(0.8841 0.0194 276.3182);
    --muted-foreground: oklch(0.1879 0.0775 272.0406);
    --accent: oklch(0.5526 0.1886 304.4985);
    --accent-foreground: oklch(1.0000 0 0);
    --destructive: oklch(0.6375 0.2489 20.7320);
    --destructive-foreground: oklch(1.0000 0 0);
    --border: oklch(0.8841 0.0194 276.3182);
    --input: oklch(0.8841 0.0194 276.3182);
    --ring: oklch(0.6375 0.2489 20.7320);
    --font-sans: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --font-display: "Times New Roman", Times, Georgia, serif;
    --font-serif: Georgia, serif;
    --font-mono: SFMono-Regular, ui-monospace, monospace;
    --radius: 0.5rem;
    --tracking-normal: -0.01em;

    --rx-navy: #07092E;
    --rx-navy-2: #080A31;
    --rx-surface: #090D35;
    --rx-surface-active: #0A0F3A;
    --rx-red: #FF1744;
    --rx-cyan: #00AEEF;
    --rx-purple: #00AEEF;
    --rx-purple-dark: #00AEEF;
    --rx-white: #FFFFFF;
    --rx-text: #D5D8E6;
    --rx-line: rgba(213, 216, 230, .24);
}

.dark,
body.recombidx-site.dark {
    --background: oklch(0.1695 0.0727 272.9481);
    --foreground: oklch(1.0000 0 0);
    --card: oklch(0.1879 0.0775 272.0406);
    --card-foreground: oklch(1.0000 0 0);
    --popover: oklch(0.1695 0.0727 272.9481);
    --popover-foreground: oklch(1.0000 0 0);
    --primary: oklch(0.6375 0.2489 20.7320);
    --primary-foreground: oklch(1.0000 0 0);
    --secondary: oklch(0.7080 0.1489 234.3628);
    --secondary-foreground: oklch(1.0000 0 0);
    --muted: oklch(0.1986 0.0823 271.4239);
    --muted-foreground: oklch(0.8841 0.0194 276.3182);
    --accent: oklch(0.5526 0.1886 304.4985);
    --accent-foreground: oklch(1.0000 0 0);
    --border: oklch(0.1986 0.0823 271.4239);
    --ring: oklch(0.7080 0.1489 234.3628);
}

html {
    scroll-behavior: smooth;
}

body.recombidx-site {
    margin: 0;
    min-width: 320px;
    min-height: 100vh;
    overflow-x: hidden;
    background: var(--rx-navy);
    color: var(--rx-white);
    font-family: var(--font-sans);
    letter-spacing: var(--tracking-normal);
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

body.recombidx-site *,
body.recombidx-site *::before,
body.recombidx-site *::after {
    box-sizing: border-box;
}

body.recombidx-site a {
    color: inherit;
    text-decoration: none;
}

body.recombidx-site button,
body.recombidx-site input {
    font: inherit;
}

.rx-container {
    width: min(1450px, calc(100% - 72px));
    margin-inline: auto;
}

/* =========================================================
   RECOMBIDX · FONDO GLOBAL VIVO
   Adaptación directa del CSS aprobado.
========================================================= */
.rx-shell {
    position: relative;
    min-height: 100vh;
    isolation: isolate;
    background-color: #07092E;
    background-image:
        radial-gradient(ellipse at 16% 13%, rgba(255, 23, 68, .072) 0%, rgba(255, 23, 68, .030) 22%, transparent 50%),
        radial-gradient(ellipse at 84% 25%, rgba(0, 174, 239, .058) 0%, rgba(0, 174, 239, .024) 22%, transparent 52%),
        radial-gradient(ellipse at 53% 48%, rgba(0, 174, 239, .034) 0%, transparent 47%),
        radial-gradient(ellipse at 19% 77%, rgba(255, 23, 68, .045) 0%, transparent 50%),
        radial-gradient(ellipse at 83% 86%, rgba(0, 174, 239, .036) 0%, transparent 52%),
        linear-gradient(180deg, #07092E 0%, #080A31 28%, #07092E 58%, #080A30 82%, #07092E 100%);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center top;
    overflow-x: clip;
    overflow-y: visible;
}

.rx-shell::before,
.rx-shell::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    will-change: transform, opacity;
}

.rx-shell::before {
    background-image:
        radial-gradient(circle at 5% 16%, rgba(255,23,68,.82) 0 1px, rgba(255,23,68,.28) 2px, transparent 7px),
        radial-gradient(circle at 14% 43%, rgba(255,23,68,.74) 0 1.5px, rgba(255,23,68,.22) 4px, transparent 11px),
        radial-gradient(circle at 22% 72%, rgba(255,23,68,.60) 0 2px, rgba(255,23,68,.17) 6px, transparent 15px),
        radial-gradient(circle at 31% 24%, rgba(255,23,68,.78) 0 1px, rgba(255,23,68,.22) 3px, transparent 9px),
        radial-gradient(circle at 39% 61%, rgba(255,23,68,.68) 0 1.5px, rgba(255,23,68,.18) 5px, transparent 12px),
        radial-gradient(circle at 49% 86%, rgba(255,23,68,.56) 0 2px, rgba(255,23,68,.15) 6px, transparent 15px),
        radial-gradient(circle at 59% 32%, rgba(255,23,68,.78) 0 1px, rgba(255,23,68,.20) 3px, transparent 9px),
        radial-gradient(circle at 70% 68%, rgba(255,23,68,.66) 0 1.5px, rgba(255,23,68,.17) 5px, transparent 13px),
        radial-gradient(circle at 82% 18%, rgba(255,23,68,.58) 0 2px, rgba(255,23,68,.15) 6px, transparent 15px),
        radial-gradient(circle at 93% 58%, rgba(255,23,68,.70) 0 1.5px, rgba(255,23,68,.18) 4px, transparent 12px),
        radial-gradient(circle at 8% 65%, rgba(0,174,239,.70) 0 1.5px, rgba(0,174,239,.18) 4px, transparent 11px),
        radial-gradient(circle at 17% 22%, rgba(0,174,239,.74) 0 1px, rgba(0,174,239,.18) 3px, transparent 8px),
        radial-gradient(circle at 27% 88%, rgba(0,174,239,.52) 0 2px, rgba(0,174,239,.13) 6px, transparent 14px),
        radial-gradient(circle at 36% 40%, rgba(0,174,239,.62) 0 1.5px, rgba(0,174,239,.16) 4px, transparent 11px),
        radial-gradient(circle at 45% 13%, rgba(0,174,239,.74) 0 1px, rgba(0,174,239,.17) 3px, transparent 8px),
        radial-gradient(circle at 55% 69%, rgba(0,174,239,.50) 0 2px, rgba(0,174,239,.12) 6px, transparent 14px),
        radial-gradient(circle at 65% 21%, rgba(0,174,239,.64) 0 1.5px, rgba(0,174,239,.16) 4px, transparent 11px),
        radial-gradient(circle at 75% 48%, rgba(0,174,239,.72) 0 1px, rgba(0,174,239,.17) 3px, transparent 8px),
        radial-gradient(circle at 86% 79%, rgba(0,174,239,.52) 0 2px, rgba(0,174,239,.12) 6px, transparent 14px),
        radial-gradient(circle at 96% 30%, rgba(0,174,239,.62) 0 1.5px, rgba(0,174,239,.15) 4px, transparent 11px);
    opacity: .62;
    filter: blur(.8px);
    animation: rxParticleLayerA 12s ease-in-out infinite alternate, rxParticleGlowA 4.8s ease-in-out infinite;
}

.rx-shell::after {
    background-image:
        radial-gradient(circle at 10% 34%, rgba(255,23,68,.46) 0 3px, rgba(255,23,68,.18) 7px, rgba(255,23,68,.05) 15px, transparent 24px),
        radial-gradient(circle at 34% 80%, rgba(255,23,68,.42) 0 2.5px, rgba(255,23,68,.15) 8px, rgba(255,23,68,.04) 16px, transparent 25px),
        radial-gradient(circle at 57% 18%, rgba(255,23,68,.44) 0 3.5px, rgba(255,23,68,.15) 9px, rgba(255,23,68,.04) 17px, transparent 27px),
        radial-gradient(circle at 78% 61%, rgba(255,23,68,.40) 0 2.5px, rgba(255,23,68,.13) 8px, transparent 24px),
        radial-gradient(circle at 94% 89%, rgba(255,23,68,.40) 0 3px, rgba(255,23,68,.12) 8px, transparent 25px),
        radial-gradient(circle at 18% 83%, rgba(0,174,239,.40) 0 2.5px, rgba(0,174,239,.12) 8px, transparent 24px),
        radial-gradient(circle at 42% 38%, rgba(0,174,239,.40) 0 3px, rgba(0,174,239,.12) 8px, transparent 25px),
        radial-gradient(circle at 63% 82%, rgba(0,174,239,.36) 0 2.5px, rgba(0,174,239,.10) 8px, transparent 23px),
        radial-gradient(circle at 84% 27%, rgba(0,174,239,.40) 0 3px, rgba(0,174,239,.12) 8px, transparent 25px),
        radial-gradient(circle at 29% 54%, rgba(0,174,239,.25) 0 2px, rgba(0,174,239,.08) 8px, transparent 22px),
        radial-gradient(circle at 72% 41%, rgba(0,174,239,.22) 0 2px, rgba(0,174,239,.07) 8px, transparent 22px);
    opacity: .42;
    filter: blur(3.6px);
    animation: rxParticleLayerB 18s ease-in-out infinite alternate, rxParticleGlowB 6.8s ease-in-out infinite;
}

.rx-shell > * {
    position: relative;
    z-index: 1;
}

@keyframes rxParticleLayerA {
    0% { transform: translate3d(0, 0, 0) scale(1) rotate(0deg); }
    18% { transform: translate3d(-12px, -20px, 0) scale(1.02) rotate(-0.4deg); }
    36% { transform: translate3d(16px, -34px, 0) scale(.99) rotate(0.6deg); }
    54% { transform: translate3d(-18px, -10px, 0) scale(1.03) rotate(-0.5deg); }
    72% { transform: translate3d(10px, 14px, 0) scale(1.01) rotate(0.3deg); }
    100% { transform: translate3d(20px, 22px, 0) scale(1) rotate(-0.2deg); }
}

@keyframes rxParticleLayerB {
    0% { transform: translate3d(0, 0, 0) scale(1) rotate(0deg); }
    22% { transform: translate3d(18px, -12px, 0) scale(1.03) rotate(0.5deg); }
    46% { transform: translate3d(-14px, -28px, 0) scale(1.06) rotate(-0.8deg); }
    68% { transform: translate3d(15px, 10px, 0) scale(.98) rotate(0.4deg); }
    100% { transform: translate3d(-18px, 20px, 0) scale(1.02) rotate(-0.5deg); }
}

@keyframes rxParticleGlowA {
    0%, 100% { opacity: .48; filter: blur(.8px); }
    30% { opacity: .68; filter: blur(.5px); }
    55% { opacity: .58; filter: blur(1px); }
    78% { opacity: .72; filter: blur(.6px); }
}

@keyframes rxParticleGlowB {
    0%, 100% { opacity: .28; filter: blur(3.6px); }
    40% { opacity: .48; filter: blur(2.6px); }
    70% { opacity: .38; filter: blur(4px); }
}

/* =========================================================
   RECOMBIDX · HEADER PRINCIPAL
========================================================= */
.rx-header-wrap {
    z-index: 999;
    width: 100%;
    background: linear-gradient(90deg, rgba(7,9,46,.88) 0%, rgba(8,10,49,.82) 48%, rgba(7,9,46,.88) 100%);
    -webkit-backdrop-filter: blur(14px) saturate(1.05);
    backdrop-filter: blur(14px) saturate(1.05);
    border-bottom: 1px solid rgba(255,255,255,.055);
    box-shadow: 0 8px 30px rgba(0,0,0,.14);
    transition: background .35s ease, box-shadow .35s ease;
}

.rx-header {
    width: min(1450px, calc(100% - 72px));
    min-height: 92px;
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(190px, 260px) 1fr auto;
    align-items: center;
    gap: 34px;
}

.rx-brand,
.rx-footer-brand {
    min-width: 0;
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}

.rx-brand-logo,
.rx-footer-logo {
    display: block;
    width: auto;
    object-fit: contain;
}

.rx-brand-logo {
    max-width: 220px;
    max-height: 64px;
}

.rx-footer-logo {
    max-width: 190px;
    max-height: 58px;
}

.rx-wordmark {
    display: inline-flex;
    align-items: baseline;
    line-height: .9;
    font-size: 2rem;
    font-weight: 620;
    letter-spacing: -0.055em;
}

.rx-wordmark-main {
    color: #FFFFFF;
}

.rx-wordmark-accent {
    color: var(--rx-cyan);
}

.rx-wordmark-sub {
    margin-top: 7px;
    color: #FFFFFF;
    font-size: .52rem;
    font-weight: 600;
    letter-spacing: .48em;
}

.rx-nav {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: clamp(16px, 1.9vw, 31px);
    white-space: nowrap;
}

.rx-nav-link {
    position: relative;
    padding: 34px 0 31px;
    color: #FFFFFF !important;
    font-size: .82rem;
    font-weight: 500;
    transition: color .3s ease, text-shadow .3s ease;
}

.rx-nav-link:hover {
    color: #FFFFFF !important;
    text-shadow: -3px 0 10px rgba(255,23,68,.22), 3px 0 10px rgba(0,174,239,.22);
}

.rx-nav-link.is-active {
    color: #FFFFFF !important;
    text-shadow: -3px 0 11px rgba(255,23,68,.26), 3px 0 11px rgba(0,174,239,.26);
}

.rx-nav-link.is-active::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 20px;
    width: 34px;
    height: 2px;
    transform: translateX(-50%);
    border-radius: 999px;
    background: linear-gradient(90deg, #FF1744, #00AEEF, #00AEEF);
    box-shadow: -4px 0 8px rgba(255,23,68,.14), 4px 0 8px rgba(0,174,239,.14);
}

.rx-header-tools {
    display: flex;
    align-items: center;
    gap: 14px;
    padding-left: 26px;
    border-left: 1px solid rgba(255,255,255,.16);
}

.rx-icon-button,
.rx-social-button {
    appearance: none;
    border: 0;
    background: transparent;
    color: #FFFFFF;
    cursor: pointer;
}

.rx-icon-button {
    position: relative;
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    padding: 0;
}

.rx-icon-button svg {
    width: 26px;
    height: 26px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.rx-cart-count {
    position: absolute;
    right: 0;
    top: 1px;
    min-width: 19px;
    height: 19px;
    padding: 0 5px;
    display: grid;
    place-items: center;
    border-radius: 999px;
    background: var(--rx-red);
    color: #fff;
    font-size: .68rem;
    line-height: 1;
}

/* =========================================================
   HERO
========================================================= */
.rx-main {
    overflow: hidden;
}

.rx-hero {
    padding: 58px 0 24px;
}

.rx-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, .98fr) minmax(460px, .88fr);
    align-items: center;
    gap: clamp(48px, 7vw, 120px);
}

.rx-hero-copy {
    min-width: 0;
}

.rx-eyebrow {
    margin: 0 0 18px;
    color: #D5D8E6;
    font-size: .72rem;
    font-weight: 600;
    letter-spacing: .34em;
}

.rx-hero-title,
.rx-section-title {
    margin: 0;
    color: #FFFFFF;
    font-family: var(--font-display);
    font-weight: 700;
    letter-spacing: -.035em;
}

.rx-hero-title {
    max-width: 760px;
    font-size: clamp(3.3rem, 5.5vw, 6.25rem);
    line-height: 1.03;
}

.rx-section-title {
    font-size: clamp(2.65rem, 4.1vw, 4.9rem);
    line-height: 1.04;
}

.rx-text-blue,
.rx-text-red {
    --rx-word-gradient: linear-gradient(
        90deg,
        #00AEEF 0%,
        #00AEEF 34%,
        #00AEEF 62%,
        #FF1744 100%
    );
    display: inline-block;
    position: relative;
    color: transparent;
    -webkit-text-fill-color: transparent;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-stroke: .12px rgba(255,255,255,.10);
    background-image:
        linear-gradient(
            110deg,
            transparent 0%,
            transparent 43%,
            rgba(255,255,255,.08) 47%,
            rgba(255,255,255,.62) 50%,
            rgba(255,255,255,.08) 53%,
            transparent 57%,
            transparent 100%
        ),
        var(--rx-word-gradient);
    background-size: 180% 100%, 100% 100%;
    background-position: 100% 0, 0 0;
    background-repeat: no-repeat;
    background-blend-mode: screen, normal;
    filter:
        drop-shadow(0 0 2px rgba(0,174,239,.18))
        drop-shadow(0 0 5px rgba(0,174,239,.08));
    animation: rxTitleLightSweep 20s linear infinite;
}

.rx-text-red {
    --rx-word-gradient: linear-gradient(
        90deg,
        #FF1744 0%,
        #FF1744 38%,
        #00AEEF 66%,
        #00AEEF 100%
    );
}

@keyframes rxTitleLightSweep {
    0% {
        background-position: 100% 0, 0 0;
    }

    100% {
        background-position: -100% 0, 0 0;
    }
}

.rx-lead {
    max-width: 690px;
    margin: 24px 0 0;
    color: #E2E5EF;
    font-size: clamp(1rem, 1.55vw, 1.32rem);
    line-height: 1.52;
    font-weight: 400;
    text-align: justify;
    text-justify: inter-word;
    hyphens: auto;
}

.rx-hero-actions {
    margin-top: 28px;
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

/* =========================================================
   RECOMBIDX · BOTONES PRINCIPALES
   Adaptación directa del CSS aprobado por el proyecto.
========================================================= */
.rx-button {
    position: relative;
    min-height: 54px;
    padding: 15px 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 26px;
    color: #FFFFFF !important;
    background: transparent !important;
    border: 1px solid transparent !important;
    border-radius: 12px;
    background-image:
        linear-gradient(#07092E, #07092E),
        linear-gradient(105deg, #FF1744 0%, #00AEEF 48%, #00AEEF 100%) !important;
    background-origin: border-box;
    background-clip: padding-box, border-box;
    box-shadow:
        -8px 0 17px rgba(255,23,68,.12),
        8px 0 17px rgba(0,174,239,.12),
        0 8px 22px rgba(0,0,0,.12);
    text-decoration: none !important;
    font-weight: 650;
    cursor: pointer;
    transition:
        box-shadow .35s ease,
        transform .35s ease,
        filter .35s ease;
    animation: rxButtonBreath 5.5s ease-in-out infinite;
}

.rx-button > span:first-child {
    white-space: nowrap;
}

.rx-button:hover {
    color: #FFFFFF !important;
    transform: translateY(-2px);
    filter: brightness(1.12);
    box-shadow:
        -15px 0 28px rgba(255,23,68,.25),
        15px 0 28px rgba(0,174,239,.25),
        0 10px 28px rgba(0,0,0,.18);
}

.rx-button:active,
.rx-button:focus-visible {
    color: #FFFFFF !important;
    outline: none !important;
    -webkit-tap-highlight-color: transparent;
    box-shadow:
        -10px 0 20px rgba(255,23,68,.20),
        10px 0 20px rgba(0,174,239,.20);
}

.rx-button-arrow {
    font-size: 1.35rem;
    line-height: 1;
}

@keyframes rxButtonBreath {
    0%,
    100% {
        box-shadow:
            -7px 0 15px rgba(255,23,68,.11),
            7px 0 15px rgba(0,174,239,.11),
            0 8px 20px rgba(0,0,0,.10);
    }

    50% {
        box-shadow:
            -15px 0 28px rgba(255,23,68,.24),
            15px 0 28px rgba(0,174,239,.24),
            0 9px 25px rgba(0,0,0,.16);
    }
}

.rx-quick-actions {
    margin-top: 20px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.rx-quick-actions .rx-button {
    width: 100%;
    justify-content: space-between;
}

.rx-video-card {
    width: 100%;
}

.rx-video-frame {
    position: relative;
    overflow: hidden;
    aspect-ratio: 16 / 10.55;
    border: 1px solid rgba(139, 153, 211, .78);
    border-radius: 12px;
    background: #03061c;
    box-shadow:
        0 26px 60px rgba(0,0,0,.24),
        inset 0 0 0 1px rgba(255,255,255,.025);
}

.rx-video-frame iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.rx-section-divider {
    margin-top: 58px;
    display: grid;
    grid-template-columns: 1fr auto auto auto 1fr;
    align-items: center;
    gap: 18px;
}

.rx-section-divider > span {
    height: 1px;
    background: rgba(213,216,230,.34);
}

.rx-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
}

.rx-dot-red { background: var(--rx-red); }
.rx-dot-blue { background: var(--rx-cyan); }
.rx-dot-purple { background: var(--rx-purple); }

/* =========================================================
   SOBRE RECOMBIDX
========================================================= */
.rx-about {
    padding: 42px 0 64px;
}

.rx-about-grid {
    display: grid;
    grid-template-columns: minmax(300px, 1.6fr) repeat(3, minmax(190px, .82fr));
    gap: 0;
    align-items: stretch;
}

.rx-about-intro {
    padding: 4px 54px 0 0;
}

.rx-about-intro > p:not(.rx-eyebrow) {
    max-width: 600px;
    margin: 22px 0 0;
    color: #D5D8E6;
    font-size: 1rem;
    line-height: 1.58;
    text-align: justify;
    text-justify: inter-word;
    hyphens: auto;
}

.rx-about-button {
    width: 190px;
    margin-top: 22px;
    justify-content: space-between;
}

.rx-value-card {
    min-height: 290px;
    padding: 0 36px;
    border-left: 1px solid rgba(213,216,230,.24);
}

.rx-value-icon {
    position: relative;
    width: 58px;
    height: 58px;
    display: grid;
    place-items: center;
    margin-bottom: 24px;
    border-radius: 50%;
    background: rgba(255,255,255,.018);
}

.rx-value-icon::after {
    content: "";
    position: absolute;
    inset: 4px;
    border: 2px dotted currentColor;
    border-radius: 50%;
    opacity: .92;
}

.rx-value-icon svg {
    position: relative;
    z-index: 1;
    width: 27px;
    height: 27px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.rx-value-red .rx-value-icon {
    color: var(--rx-red);
    box-shadow: inset 0 0 24px rgba(255,23,68,.055);
}

.rx-value-blue .rx-value-icon {
    color: var(--rx-cyan);
    box-shadow: inset 0 0 24px rgba(0,174,239,.055);
}

.rx-value-purple .rx-value-icon {
    color: var(--rx-purple);
    box-shadow: inset 0 0 24px rgba(0,174,239,.065);
}

.rx-value-card h3 {
    margin: 0;
    color: #FFFFFF;
    font-family: var(--font-display);
    font-size: 1rem;
    line-height: 1.28;
    letter-spacing: .045em;
    font-weight: 700;
}

.rx-value-line {
    width: 36px;
    height: 3px;
    display: block;
    margin: 18px 0 24px;
}

.rx-value-red .rx-value-line { background: var(--rx-red); }
.rx-value-blue .rx-value-line { background: var(--rx-cyan); }
.rx-value-purple .rx-value-line { background: var(--rx-purple); }

.rx-value-card p {
    margin: 0;
    color: #D5D8E6;
    font-size: .95rem;
    line-height: 1.55;
    text-align: justify;
    text-justify: inter-word;
    hyphens: auto;
}

/* =========================================================
   FOOTER
========================================================= */
.rx-footer-wrap {
    border-top: 1px solid rgba(213,216,230,.22);
    background: rgba(7,9,46,.56);
}

.rx-footer {
    min-height: 122px;
    display: grid;
    grid-template-columns: 220px 1fr auto minmax(220px, auto);
    align-items: center;
    gap: 36px;
}

.rx-footer-nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: clamp(18px, 2.3vw, 38px);
    color: #D5D8E6;
    font-size: .79rem;
    white-space: nowrap;
}

.rx-footer-nav a:first-child {
    color: var(--rx-cyan);
}

.rx-social {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 0 32px;
    border-left: 1px solid rgba(255,255,255,.18);
    border-right: 1px solid rgba(255,255,255,.18);
}

.rx-social-button {
    min-width: 28px;
    height: 34px;
    padding: 0;
    display: grid;
    place-items: center;
    color: #FFFFFF;
    font-size: 1.2rem;
    font-weight: 700;
}

.rx-copyright {
    margin: 0;
    color: #D5D8E6;
    font-size: .72rem;
    line-height: 1.6;
}

.rx-copyright a {
    color: #00AEEF !important;
    text-decoration: none !important;
    transition: color .25s ease, text-shadow .25s ease;
}

.rx-copyright a:hover,
.rx-copyright a:focus-visible {
    color: #FFFFFF !important;
    text-shadow:
        -2px 0 8px rgba(255,23,68,.18),
        2px 0 8px rgba(0,174,239,.22);
}

/* =========================================================
   UTILIDADES Y ACCESIBILIDAD
========================================================= */
.rx-skip-link {
    position: fixed;
    left: 16px;
    top: -80px;
    z-index: 99999;
    padding: 10px 14px;
    border-radius: 8px;
    background: #FFFFFF;
    color: #07092E !important;
}

.rx-skip-link:focus {
    top: 16px;
}

body.recombidx-site :focus-visible {
    outline: 2px solid var(--rx-cyan);
    outline-offset: 3px;
}

/* =========================================================
   RESPONSIVE
========================================================= */
@media (max-width: 1280px) {
    .rx-container,
    .rx-header {
        width: min(1180px, calc(100% - 48px));
    }

    .rx-header {
        grid-template-columns: 205px 1fr auto;
        gap: 22px;
    }

    .rx-nav {
        gap: 17px;
    }

    .rx-nav-link {
        font-size: .75rem;
    }

    .rx-hero-grid {
        grid-template-columns: minmax(0, 1fr) minmax(420px, .9fr);
        gap: 48px;
    }

    .rx-about-grid {
        grid-template-columns: minmax(300px, 1.35fr) repeat(3, minmax(175px, .82fr));
    }

    .rx-value-card {
        padding-inline: 26px;
    }

    .rx-footer {
        grid-template-columns: 190px 1fr auto;
    }

    .rx-copyright {
        display: none;
    }
}

@media (max-width: 1024px) {
    .rx-shell::before { opacity: .54; }
    .rx-shell::after { opacity: .34; filter: blur(3.2px); }

    .rx-header {
        grid-template-columns: 1fr auto;
        row-gap: 4px;
    }

    .rx-nav {
        grid-column: 1 / -1;
        order: 3;
        justify-content: flex-start;
        overflow-x: auto;
        padding-bottom: 10px;
        scrollbar-width: none;
    }

    .rx-nav::-webkit-scrollbar {
        display: none;
    }

    .rx-nav-link {
        padding: 8px 0 14px;
    }

    .rx-nav-link.is-active::after {
        bottom: 4px;
    }

    .rx-hero-grid {
        grid-template-columns: 1fr;
        gap: 0;
        row-gap: 0;
    }

    .rx-hero-copy {
        display: contents;
    }

    .rx-eyebrow {
        order: 1;
    }

    .rx-hero-title {
        order: 2;
    }

    .rx-lead {
        order: 3;
    }

    .rx-video-card {
        order: 4;
        width: min(760px, 100%);
        margin: 6px auto 0;
    }

    .rx-hero-actions {
        order: 5;
        margin-top: 8px;
    }

    .rx-quick-actions {
        order: 6;
    }

    .rx-about-grid {
        grid-template-columns: 1fr 1fr;
        row-gap: 46px;
    }

    .rx-about-intro {
        grid-column: 1 / -1;
        padding-right: 0;
    }

    .rx-value-card {
        border-left: 0;
        border-top: 1px solid rgba(213,216,230,.24);
        padding: 32px 24px 0 0;
    }

    .rx-footer {
        grid-template-columns: 180px 1fr auto;
    }

    .rx-footer-nav {
        flex-wrap: wrap;
        justify-content: flex-start;
    }
}

@media (max-width: 767px) {
    .rx-shell::before { opacity: .46; }
    .rx-shell::after { opacity: .27; filter: blur(3.4px); }

    .rx-container,
    .rx-header {
        width: min(100% - 28px, 1180px);
    }

    .rx-header {
        min-height: 64px;
        row-gap: 0;
    }

    .rx-brand-logo {
        max-width: 180px;
        max-height: 54px;
    }

    .rx-header-tools {
        gap: 6px;
        padding-left: 12px;
    }

    .rx-icon-button {
        width: 36px;
        height: 36px;
    }

    .rx-nav {
        gap: 20px;
        padding-bottom: 0;
        margin-bottom: 0;
    }

    .rx-nav-link {
        padding-top: 5px;
        padding-bottom: 10px;
    }

    .rx-nav-link.is-active::after {
        bottom: 1px;
    }

    .rx-hero {
        padding-top: 4px;
    }

    .rx-hero-title {
        font-size: clamp(2.8rem, 13vw, 4.5rem);
    }

    .rx-lead {
        font-size: 1rem;
    }

    .rx-button {
        min-height: 50px;
        padding: 13px 22px;
        font-size: 14px;
    }

    .rx-button > span:first-child {
        white-space: normal;
    }

    .rx-hero-actions {
        display: grid;
    }

    .rx-button {
        width: 100%;
    }

    .rx-quick-actions {
        grid-template-columns: 1fr;
    }

    .rx-video-frame {
        aspect-ratio: 16 / 11;
    }

    .rx-section-divider {
        margin-top: 40px;
    }

    .rx-about-grid {
        grid-template-columns: 1fr;
    }

    .rx-about-intro {
        grid-column: auto;
    }

    .rx-value-card {
        min-height: auto;
        padding: 30px 0 8px;
    }

    .rx-footer {
        grid-template-columns: 1fr;
        padding: 28px 0;
        text-align: center;
    }

    .rx-footer-brand {
        align-items: center;
    }

    .rx-footer-nav {
        justify-content: center;
        white-space: normal;
    }

    .rx-social {
        justify-content: center;
        border: 0;
        padding: 0;
    }

    .rx-copyright {
        display: block;
    }
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }

    .rx-shell::before,
    .rx-shell::after,
    .rx-button,
    .rx-text-blue,
    .rx-text-red {
        animation: none !important;
    }

    *,
    *::before,
    *::after {
        transition-duration: 0.01ms !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
    }
}


/* =========================================================
   SHARED NAV ACTIVE STATES
========================================================= */
.rx-footer-nav a:first-child {
    color: inherit;
}

.rx-footer-nav a.is-active {
    color: var(--rx-cyan);
}

/* =========================================================
   SOBRE RECOMBIDX · PAGE
========================================================= */
body.recombidx-about {
    background: var(--rx-navy);
}

.rx-about-page-main {
    padding: 46px 0 22px;
}

.rx-page-kicker {
    margin: 0 0 16px;
    color: var(--rx-text);
    font-size: .72rem;
    font-weight: 600;
    letter-spacing: .34em;
}

.rx-page-title {
    margin: 0;
    color: #FFFFFF;
    font-family: var(--font-display);
    font-size: clamp(3rem, 5vw, 5.6rem);
    line-height: 1;
    font-weight: 700;
    letter-spacing: -.035em;
}

.rx-page-copy {
    margin: 18px 0 0;
    color: var(--rx-text);
    font-size: 1.02rem;
    line-height: 1.58;
    text-align: justify;
    text-justify: inter-word;
    hyphens: auto;
}

.rx-about-top {
    display: grid;
    grid-template-columns: minmax(0, 1.42fr) minmax(240px, .72fr) minmax(240px, .72fr);
    align-items: center;
    gap: 0;
}

.rx-about-overview {
    padding-right: 64px;
}

.rx-about-feature {
    min-height: 255px;
    padding: 0 42px;
    border-left: 1px solid var(--rx-line);
}

.rx-about-feature-head {
    display: grid;
    grid-template-columns: 74px 1fr;
    align-items: center;
    gap: 24px;
    margin-bottom: 18px;
}

.rx-about-page-main .rx-value-icon {
    width: 64px;
    height: 64px;
    margin: 0;
}

.rx-about-feature h2,
.rx-values-title,
.rx-process-step h3 {
    margin: 0;
    color: #FFFFFF;
    font-family: var(--font-display);
    font-weight: 700;
}

.rx-about-feature h2 {
    font-size: 1.4rem;
}

.rx-about-feature p {
    margin: 0;
    color: var(--rx-text);
    line-height: 1.55;
    text-align: justify;
    text-justify: inter-word;
    hyphens: auto;
}

.rx-feature-line {
    width: 38px;
    height: 3px;
    display: block;
    margin-top: 12px;
}

.rx-feature-red .rx-feature-line { background: var(--rx-red); }
.rx-feature-blue .rx-feature-line { background: var(--rx-cyan); }

.rx-feature-red .rx-value-icon {
    color: var(--rx-red);
    box-shadow: inset 0 0 24px rgba(255,23,68,.055);
}

.rx-feature-blue .rx-value-icon {
    color: var(--rx-cyan);
    box-shadow: inset 0 0 24px rgba(0,174,239,.055);
}

.rx-about-divider {
    height: 1px;
    margin: 34px 0 30px;
    background: rgba(213,216,230,.28);
}

.rx-values-section {
    padding-bottom: 8px;
}

.rx-values-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.rx-value-mini {
    min-height: 190px;
    padding: 8px 34px;
    border-left: 1px solid var(--rx-line);
}

.rx-value-mini:first-child {
    padding-left: 0;
    border-left: 0;
}

.rx-value-mini-head {
    display: grid;
    grid-template-columns: 72px 1fr;
    align-items: center;
    gap: 22px;
}

.rx-value-mini .rx-value-icon {
    width: 58px;
    height: 58px;
}

.rx-values-title {
    font-size: 1.15rem;
}

.rx-value-mini-line {
    width: 38px;
    height: 3px;
    display: block;
    margin-top: 12px;
}

.rx-mini-red .rx-value-icon,
.rx-mini-red .rx-value-mini-line { color: var(--rx-red); }
.rx-mini-red .rx-value-mini-line { background: var(--rx-red); }

.rx-mini-blue .rx-value-icon,
.rx-mini-blue .rx-value-mini-line { color: var(--rx-cyan); }
.rx-mini-blue .rx-value-mini-line { background: var(--rx-cyan); }

.rx-mini-purple .rx-value-icon,
.rx-mini-purple .rx-value-mini-line { color: var(--rx-purple); }
.rx-mini-purple .rx-value-mini-line { background: var(--rx-purple); }

.rx-mini-magenta .rx-value-icon,
.rx-mini-magenta .rx-value-mini-line { color: #FF1744; }
.rx-mini-magenta .rx-value-mini-line { background: #FF1744; }

.rx-value-mini p {
    margin: 20px 0 0 94px;
    color: var(--rx-text);
    line-height: 1.5;
    text-align: justify;
    text-justify: inter-word;
}

.rx-process-section {
    display: grid;
    grid-template-columns: minmax(300px, .86fr) minmax(0, 1.5fr);
    gap: 0;
    align-items: center;
}

.rx-process-intro {
    padding-right: 58px;
}

.rx-process-intro .rx-section-title {
    font-size: clamp(2.8rem, 4.5vw, 5rem);
}

.rx-process-intro p {
    margin: 18px 0 0;
    color: var(--rx-text);
    font-size: 1.02rem;
    line-height: 1.55;
    text-align: justify;
    text-justify: inter-word;
}

.rx-process-flow {
    padding-left: 48px;
    border-left: 1px solid var(--rx-line);
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 36px;
}

.rx-process-step {
    position: relative;
    min-height: 220px;
}

.rx-process-number-row {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 18px;
}

.rx-process-number {
    width: 62px;
    height: 62px;
    flex: 0 0 62px;
    display: grid;
    place-items: center;
    border: 1px solid currentColor;
    border-radius: 50%;
    font-size: 1.65rem;
    font-weight: 700;
}

.rx-process-connector {
    height: 2px;
    flex: 1;
    background: linear-gradient(90deg, currentColor, var(--rx-purple));
    opacity: .9;
}

.rx-process-step:last-child .rx-process-connector {
    display: none;
}

.rx-step-red { color: var(--rx-red); }
.rx-step-blue { color: var(--rx-cyan); }
.rx-step-purple { color: var(--rx-purple); }

.rx-process-step h3 {
    color: #FFFFFF;
    font-size: 1.08rem;
}

.rx-process-step p {
    margin: 16px 0 0;
    color: var(--rx-text);
    line-height: 1.5;
    text-align: justify;
    text-justify: inter-word;
}

.rx-process-step .rx-feature-line {
    margin-top: 10px;
    background: currentColor;
}

@media (max-width: 1100px) {
    .rx-about-top {
        grid-template-columns: 1fr 1fr;
        row-gap: 36px;
    }

    .rx-about-overview {
        grid-column: 1 / -1;
        padding-right: 0;
    }

    .rx-about-feature {
        min-height: 0;
        padding: 28px 32px 0 0;
        border-left: 0;
        border-top: 1px solid var(--rx-line);
    }

    .rx-about-feature + .rx-about-feature {
        padding-left: 32px;
        border-left: 1px solid var(--rx-line);
    }

    .rx-values-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        row-gap: 28px;
    }

    .rx-value-mini:nth-child(3) {
        border-left: 0;
        padding-left: 0;
    }

    .rx-process-section {
        grid-template-columns: 1fr;
        row-gap: 34px;
    }

    .rx-process-intro {
        padding-right: 0;
    }

    .rx-process-flow {
        padding-left: 0;
        border-left: 0;
        border-top: 1px solid var(--rx-line);
        padding-top: 34px;
    }
}

@media (max-width: 767px) {
    .rx-about-page-main {
        padding-top: 16px;
    }

    .rx-page-kicker {
        margin-bottom: 10px;
        letter-spacing: .24em;
    }

    .rx-page-title {
        font-size: clamp(2.7rem, 14vw, 4.3rem);
    }

    .rx-about-top,
    .rx-values-grid,
    .rx-process-flow {
        grid-template-columns: 1fr;
    }

    .rx-about-feature,
    .rx-about-feature + .rx-about-feature {
        padding: 26px 0 0;
        border-left: 0;
        border-top: 1px solid var(--rx-line);
    }

    .rx-about-divider {
        margin: 28px 0 24px;
    }

    .rx-value-mini,
    .rx-value-mini:first-child,
    .rx-value-mini:nth-child(3) {
        min-height: 0;
        padding: 24px 0;
        border-left: 0;
        border-top: 1px solid var(--rx-line);
    }

    .rx-value-mini:first-child {
        border-top: 0;
    }

    .rx-value-mini p {
        margin-left: 0;
    }

    .rx-process-flow {
        gap: 8px;
    }

    .rx-process-step {
        min-height: 0;
        padding: 18px 0 26px;
    }

    .rx-process-connector {
        display: none;
    }
}


/* =========================================================
   SERVICIOS · PAGE
========================================================= */
.rx-services-page-main {
    padding: 46px 0 20px;
}

.rx-services-intro {
    display: grid;
    grid-template-columns: minmax(360px, .9fr) minmax(0, 1.45fr);
    align-items: center;
    gap: 0;
}

.rx-services-title-block {
    padding-right: 54px;
}

.rx-services-page-main .rx-page-title {
    line-height: .94;
}

.rx-services-page-main .rx-page-copy {
    margin: 0;
    padding: 12px 0 12px 42px;
    border-left: 1px solid var(--rx-line);
    font-size: 1.08rem;
}

.rx-services-grid {
    margin-top: 42px;
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    border-bottom: 1px solid rgba(213,216,230,.28);
}

.rx-service-card {
    min-height: 230px;
    padding: 0 38px 28px;
    grid-column: span 2;
    border-left: 1px solid var(--rx-line);
}

.rx-service-card:first-child,
.rx-service-card:nth-child(4) {
    border-left: 0;
    padding-left: 0;
}

.rx-service-card:nth-child(4),
.rx-service-card:nth-child(5) {
    grid-column: span 3;
    padding-top: 28px;
    border-top: 1px solid rgba(213,216,230,.28);
}

.rx-service-card:nth-child(5) {
    padding-left: 54px;
}

.rx-service-head {
    display: grid;
    grid-template-columns: 72px 1fr;
    align-items: start;
    gap: 26px;
}

.rx-service-number {
    width: 62px;
    height: 62px;
    display: grid;
    place-items: center;
    border: 2px dotted currentColor;
    border-radius: 50%;
    font-family: var(--font-sans);
    font-size: 1.55rem;
    font-weight: 800;
}

.rx-service-copy h2 {
    margin: 3px 0 0;
    color: #FFFFFF;
    font-family: var(--font-display);
    font-size: 1.48rem;
    line-height: 1.12;
    font-weight: 700;
}

.rx-service-line {
    width: 42px;
    height: 3px;
    display: block;
    margin: 17px 0 0;
    background: currentColor;
}

.rx-service-card p {
    margin: 20px 0 0 98px;
    color: var(--rx-text);
    line-height: 1.52;
    text-align: justify;
    text-justify: inter-word;
    hyphens: auto;
}

.rx-service-red { color: var(--rx-red); }
.rx-service-blue { color: var(--rx-cyan); }
.rx-service-purple { color: var(--rx-purple); }

.rx-services-cta {
    margin: 34px 0 22px;
    padding: 26px 34px;
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 34px;
    border: 1px solid transparent;
    border-radius: 14px;
    background:
        linear-gradient(#07092E, #07092E) padding-box,
        linear-gradient(100deg, var(--rx-red), var(--rx-purple), var(--rx-cyan)) border-box;
    box-shadow:
        -8px 0 18px rgba(255,23,68,.08),
        8px 0 18px rgba(0,174,239,.08);
}

.rx-services-cta-copy {
    padding-right: 38px;
    border-right: 1px solid var(--rx-line);
}

.rx-services-cta .rx-page-kicker {
    margin-bottom: 10px;
}

.rx-services-cta h2 {
    margin: 0;
    color: #FFFFFF;
    font-family: var(--font-display);
    font-size: clamp(2rem, 3vw, 3.35rem);
    line-height: 1;
    font-weight: 700;
    letter-spacing: -.03em;
}

.rx-services-cta-actions {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
}

.rx-services-cta-actions .rx-button {
    min-width: 210px;
}

@media (max-width: 1100px) {
    .rx-services-intro {
        grid-template-columns: 1fr;
        row-gap: 26px;
    }

    .rx-services-title-block {
        padding-right: 0;
    }

    .rx-services-page-main .rx-page-copy {
        padding: 24px 0 0;
        border-left: 0;
        border-top: 1px solid var(--rx-line);
    }

    .rx-services-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .rx-service-card,
    .rx-service-card:nth-child(4),
    .rx-service-card:nth-child(5) {
        grid-column: span 1;
        min-height: 0;
        padding: 28px 28px 32px;
        border-top: 1px solid rgba(213,216,230,.22);
        border-left: 1px solid var(--rx-line);
    }

    .rx-service-card:nth-child(odd) {
        padding-left: 0;
        border-left: 0;
    }

    .rx-services-cta {
        grid-template-columns: 1fr;
    }

    .rx-services-cta-copy {
        padding: 0 0 24px;
        border-right: 0;
        border-bottom: 1px solid var(--rx-line);
    }
}

@media (max-width: 767px) {
    .rx-services-page-main {
        padding-top: 16px;
    }

    .rx-services-grid {
        margin-top: 30px;
        grid-template-columns: 1fr;
    }

    .rx-service-card,
    .rx-service-card:nth-child(4),
    .rx-service-card:nth-child(5),
    .rx-service-card:nth-child(odd) {
        padding: 24px 0 28px;
        border-left: 0;
        border-top: 1px solid rgba(213,216,230,.22);
    }

    .rx-service-card:first-child {
        border-top: 0;
    }

    .rx-service-card p {
        margin-left: 0;
    }

    .rx-services-cta {
        margin-top: 26px;
        padding: 22px 18px;
    }

    .rx-services-cta-actions {
        display: grid;
    }

    .rx-services-cta-actions .rx-button {
        min-width: 0;
    }
}


/* =========================================================
   ÁREAS DE IMPACTO · PAGE
========================================================= */
.rx-impact-page-main {
    padding: 34px 0 20px;
}

.rx-impact-intro {
    max-width: 900px;
    margin: 0 auto;
    text-align: center;
}

.rx-impact-intro .rx-page-kicker {
    margin-bottom: 12px;
}

.rx-impact-intro .rx-page-title {
    font-size: clamp(3.4rem, 5.5vw, 6rem);
}

.rx-impact-intro .rx-page-copy {
    max-width: 860px;
    margin: 18px auto 0;
    text-align: center;
    text-justify: auto;
}

.rx-impact-map {
    margin-top: 30px;
    display: grid;
    grid-template-columns: minmax(250px, 1fr) minmax(330px, 1.15fr) minmax(250px, 1fr);
    grid-template-areas:
        "human center animal"
        "plant center industry";
    gap: 42px 44px;
    align-items: center;
}

.rx-impact-human { grid-area: human; }
.rx-impact-animal { grid-area: animal; }
.rx-impact-plant { grid-area: plant; }
.rx-impact-industry { grid-area: industry; }
.rx-impact-center { grid-area: center; }

.rx-impact-area {
    display: grid;
    grid-template-columns: 88px 1fr;
    gap: 20px;
    align-items: start;
}

.rx-impact-area.rx-impact-right {
    grid-template-columns: 88px 1fr;
}

.rx-impact-icon {
    width: 78px;
    height: 78px;
    display: grid;
    place-items: center;
    border: 2px dotted currentColor;
    border-radius: 50%;
    background: rgba(255,255,255,.015);
    box-shadow: inset 0 0 24px color-mix(in srgb, currentColor 7%, transparent);
}

.rx-impact-icon svg {
    width: 40px;
    height: 40px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.rx-impact-area h2 {
    margin: 7px 0 10px;
    font-family: var(--font-display);
    font-size: 1.45rem;
    line-height: 1.1;
    font-weight: 700;
    color: #FFFFFF !important;
}

.rx-impact-red h2 {
    color: #FF4669 !important;
    text-shadow: 0 0 9px rgba(255,23,68,.18);
}

.rx-impact-blue h2 {
    color: #38C9FF !important;
    text-shadow: 0 0 9px rgba(0,174,239,.18);
}

.rx-impact-purple h2 {
    color: #00AEEF !important;
    text-shadow: 0 0 9px rgba(0,174,239,.22);
}

.rx-impact-area p {
    margin: 0;
    color: var(--rx-text);
    line-height: 1.5;
    text-align: justify;
    text-justify: inter-word;
    hyphens: auto;
}

.rx-impact-red { color: var(--rx-red); }
.rx-impact-blue { color: var(--rx-cyan); }
.rx-impact-purple { color: var(--rx-purple); }

.rx-impact-center {
    position: relative;
    min-height: 440px;
    display: grid;
    place-items: center;
}

.rx-impact-orbit {
    width: min(360px, 100%);
    aspect-ratio: 1;
    border: 0;
    border-radius: 50%;
    display: grid;
    place-items: center;
    position: relative;
    background:
        radial-gradient(circle, rgba(0,174,239,.055) 0%, transparent 56%),
        rgba(7,9,46,.16);
}

.rx-impact-orbit::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 50%;
    padding: 3px;
    background: conic-gradient(
        from 0deg,
        var(--rx-red) 0%,
        var(--rx-red) 44%,
        transparent 44% 49%,
        var(--rx-cyan) 49%,
        var(--rx-cyan) 94%,
        transparent 94% 100%
    );
    -webkit-mask:
        linear-gradient(#000 0 0) content-box,
        linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    filter:
        drop-shadow(0 0 7px rgba(255,23,68,.34))
        drop-shadow(0 0 7px rgba(0,174,239,.34));
    animation: rxImpactOrbitSpin 18s linear infinite;
    z-index: 1;
}

.rx-impact-orbit::after {
    content: "";
    position: absolute;
    inset: -10px;
    border-radius: 50%;
    pointer-events: none;
    box-shadow:
        0 0 20px rgba(0,174,239,.10),
        0 0 46px rgba(0,174,239,.08);
    animation: rxImpactPurplePulse 4.8s ease-in-out infinite;
    z-index: 0;
}

@keyframes rxImpactOrbitSpin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

@keyframes rxImpactPurplePulse {
    0%,
    100% {
        opacity: .48;
        box-shadow:
            0 0 16px rgba(0,174,239,.08),
            0 0 34px rgba(0,174,239,.06);
    }

    50% {
        opacity: 1;
        box-shadow:
            0 0 26px rgba(0,174,239,.18),
            0 0 58px rgba(0,174,239,.12);
    }
}

.rx-impact-dna {
    position: relative;
    z-index: 3;
    width: 170px;
    height: 260px;
    filter:
        drop-shadow(0 0 7px rgba(0,174,239,.22))
        drop-shadow(0 0 7px rgba(255,23,68,.20));
}

.rx-impact-dna .rx-dna-a {
    stroke: var(--rx-cyan);
}

.rx-impact-dna .rx-dna-b {
    stroke: var(--rx-red);
}

.rx-impact-dna .rx-dna-rung {
    opacity: .88;
}

.rx-impact-dna circle {
    fill: currentColor;
    stroke: none;
}

.rx-impact-orbit-node {
    position: absolute;
    width: 22px;
    height: 22px;
    border: 4px solid currentColor;
    border-radius: 50%;
    background: #07092E;
    z-index: 3;
}

.rx-impact-node-a { left: 6%; top: 22%; color: var(--rx-red); }
.rx-impact-node-b { right: 6%; top: 22%; color: var(--rx-cyan); }
.rx-impact-node-c { left: 6%; bottom: 22%; color: var(--rx-cyan); }
.rx-impact-node-d { right: 6%; bottom: 22%; color: var(--rx-red); }

.rx-impact-divider {
    margin: 24px 0 30px;
}

.rx-impact-purpose {
    display: grid;
    grid-template-columns: minmax(300px, 1.2fr) repeat(3, minmax(190px, .78fr));
    gap: 0;
    align-items: stretch;
}

.rx-impact-purpose-intro {
    padding-right: 44px;
}

.rx-impact-purpose-intro .rx-section-title {
    font-size: clamp(2.7rem, 4.2vw, 4.8rem);
}

.rx-impact-purpose-card {
    padding: 2px 34px;
    border-left: 1px solid var(--rx-line);
}

.rx-impact-purpose-card .rx-value-icon {
    width: 52px;
    height: 52px;
    margin-bottom: 16px;
}

.rx-impact-purpose-card .rx-value-icon svg {
    width: 25px;
    height: 25px;
}

.rx-feature-purple .rx-value-icon {
    color: #00AEEF;
    box-shadow: inset 0 0 24px rgba(0,174,239,.08);
}

.rx-feature-purple .rx-feature-line {
    background: #00AEEF;
}

.rx-impact-purpose-card h3 {
    margin: 0;
    font-family: var(--font-display);
    font-size: .96rem;
    letter-spacing: .10em;
    color: #FFFFFF;
}

.rx-impact-purpose-card p {
    margin: 16px 0 0;
    color: var(--rx-text);
    line-height: 1.48;
    text-align: justify;
    text-justify: inter-word;
}

.rx-impact-purpose-card .rx-feature-line {
    margin-top: 12px;
}

@media (max-width: 1100px) {
    .rx-impact-map {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-areas:
            "center center"
            "human animal"
            "plant industry";
        gap: 34px;
    }

    .rx-impact-center {
        min-height: 390px;
    }

    .rx-impact-purpose {
        grid-template-columns: 1fr 1fr;
        row-gap: 32px;
    }

    .rx-impact-purpose-intro {
        grid-column: 1 / -1;
        padding-right: 0;
    }

    .rx-impact-purpose-card {
        padding: 24px 24px 0 0;
        border-left: 0;
        border-top: 1px solid var(--rx-line);
    }

    .rx-impact-purpose-card + .rx-impact-purpose-card {
        padding-left: 24px;
        border-left: 1px solid var(--rx-line);
    }
}

@media (max-width: 767px) {
    .rx-impact-page-main {
        padding-top: 12px;
    }

    .rx-impact-intro {
        text-align: left;
    }

    .rx-impact-intro .rx-page-copy {
        text-align: justify;
        text-justify: inter-word;
    }

    .rx-impact-map {
        grid-template-columns: 1fr;
        grid-template-areas:
            "center"
            "human"
            "animal"
            "plant"
            "industry";
        gap: 26px;
    }

    .rx-impact-center {
        min-height: 330px;
    }

    .rx-impact-orbit {
        width: min(300px, 100%);
    }

    .rx-impact-dna {
        width: 125px;
        height: 210px;
    }

    .rx-impact-area,
    .rx-impact-area.rx-impact-right {
        grid-template-columns: 72px 1fr;
        gap: 16px;
    }

    .rx-impact-icon {
        width: 64px;
        height: 64px;
    }

    .rx-impact-icon svg {
        width: 32px;
        height: 32px;
    }

    .rx-impact-divider {
        margin-top: 30px;
    }

    .rx-impact-purpose {
        grid-template-columns: 1fr;
    }

    .rx-impact-purpose-card,
    .rx-impact-purpose-card + .rx-impact-purpose-card {
        padding: 24px 0;
        border-left: 0;
        border-top: 1px solid var(--rx-line);
    }
}


@media (prefers-reduced-motion: reduce) {
    .rx-impact-orbit::before,
    .rx-impact-orbit::after {
        animation: none !important;
    }
}


/* =========================================================
   CONTACTO · PAGE
========================================================= */
.rx-contact-page-main {
    padding: 12px 0 18px;
}

.rx-contact-page-main > .rx-container {
    width: min(1320px, calc(100% - 72px));
}

.rx-contact-layout {
    display: grid;
    grid-template-columns: minmax(0, .94fr) minmax(430px, 1.06fr);
    column-gap: 32px;
    align-items: start;
}

.rx-contact-primary {
    min-width: 0;
}

.rx-contact-intro {
    max-width: 640px;
}

.rx-contact-intro .rx-page-kicker {
    margin-bottom: 10px;
}

.rx-contact-intro .rx-page-title {
    font-size: clamp(3.2rem, 5vw, 5.4rem);
}

.rx-contact-intro .rx-section-title {
    margin-top: 0;
    font-size: clamp(1.8rem, 2.8vw, 3rem);
}

.rx-contact-intro .rx-page-copy {
    margin-top: 14px;
    font-size: .96rem;
    line-height: 1.5;
}

.rx-contact-form-card,
.rx-contact-method,
.rx-contact-video {
    border: 1px solid rgba(213,216,230,.52);
    background: rgba(7,9,46,.24);
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.025),
        0 12px 28px rgba(0,0,0,.10);
}

.rx-contact-form-card {
    margin-top: 10px;
    border-radius: 14px;
    padding: 22px 24px 22px;
}

.rx-contact-form-head {
    display: grid;
    grid-template-columns: 58px 1fr;
    gap: 15px;
    align-items: center;
    margin-bottom: 18px;
}

.rx-contact-form-head .rx-impact-icon {
    width: 52px;
    height: 52px;
    color: var(--rx-cyan);
}

.rx-contact-form-head h2,
.rx-contact-side h2 {
    margin: 0;
    color: #FFFFFF;
    font-family: var(--font-display);
    font-weight: 700;
}

.rx-contact-form-head h2 {
    font-size: 1.42rem;
}

.rx-contact-form-head p,
.rx-contact-side > p,
.rx-contact-location-copy {
    margin: 4px 0 0;
    color: var(--rx-text);
    font-size: .9rem;
    line-height: 1.45;
}

.rx-contact-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 12px;
}

.rx-contact-field {
    display: grid;
    gap: 8px;
}

.rx-contact-field-wide {
    grid-column: 1 / -1;
}

.rx-contact-field label {
    color: #FFFFFF;
    font-weight: 650;
    font-size: .82rem;
}

.rx-contact-field label span {
    color: var(--rx-red);
}

.rx-contact-field input,
.rx-contact-field select,
.rx-contact-field textarea {
    width: 100%;
    color: #FFFFFF;
    background: rgba(8,10,49,.60);
    border: 1px solid rgba(120,148,225,.68);
    border-radius: 9px;
    min-height: 46px;
    padding: 10px 13px;
    outline: none;
    transition: border-color .25s ease, box-shadow .25s ease, background .25s ease;
}

.rx-contact-field textarea {
    min-height: 108px;
    resize: vertical;
}

.rx-contact-field input::placeholder,
.rx-contact-field textarea::placeholder {
    color: rgba(213,216,230,.72);
}

.rx-contact-field input:focus,
.rx-contact-field select:focus,
.rx-contact-field textarea:focus {
    border-color: var(--rx-cyan);
    background: rgba(8,10,49,.78);
    box-shadow:
        0 0 0 3px rgba(0,174,239,.08),
        0 0 18px rgba(0,174,239,.08);
}

.rx-contact-honeypot {
    position: absolute !important;
    left: -9999px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
}

.rx-contact-form-footer {
    margin-top: 16px;
    display: grid;
    grid-template-columns: minmax(175px, .68fr) 1fr;
    gap: 16px;
    align-items: center;
}

.rx-contact-form-footer .rx-button {
    min-height: 48px;
    padding: 11px 22px;
}

.rx-contact-privacy {
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--rx-text);
    font-size: .78rem;
    line-height: 1.45;
}

.rx-contact-privacy svg {
    width: 22px;
    height: 22px;
    flex: 0 0 22px;
    fill: none;
    stroke: #FFFFFF;
    stroke-width: 1.6;
}

.rx-contact-status {
    margin: 0 0 18px;
    padding: 12px 14px;
    border-radius: 10px;
    font-size: .9rem;
}

.rx-contact-status-success {
    color: #D9FFEA;
    border: 1px solid rgba(0,220,120,.40);
    background: rgba(0,220,120,.08);
}

.rx-contact-status-error {
    color: #FFE1E7;
    border: 1px solid rgba(255,23,68,.40);
    background: rgba(255,23,68,.08);
}

.rx-contact-side {
    padding-left: 28px;
    border-left: 1px solid var(--rx-line);
}

.rx-contact-side h2 {
    font-size: 1.55rem;
}

.rx-contact-methods {
    margin-top: 14px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.rx-contact-method {
    min-height: 102px;
    border-radius: 11px;
    padding: 14px;
    display: grid;
    grid-template-columns: 46px 1fr auto;
    gap: 11px;
    align-items: center;
}

.rx-contact-method .rx-impact-icon {
    width: 42px;
    height: 42px;
}

.rx-contact-method .rx-impact-icon svg {
    width: 23px;
    height: 23px;
}

.rx-contact-method h3 {
    margin: 0;
    color: #FFFFFF;
    font-size: .92rem;
    font-family: var(--font-display);
}

.rx-contact-method p {
    margin: 2px 0 0;
    color: var(--rx-text);
    font-size: .76rem;
    line-height: 1.35;
}

.rx-contact-method strong {
    display: block;
    margin-top: 4px;
    color: var(--rx-cyan);
    font-size: .8rem;
}

.rx-contact-method-arrow {
    color: var(--rx-cyan);
    font-size: 1.4rem;
}

.rx-contact-method.is-static {
    cursor: default;
}

.rx-contact-location {
    margin-top: 22px;
}

.rx-contact-location h2 {
    font-size: 1.5rem;
}

.rx-contact-video {
    margin-top: 16px;
    border-radius: 14px;
    padding: 8px;
}

.rx-contact-video .rx-video-frame {
    border: 0;
    border-radius: 8px;
}

.rx-contact-video-note {
    margin-top: 9px;
    color: rgba(213,216,230,.72);
    font-size: .76rem;
}

@media (max-width: 1100px) {
    .rx-contact-page-main > .rx-container {
        width: min(920px, calc(100% - 56px));
    }

    .rx-contact-layout {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .rx-contact-form-card {
        margin-top: 10px;
    }

    .rx-contact-side {
        padding-left: 0;
        border-left: 0;
        border-top: 1px solid var(--rx-line);
        padding-top: 28px;
    }
}

@media (max-width: 767px) {
    .rx-contact-page-main {
        padding-top: 14px;
    }

    .rx-contact-page-main > .rx-container {
        width: min(100% - 32px, 720px);
    }

    .rx-contact-layout {
        gap: 24px;
    }

    .rx-contact-form-card {
        margin-top: 10px;
        padding: 20px 16px;
    }

    .rx-contact-form-card,
    .rx-contact-side,
    .rx-contact-form-grid,
    .rx-contact-form-footer,
    .rx-contact-methods {
        grid-template-columns: 1fr;
    }

    .rx-contact-form-card,
    .rx-contact-side {
        width: 100%;
        max-width: none;
        grid-column: 1 !important;
        grid-row: auto !important;
    }

    .rx-contact-method {
        grid-template-columns: 48px 1fr auto;
    }

    .rx-contact-side {
        padding-top: 26px;
    }

    .rx-contact-intro .rx-section-title {
        line-height: 1.08;
    }
}


/* =========================================================
   MI CUENTA · LOGIN / REGISTRO
========================================================= */
.rx-account-button.is-active {
    color: #FFFFFF;
    border-color: rgba(0,174,239,.35);
    box-shadow:
        -4px 0 12px rgba(255,23,68,.10),
        4px 0 12px rgba(0,174,239,.18);
}

.rx-account-page-main {
    padding: 20px 0 24px;
}

.rx-account-layout {
    min-height: 690px;
    display: grid;
    grid-template-columns: minmax(0, .92fr) minmax(470px, 1.08fr);
    gap: 70px;
    align-items: center;
}

.rx-account-layout.is-register {
    grid-template-columns: minmax(0, .95fr) minmax(560px, 1.05fr);
    gap: 58px;
}

.rx-account-hero {
    max-width: 650px;
}

.rx-account-title {
    margin: 24px 0 0;
    color: #FFFFFF;
    font-family: var(--font-display);
    font-size: clamp(3.5rem, 5.7vw, 6.6rem);
    line-height: .98;
    font-weight: 700;
    letter-spacing: -.04em;
}

.rx-account-layout.is-register .rx-account-title {
    font-size: clamp(3.2rem, 5vw, 5.7rem);
}

.rx-account-lead {
    margin: 34px 0 0;
    max-width: 620px;
    color: var(--rx-text);
    font-size: 1.18rem;
    line-height: 1.55;
    text-align: justify;
    text-justify: inter-word;
}

.rx-account-benefits {
    margin-top: 34px;
    display: grid;
    gap: 20px;
}

.rx-account-benefit {
    display: grid;
    grid-template-columns: 74px 1fr;
    gap: 22px;
    align-items: center;
    padding: 4px 0;
}

.rx-account-benefit + .rx-account-benefit {
    padding-top: 20px;
    border-top: 1px solid var(--rx-line);
}

.rx-account-benefit .rx-value-icon {
    width: 58px;
    height: 58px;
    margin: 0;
}

.rx-account-benefit h2 {
    margin: 0;
    color: #FFFFFF;
    font-family: var(--font-sans);
    font-size: .88rem;
    letter-spacing: .18em;
    font-weight: 750;
}

.rx-account-benefit p {
    margin: 8px 0 0;
    color: var(--rx-text);
    line-height: 1.45;
}

.rx-account-card {
    position: relative;
    padding: 44px 48px;
    border: 1px solid transparent;
    border-radius: 16px;
    background:
        linear-gradient(rgba(7,9,46,.82), rgba(7,9,46,.82)) padding-box,
        linear-gradient(145deg, rgba(0,174,239,.72), rgba(0,174,239,.55), rgba(255,23,68,.50)) border-box;
    box-shadow:
        -14px 0 30px rgba(255,23,68,.06),
        14px 0 30px rgba(0,174,239,.06),
        0 24px 60px rgba(0,0,0,.20);
    backdrop-filter: blur(12px);
}

.rx-account-layout.is-register .rx-account-card {
    padding: 36px 42px;
}

.rx-account-card h2 {
    margin: 0;
    color: #FFFFFF;
    font-family: var(--font-display);
    font-size: clamp(2rem, 3.2vw, 3.25rem);
    line-height: 1;
    font-weight: 700;
}

.rx-account-card-intro {
    margin: 12px 0 28px;
    color: var(--rx-text);
    font-size: 1rem;
    line-height: 1.45;
}

.rx-account-form {
    display: grid;
    gap: 20px;
}

.rx-account-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 18px;
}

.rx-account-field {
    display: grid;
    gap: 9px;
}

.rx-account-field-wide {
    grid-column: 1 / -1;
}

.rx-account-field label {
    color: #FFFFFF;
    font-size: .88rem;
    font-weight: 700;
}

.rx-account-field label span {
    color: var(--rx-red);
}

.rx-account-field input {
    width: 100%;
    min-height: 54px;
    padding: 12px 15px;
    color: #FFFFFF;
    background: rgba(8,10,49,.70);
    border: 1px solid rgba(126,151,222,.72);
    border-radius: 10px;
    outline: none;
    transition:
        border-color .25s ease,
        box-shadow .25s ease,
        background .25s ease;
}

.rx-account-field input::placeholder {
    color: rgba(213,216,230,.58);
}

.rx-account-field input:focus {
    border-color: var(--rx-cyan);
    background: rgba(8,10,49,.88);
    box-shadow:
        0 0 0 3px rgba(0,174,239,.07),
        0 0 20px rgba(0,174,239,.07);
}

.rx-account-input-shell {
    position: relative;
}

.rx-account-input-shell input {
    padding-right: 52px;
}

.rx-account-input-shell.has-leading-icon input {
    padding-left: 54px;
}

.rx-account-leading-icon,
.rx-password-toggle {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.rx-account-leading-icon {
    left: 17px;
    width: 24px;
    height: 24px;
    color: var(--rx-text);
    pointer-events: none;
}

.rx-password-toggle {
    right: 10px;
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    color: var(--rx-text);
    background: transparent;
    border: 0;
    cursor: pointer;
}

.rx-account-leading-icon svg,
.rx-password-toggle svg {
    width: 23px;
    height: 23px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.rx-password-toggle:hover,
.rx-password-toggle.is-visible {
    color: var(--rx-cyan);
}

.rx-account-login-options {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    color: var(--rx-text);
    font-size: .88rem;
}

.rx-account-login-options > a {
    color: var(--rx-cyan);
}

.rx-account-remember {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
}

.rx-account-remember input {
    width: 18px;
    height: 18px;
    accent-color: var(--rx-cyan);
}

.rx-account-submit {
    width: 100%;
    margin-top: 2px;
}

.rx-account-security-note {
    margin: -4px 0 0;
    color: rgba(213,216,230,.72);
    font-size: .74rem;
    line-height: 1.45;
}

.rx-account-switch {
    margin-top: 26px;
    padding-top: 24px;
    border-top: 1px solid var(--rx-line);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    color: var(--rx-text);
    font-size: .9rem;
}

.rx-account-switch > a:not(.rx-button) {
    color: var(--rx-cyan);
    font-weight: 700;
}

.rx-account-create-link {
    width: 100%;
}

.rx-account-message {
    margin: 0 0 20px;
    padding: 12px 14px;
    border-radius: 10px;
    font-size: .88rem;
}

.rx-account-message.is-error {
    color: #FFE1E7;
    border: 1px solid rgba(255,23,68,.40);
    background: rgba(255,23,68,.08);
}

.rx-account-message.is-success {
    color: #D9FFEA;
    border: 1px solid rgba(0,220,120,.38);
    background: rgba(0,220,120,.07);
}

.rx-account-native {
    min-height: 620px;
    padding: 34px 0;
}

.rx-account-native .woocommerce {
    color: var(--rx-text);
}

.rx-account-native .woocommerce-MyAccount-navigation,
.rx-account-native .woocommerce-MyAccount-content,
.rx-account-native .woocommerce-ResetPassword {
    border: 1px solid rgba(213,216,230,.28);
    border-radius: 14px;
    background: rgba(7,9,46,.44);
    padding: 24px;
}

.rx-account-native .woocommerce-MyAccount-navigation ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.rx-account-native .woocommerce-MyAccount-navigation li + li {
    border-top: 1px solid var(--rx-line);
}

.rx-account-native .woocommerce-MyAccount-navigation a {
    display: block;
    padding: 12px 4px;
}

.rx-account-native input,
.rx-account-native select,
.rx-account-native textarea {
    color: #FFFFFF;
    background: rgba(8,10,49,.72);
    border: 1px solid rgba(126,151,222,.62);
}

@media (max-width: 1100px) {
    .rx-account-layout,
    .rx-account-layout.is-register {
        min-height: 0;
        grid-template-columns: 1fr;
        gap: 34px;
        align-items: start;
    }

    .rx-account-hero {
        max-width: 820px;
    }

    .rx-account-title,
    .rx-account-layout.is-register .rx-account-title {
        font-size: clamp(3rem, 8vw, 5.2rem);
    }

    .rx-account-lead {
        margin-top: 22px;
    }

    .rx-account-card {
        width: min(760px, 100%);
        margin-inline: auto;
    }
}

@media (max-width: 767px) {
    .rx-account-page-main {
        padding-top: 10px;
    }

    .rx-account-layout,
    .rx-account-layout.is-register {
        gap: 26px;
    }

    .rx-account-title,
    .rx-account-layout.is-register .rx-account-title {
        margin-top: 12px;
        font-size: clamp(2.65rem, 14vw, 4.1rem);
        line-height: 1;
    }

    .rx-account-lead {
        margin-top: 16px;
        font-size: .98rem;
        line-height: 1.5;
    }

    .rx-account-benefits {
        margin-top: 24px;
    }

    .rx-account-benefit {
        grid-template-columns: 58px 1fr;
        gap: 14px;
    }

    .rx-account-benefit .rx-value-icon {
        width: 48px;
        height: 48px;
    }

    .rx-account-benefit h2 {
        font-size: .78rem;
        letter-spacing: .12em;
    }

    .rx-account-card,
    .rx-account-layout.is-register .rx-account-card {
        padding: 24px 18px;
        border-radius: 14px;
    }

    .rx-account-card h2 {
        font-size: 2rem;
    }

    .rx-account-card-intro {
        margin-bottom: 20px;
    }

    .rx-account-form-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .rx-account-field-wide {
        grid-column: auto;
    }

    .rx-account-login-options {
        align-items: flex-start;
        flex-direction: column;
        gap: 10px;
    }

    .rx-account-switch {
        flex-direction: column;
        text-align: center;
    }

    .rx-account-native {
        min-height: 0;
        padding-top: 18px;
    }
}


/* =========================================================
   MI CUENTA · COMPACTACIÓN Y CAMPOS OSCUROS v0.8.1
========================================================= */
body.recombidx-site .rx-account-page-main .rx-account-field input {
    color: #FFFFFF !important;
    background-color: rgba(8,10,49,.82) !important;
    background-image: none !important;
    border-color: rgba(126,151,222,.72) !important;
    box-shadow: none;
    caret-color: #FFFFFF;
}

body.recombidx-site .rx-account-page-main .rx-account-field input:focus {
    background-color: rgba(9,13,53,.96) !important;
    border-color: var(--rx-cyan) !important;
    box-shadow:
        0 0 0 3px rgba(0,174,239,.07),
        0 0 18px rgba(0,174,239,.08) !important;
}

body.recombidx-site .rx-account-page-main .rx-account-field input:-webkit-autofill,
body.recombidx-site .rx-account-page-main .rx-account-field input:-webkit-autofill:hover,
body.recombidx-site .rx-account-page-main .rx-account-field input:-webkit-autofill:focus {
    -webkit-text-fill-color: #FFFFFF !important;
    -webkit-box-shadow: 0 0 0 1000px #090D35 inset !important;
    box-shadow: 0 0 0 1000px #090D35 inset !important;
    caret-color: #FFFFFF !important;
    transition: background-color 9999s ease-out 0s;
}

.rx-account-layout.is-login .rx-account-switch {
    flex-direction: row;
}

@media (min-width: 1101px) {
    .rx-account-page-main {
        padding: 8px 0 12px;
    }

    .rx-account-layout,
    .rx-account-layout.is-register {
        min-height: 0;
        gap: 42px;
        align-items: center;
    }

    .rx-account-layout.is-register {
        grid-template-columns: minmax(0, .9fr) minmax(540px, 1.1fr);
    }

    .rx-account-hero {
        max-width: 590px;
    }

    .rx-account-title {
        margin-top: 12px;
        font-size: clamp(3rem, 4.6vw, 5.25rem);
        line-height: .96;
    }

    .rx-account-layout.is-register .rx-account-title {
        font-size: clamp(2.75rem, 4vw, 4.7rem);
    }

    .rx-account-lead {
        margin-top: 18px;
        max-width: 570px;
        font-size: 1rem;
        line-height: 1.42;
    }

    .rx-account-benefits {
        margin-top: 22px;
        gap: 10px;
    }

    .rx-account-benefit {
        grid-template-columns: 54px 1fr;
        gap: 14px;
        padding: 2px 0;
    }

    .rx-account-benefit + .rx-account-benefit {
        padding-top: 11px;
    }

    .rx-account-benefit .rx-value-icon {
        width: 46px;
        height: 46px;
    }

    .rx-account-benefit h2 {
        font-size: .76rem;
        letter-spacing: .14em;
    }

    .rx-account-benefit p {
        margin-top: 4px;
        font-size: .86rem;
        line-height: 1.32;
    }

    .rx-account-card {
        padding: 28px 32px;
    }

    .rx-account-layout.is-register .rx-account-card {
        padding: 22px 28px;
    }

    .rx-account-card h2 {
        font-size: clamp(1.8rem, 2.45vw, 2.65rem);
    }

    .rx-account-card-intro {
        margin: 7px 0 16px;
        font-size: .88rem;
    }

    .rx-account-form {
        gap: 13px;
    }

    .rx-account-form-grid {
        gap: 11px 14px;
    }

    .rx-account-field {
        gap: 5px;
    }

    .rx-account-field label {
        font-size: .78rem;
    }

    .rx-account-field input {
        min-height: 43px;
        padding: 8px 12px;
        font-size: .88rem;
        border-radius: 8px;
    }

    .rx-account-input-shell input {
        padding-right: 46px;
    }

    .rx-account-input-shell.has-leading-icon input {
        padding-left: 46px;
    }

    .rx-account-leading-icon {
        left: 14px;
        width: 20px;
        height: 20px;
    }

    .rx-password-toggle {
        right: 7px;
        width: 34px;
        height: 34px;
    }

    .rx-account-leading-icon svg,
    .rx-password-toggle svg {
        width: 20px;
        height: 20px;
    }

    .rx-account-login-options {
        font-size: .8rem;
    }

    .rx-account-submit {
        min-height: 46px;
        padding: 10px 22px;
    }

    .rx-account-security-note {
        margin-top: -2px;
        font-size: .68rem;
        line-height: 1.32;
    }

    .rx-account-switch {
        margin-top: 14px;
        padding-top: 13px;
        font-size: .82rem;
    }

    .rx-account-layout.is-login .rx-account-switch {
        gap: 8px;
    }
}

@media (max-width: 767px) {
    .rx-nav {
        gap: 16px;
    }

    .rx-nav-link {
        font-size: .66rem;
        font-weight: 500;
    }
}


/* =========================================================
   MI CUENTA · ALINEACIÓN DESKTOP v0.8.2
========================================================= */
@media (min-width: 1101px) {
    .rx-account-layout,
    .rx-account-layout.is-register {
        align-items: start;
        gap: 28px;
    }

    .rx-account-hero {
        max-width: 620px;
        padding-top: 24px;
    }

    .rx-account-layout.is-login {
        grid-template-columns: minmax(0, 1fr) minmax(440px, .72fr);
        gap: 32px;
    }

    .rx-account-layout.is-login .rx-account-card {
        width: min(620px, 100%);
        justify-self: end;
    }

    .rx-account-layout.is-register {
        grid-template-columns: minmax(0, .92fr) minmax(540px, 1.08fr);
        gap: 30px;
    }
}


/* =========================================================
   PORTAL DE USUARIOS · v0.9.0
========================================================= */
.rx-account-page-main:has(.rx-portal-layout) {
    padding-top: 16px;
}

.rx-portal-layout {
    display: grid;
    grid-template-columns: 230px minmax(0, 1fr);
    gap: 28px;
    align-items: stretch;
}

.rx-portal-sidebar {
    min-height: 690px;
    display: flex;
    flex-direction: column;
    padding: 24px 14px 18px;
    border: 1px solid rgba(126,151,222,.40);
    border-radius: 14px;
    background: rgba(7,9,46,.38);
}

.rx-portal-eyebrow {
    margin: 0 10px 16px;
    color: var(--rx-text);
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .22em;
}

.rx-portal-nav {
    display: grid;
    gap: 6px;
}

.rx-portal-nav a,
.rx-portal-logout {
    min-height: 48px;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 12px;
    color: #FFFFFF;
    border: 1px solid transparent;
    border-radius: 10px;
    text-decoration: none;
    transition: .25s ease;
}

.rx-portal-nav a:hover,
.rx-portal-nav a.is-active,
.rx-portal-logout:hover {
    color: var(--rx-cyan);
    background: rgba(0,174,239,.045);
    border-color: rgba(0,174,239,.62);
    box-shadow: 0 0 18px rgba(0,174,239,.06);
}

.rx-portal-nav-icon {
    width: 24px;
    height: 24px;
    flex: 0 0 24px;
}

.rx-portal-nav-icon svg {
    width: 100%;
    height: 100%;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.rx-portal-logout {
    margin-top: auto;
    border-top: 1px solid var(--rx-line);
    border-radius: 0;
    padding-top: 18px;
}

.rx-portal-main {
    min-width: 0;
    padding-top: 2px;
}

.rx-portal-main > .rx-portal-eyebrow {
    margin-left: 0;
    margin-bottom: 8px;
}

.rx-portal-title {
    margin: 0;
    color: #FFFFFF;
    font-family: var(--font-display);
    font-size: clamp(2.2rem, 4.2vw, 4.4rem);
    line-height: 1;
    letter-spacing: -.035em;
}

.rx-portal-title span {
    color: var(--rx-cyan);
}

.rx-portal-lead {
    margin: 10px 0 18px;
    max-width: 760px;
    color: var(--rx-text);
    font-size: 1rem;
    line-height: 1.45;
}

.rx-portal-notice {
    margin: 0 0 16px;
    padding: 10px 12px;
    border: 1px solid rgba(255,23,68,.30);
    border-radius: 9px;
    color: #FFD9E1;
    background: rgba(255,23,68,.06);
    font-size: .8rem;
}

.rx-portal-dashboard-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 215px;
    gap: 18px;
    align-items: start;
}

.rx-portal-center {
    min-width: 0;
}

.rx-portal-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.rx-portal-stat {
    min-height: 112px;
    position: relative;
    display: grid;
    grid-template-columns: 50px 1fr;
    gap: 10px;
    align-items: center;
    padding: 14px;
    border: 1px solid rgba(126,151,222,.52);
    border-radius: 12px;
    background: rgba(7,9,46,.32);
}

.rx-portal-stat-icon {
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    border: 2px dotted currentColor;
    border-radius: 50%;
}

.rx-portal-stat-icon svg {
    width: 23px;
    height: 23px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.rx-portal-stat.is-red { color: var(--rx-red); }
.rx-portal-stat.is-cyan { color: var(--rx-cyan); }
.rx-portal-stat.is-purple { color: #00AEEF; }

.rx-portal-stat strong {
    display: block;
    color: #FFFFFF;
    font-size: 1.6rem;
    line-height: 1;
}

.rx-portal-stat span:not(.rx-portal-stat-icon):not(.rx-portal-card-arrow) {
    display: block;
    margin-top: 5px;
    color: var(--rx-text);
    font-size: .76rem;
}

.rx-portal-card-arrow {
    position: absolute;
    right: 12px;
    bottom: 10px;
    color: currentColor;
}

.rx-portal-panel,
.rx-portal-action-card,
.rx-portal-help-card {
    border: 1px solid rgba(126,151,222,.46);
    border-radius: 12px;
    background: rgba(7,9,46,.34);
}

.rx-portal-panel {
    margin-top: 16px;
    padding: 14px 16px 10px;
}

.rx-portal-section-panel {
    margin-top: 12px;
}

.rx-portal-panel-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--rx-line);
}

.rx-portal-panel-head h2,
.rx-portal-action-card h2,
.rx-portal-help-card h2 {
    margin: 0;
    color: #FFFFFF;
    font-family: var(--font-sans);
    font-size: 1.05rem;
}

.rx-portal-panel-head a,
.rx-portal-table a {
    color: var(--rx-cyan);
    font-size: .78rem;
    font-weight: 700;
}

.rx-portal-table-wrap {
    overflow-x: auto;
}

.rx-portal-table {
    width: 100%;
    border-collapse: collapse;
    color: var(--rx-text);
    font-size: .75rem;
}

.rx-portal-table th,
.rx-portal-table td {
    padding: 10px 7px;
    text-align: left;
    border-bottom: 1px solid var(--rx-line);
    white-space: nowrap;
}

.rx-portal-table th {
    color: rgba(213,216,230,.78);
    font-size: .64rem;
    letter-spacing: .14em;
    font-weight: 700;
}

.rx-portal-empty {
    padding: 24px 10px !important;
    text-align: center !important;
    white-space: normal !important;
    color: rgba(213,216,230,.68);
}

.rx-portal-status {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 86px;
    padding: 5px 9px;
    border: 1px solid currentColor;
    border-radius: 8px;
    font-size: .68rem;
    line-height: 1;
}

.rx-portal-status.is-success { color: #17E8A4; background: rgba(23,232,164,.06); }
.rx-portal-status.is-danger { color: var(--rx-red); background: rgba(255,23,68,.06); }
.rx-portal-status.is-info { color: var(--rx-cyan); background: rgba(0,174,239,.06); }
.rx-portal-status.is-purple { color: #00AEEF; background: rgba(0,174,239,.07); }
.rx-portal-status.is-neutral { color: var(--rx-text); background: rgba(255,255,255,.025); }

.rx-portal-rail {
    display: grid;
    gap: 16px;
}

.rx-portal-action-card,
.rx-portal-help-card {
    padding: 18px;
}

.rx-portal-action-card {
    border-color: rgba(0,174,239,.72);
    box-shadow: 0 0 22px rgba(0,174,239,.06);
}

.rx-portal-action-card p,
.rx-portal-help-card p {
    margin: 12px 0 16px;
    color: var(--rx-text);
    font-size: .78rem;
    line-height: 1.5;
}

.rx-portal-action-card .rx-button,
.rx-portal-help-card .rx-button {
    width: 100%;
    min-height: 44px;
    padding: 9px 14px;
    font-size: .78rem;
}

@media (max-width: 1180px) {
    .rx-portal-layout {
        grid-template-columns: 200px minmax(0, 1fr);
        gap: 20px;
    }

    .rx-portal-dashboard-grid {
        grid-template-columns: 1fr;
    }

    .rx-portal-rail {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .rx-portal-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .rx-portal-layout {
        grid-template-columns: 1fr;
    }

    .rx-portal-sidebar {
        min-height: 0;
        padding: 14px;
    }

    .rx-portal-sidebar > .rx-portal-eyebrow {
        margin: 0 0 10px;
    }

    .rx-portal-nav {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .rx-portal-nav a {
        min-height: 44px;
        justify-content: center;
        text-align: center;
        font-size: .72rem;
    }

    .rx-portal-nav-icon {
        width: 20px;
        height: 20px;
        flex-basis: 20px;
    }

    .rx-portal-logout {
        margin-top: 12px;
        justify-content: center;
    }
}

@media (max-width: 600px) {
    .rx-account-page-main:has(.rx-portal-layout) {
        padding-top: 8px;
    }

    .rx-portal-layout {
        gap: 16px;
    }

    .rx-portal-nav {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .rx-portal-main > .rx-portal-eyebrow {
        display: none;
    }

    .rx-portal-title {
        font-size: clamp(2.25rem, 12vw, 3.3rem);
    }

    .rx-portal-lead {
        font-size: .9rem;
    }

    .rx-portal-stats {
        grid-template-columns: 1fr 1fr;
        gap: 9px;
    }

    .rx-portal-stat {
        min-height: 96px;
        grid-template-columns: 40px 1fr;
        padding: 11px;
    }

    .rx-portal-stat-icon {
        width: 38px;
        height: 38px;
    }

    .rx-portal-stat strong {
        font-size: 1.3rem;
    }

    .rx-portal-rail {
        grid-template-columns: 1fr;
    }

    .rx-portal-panel {
        padding-inline: 10px;
    }
}


/* =========================================================
   PORTAL · DATOS DE CUENTA WOOCOMMERCE v0.9.1
========================================================= */
.rx-portal-native-layout .rx-account-native {
    min-height: 0;
    padding: 0;
}

.rx-portal-native-content .rx-account-native .woocommerce {
    color: var(--rx-text);
}

.rx-portal-native-content .woocommerce-MyAccount-navigation {
    display: none !important;
}

.rx-portal-native-content .woocommerce-MyAccount-content {
    float: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 22px 24px !important;
    color: var(--rx-text);
    border: 1px solid rgba(126,151,222,.42);
    border-radius: 14px;
    background: rgba(7,9,46,.34);
}

.rx-portal-native-content .woocommerce-MyAccount-content form {
    margin: 0;
}

.rx-portal-native-content .woocommerce-MyAccount-content p,
.rx-portal-native-content .woocommerce-MyAccount-content em,
.rx-portal-native-content .woocommerce-MyAccount-content span,
.rx-portal-native-content .woocommerce-MyAccount-content legend,
.rx-portal-native-content .woocommerce-MyAccount-content label {
    color: var(--rx-text);
}

.rx-portal-native-content .woocommerce-MyAccount-content label,
.rx-portal-native-content .woocommerce-MyAccount-content legend {
    font-weight: 700;
    color: #FFFFFF !important;
}

.rx-portal-native-content .woocommerce-MyAccount-content fieldset {
    margin: 18px 0 0;
    padding: 18px 0 0;
    border: 0;
    border-top: 1px solid var(--rx-line);
}

.rx-portal-native-content .woocommerce-MyAccount-content legend {
    padding: 0 12px 0 0;
    font-size: .92rem;
}

body.recombidx-site .rx-portal-native-content .woocommerce-MyAccount-content input.input-text,
body.recombidx-site .rx-portal-native-content .woocommerce-MyAccount-content input[type="text"],
body.recombidx-site .rx-portal-native-content .woocommerce-MyAccount-content input[type="email"],
body.recombidx-site .rx-portal-native-content .woocommerce-MyAccount-content input[type="password"],
body.recombidx-site .rx-portal-native-content .woocommerce-MyAccount-content input[type="tel"],
body.recombidx-site .rx-portal-native-content .woocommerce-MyAccount-content select,
body.recombidx-site .rx-portal-native-content .woocommerce-MyAccount-content textarea {
    width: 100%;
    min-height: 46px;
    padding: 10px 13px;
    color: #FFFFFF !important;
    background-color: rgba(8,10,49,.86) !important;
    background-image: none !important;
    border: 1px solid rgba(126,151,222,.62) !important;
    border-radius: 9px !important;
    box-shadow: none !important;
    outline: none !important;
    caret-color: #FFFFFF;
}

body.recombidx-site .rx-portal-native-content .woocommerce-MyAccount-content input::placeholder,
body.recombidx-site .rx-portal-native-content .woocommerce-MyAccount-content textarea::placeholder {
    color: rgba(213,216,230,.46) !important;
}

body.recombidx-site .rx-portal-native-content .woocommerce-MyAccount-content input:focus,
body.recombidx-site .rx-portal-native-content .woocommerce-MyAccount-content select:focus,
body.recombidx-site .rx-portal-native-content .woocommerce-MyAccount-content textarea:focus {
    background-color: rgba(9,13,53,.98) !important;
    border-color: var(--rx-cyan) !important;
    box-shadow:
        0 0 0 3px rgba(0,174,239,.06),
        0 0 18px rgba(0,174,239,.07) !important;
}

body.recombidx-site .rx-portal-native-content .woocommerce-MyAccount-content input:-webkit-autofill,
body.recombidx-site .rx-portal-native-content .woocommerce-MyAccount-content input:-webkit-autofill:hover,
body.recombidx-site .rx-portal-native-content .woocommerce-MyAccount-content input:-webkit-autofill:focus {
    -webkit-text-fill-color: #FFFFFF !important;
    -webkit-box-shadow: 0 0 0 1000px #090D35 inset !important;
    box-shadow: 0 0 0 1000px #090D35 inset !important;
    caret-color: #FFFFFF !important;
}

.rx-portal-native-content .woocommerce-form-row {
    margin-bottom: 12px !important;
}

.rx-portal-native-content .woocommerce form .form-row-first,
.rx-portal-native-content .woocommerce form .form-row-last {
    width: calc(50% - 7px);
}

.rx-portal-native-content .woocommerce form .form-row-first {
    float: left;
}

.rx-portal-native-content .woocommerce form .form-row-last {
    float: right;
}

.rx-portal-native-content .show-password-input {
    color: var(--rx-text) !important;
}

.rx-portal-native-content .woocommerce button.button,
.rx-portal-native-content .woocommerce input.button,
.rx-portal-native-content .woocommerce a.button {
    min-height: 46px;
    padding: 10px 22px !important;
    color: #FFFFFF !important;
    background:
        linear-gradient(#07092E,#07092E) padding-box,
        linear-gradient(90deg,var(--rx-red),var(--rx-purple),var(--rx-cyan)) border-box !important;
    border: 1px solid transparent !important;
    border-radius: 999px !important;
    box-shadow:
        -8px 0 16px rgba(255,23,68,.12),
        8px 0 16px rgba(0,174,239,.12);
    font-weight: 700;
}

.rx-portal-native-content .woocommerce button.button:hover,
.rx-portal-native-content .woocommerce input.button:hover,
.rx-portal-native-content .woocommerce a.button:hover {
    color: #FFFFFF !important;
    box-shadow:
        -12px 0 22px rgba(255,23,68,.20),
        12px 0 22px rgba(0,174,239,.20);
}

.rx-portal-native-content .woocommerce-message,
.rx-portal-native-content .woocommerce-error,
.rx-portal-native-content .woocommerce-info {
    color: var(--rx-text);
    background: rgba(9,13,53,.84);
    border: 1px solid rgba(126,151,222,.38);
    border-radius: 10px;
}

@media (max-width: 767px) {
    .rx-portal-native-content .woocommerce-MyAccount-content {
        padding: 18px 14px !important;
    }

    .rx-portal-native-content .woocommerce form .form-row-first,
    .rx-portal-native-content .woocommerce form .form-row-last {
        width: 100%;
        float: none;
    }
}


/* =========================================================
   TIENDA CIENTÍFICA · v0.10.0
========================================================= */
.rx-shop-main {
    padding: 24px 0 22px;
}

.rx-shop-intro {
    max-width: 620px;
}

.rx-shop-title {
    margin: 8px 0 0;
    color: #FFFFFF;
    font-family: var(--font-display);
    font-size: clamp(3rem, 5vw, 5.4rem);
    line-height: .98;
    letter-spacing: -.035em;
}

.rx-shop-lead {
    margin: 14px 0 0;
    color: var(--rx-text);
    font-size: 1rem;
    line-height: 1.45;
    max-width: 600px;
}

.rx-shop-filters {
    margin-top: 20px;
    display: grid;
    grid-template-columns: minmax(300px, 1.7fr) repeat(3, minmax(165px, .68fr));
    gap: 12px;
}

.rx-shop-search,
.rx-shop-select {
    min-height: 50px;
    position: relative;
    display: flex;
    align-items: center;
    border: 1px solid rgba(126,151,222,.62);
    border-radius: 10px;
    background: rgba(7,9,46,.45);
}

.rx-shop-search {
    border-color: rgba(0,174,239,.88);
    box-shadow: 0 0 18px rgba(0,174,239,.04);
}

.rx-shop-search svg {
    position: absolute;
    left: 16px;
    width: 23px;
    height: 23px;
    fill: none;
    stroke: #FFFFFF;
    stroke-width: 1.8;
    stroke-linecap: round;
}

body.recombidx-site .rx-shop-search input,
body.recombidx-site .rx-shop-select select {
    width: 100%;
    min-height: 48px;
    margin: 0;
    color: #FFFFFF !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    outline: none !important;
}

body.recombidx-site .rx-shop-search input {
    padding: 10px 14px 10px 52px;
}

body.recombidx-site .rx-shop-search input::placeholder {
    color: rgba(213,216,230,.76);
}

body.recombidx-site .rx-shop-select select {
    appearance: none;
    padding: 10px 42px 10px 16px;
    cursor: pointer;
}

.rx-shop-select::after {
    content: "";
    position: absolute;
    right: 17px;
    width: 9px;
    height: 9px;
    border-right: 2px solid #FFFFFF;
    border-bottom: 2px solid #FFFFFF;
    transform: rotate(45deg) translateY(-3px);
    pointer-events: none;
}

.rx-shop-select:has(select:disabled) {
    opacity: .58;
}

body.recombidx-site .rx-shop-select option {
    color: #FFFFFF;
    background: #090D35;
}

.rx-shop-grid {
    margin-top: 22px;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.rx-product-card {
    min-width: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid rgba(126,151,222,.46);
    border-radius: 13px;
    background: rgba(7,9,46,.38);
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.025),
        0 18px 32px rgba(0,0,0,.10);
    transition:
        border-color .25s ease,
        transform .25s ease,
        box-shadow .25s ease;
}

.rx-product-card:hover {
    transform: translateY(-3px);
    border-color: rgba(0,174,239,.48);
    box-shadow:
        -8px 0 20px rgba(255,23,68,.06),
        8px 0 20px rgba(0,174,239,.08),
        0 22px 38px rgba(0,0,0,.14);
}

.rx-product-image {
    min-height: 230px;
    aspect-ratio: 1.2 / 1;
    display: grid;
    place-items: center;
    overflow: hidden;
    padding: 16px;
    background:
        radial-gradient(circle at 30% 20%, rgba(0,174,239,.10), transparent 36%),
        linear-gradient(180deg, rgba(9,13,53,.84), rgba(7,9,46,.28));
}

.rx-product-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: transform .35s ease;
}

.rx-product-card:hover .rx-product-image img {
    transform: scale(1.025);
}

.rx-product-card-body {
    flex: 1;
    display: flex;
    flex-direction: column;
    padding: 0 18px 18px;
}

.rx-product-category {
    margin: 0 0 8px;
    color: rgba(213,216,230,.72);
    font-size: .62rem;
    font-weight: 750;
    letter-spacing: .18em;
    text-transform: uppercase;
}

.rx-product-title {
    margin: 0;
    font-family: var(--font-display);
    font-size: 1.65rem;
    line-height: 1.02;
}

.rx-product-title a {
    color: transparent;
    background: linear-gradient(90deg, var(--rx-cyan) 0%, #FFFFFF 55%, var(--rx-red) 100%);
    -webkit-background-clip: text;
    background-clip: text;
}

.rx-product-description {
    margin: 12px 0 16px;
    color: var(--rx-text);
    font-size: .88rem;
    line-height: 1.45;
}

.rx-shop-quote-button {
    min-height: 42px;
    margin-top: auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 9px 14px;
    color: var(--rx-red);
    border: 1px solid var(--rx-red);
    border-radius: 8px;
    font-size: .82rem;
    font-weight: 750;
    text-decoration: none;
    background: rgba(255,23,68,.01);
    transition: .25s ease;
}

.rx-shop-quote-button:hover {
    color: #FFFFFF;
    border-color: transparent;
    background:
        linear-gradient(#07092E,#07092E) padding-box,
        linear-gradient(90deg,var(--rx-red),var(--rx-purple),var(--rx-cyan)) border-box;
    box-shadow:
        -8px 0 18px rgba(255,23,68,.14),
        8px 0 18px rgba(0,174,239,.14);
}

.rx-shop-advice {
    margin-top: 18px;
    display: grid;
    grid-template-columns: 86px minmax(0, 1fr) auto;
    gap: 18px;
    align-items: center;
    padding: 16px 20px;
    border: 1px solid rgba(126,151,222,.48);
    border-radius: 12px;
    background: rgba(7,9,46,.34);
}

.rx-shop-advice .rx-impact-icon {
    width: 54px;
    height: 54px;
    color: var(--rx-cyan);
}

.rx-shop-advice h2 {
    margin: 0;
    color: #FFFFFF;
    font-family: var(--font-display);
    font-size: 1.5rem;
}

.rx-shop-advice p {
    margin: 3px 0 0;
    color: var(--rx-text);
    font-size: .86rem;
}

.rx-shop-advice-button {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 22px;
    color: var(--rx-cyan);
    border: 1px solid var(--rx-cyan);
    border-radius: 8px;
    font-size: .8rem;
    font-weight: 750;
    text-decoration: none;
}

.rx-shop-advice-button:hover {
    color: #FFFFFF;
    box-shadow: 0 0 20px rgba(0,174,239,.14);
}

.rx-shop-empty {
    margin-top: 22px;
    padding: 38px 24px;
    text-align: center;
    border: 1px solid rgba(126,151,222,.40);
    border-radius: 14px;
    background: rgba(7,9,46,.34);
}

.rx-shop-empty h2 {
    margin: 0;
    color: #FFFFFF;
    font-family: var(--font-display);
}

.rx-shop-empty p {
    color: var(--rx-text);
}

.rx-shop-empty .rx-button {
    margin-top: 10px;
}

.rx-shop-pagination {
    margin-top: 20px;
}

.rx-shop-pagination .nav-links {
    display: flex;
    justify-content: center;
    gap: 8px;
}

.rx-shop-pagination .page-numbers {
    min-width: 36px;
    min-height: 36px;
    display: grid;
    place-items: center;
    color: var(--rx-text);
    border: 1px solid rgba(126,151,222,.42);
    border-radius: 8px;
}

.rx-shop-pagination .page-numbers.current,
.rx-shop-pagination .page-numbers:hover {
    color: #FFFFFF;
    border-color: var(--rx-cyan);
}

@media (max-width: 1100px) {
    .rx-shop-filters {
        grid-template-columns: 1.5fr repeat(3, 1fr);
    }

    .rx-shop-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .rx-shop-main {
        padding-top: 12px;
    }

    .rx-shop-title {
        font-size: clamp(2.7rem, 13vw, 4rem);
    }

    .rx-shop-lead {
        font-size: .92rem;
    }

    .rx-shop-filters {
        grid-template-columns: 1fr;
        gap: 9px;
    }

    .rx-shop-grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .rx-product-image {
        min-height: 210px;
    }

    .rx-shop-advice {
        grid-template-columns: 52px 1fr;
        padding: 15px;
    }

    .rx-shop-advice-button {
        grid-column: 1 / -1;
        width: 100%;
    }
}


/* =========================================================
   HEADER · ACCESO DIRECTO A TIENDA v0.10.1
========================================================= */
.rx-shop-button.is-active {
    color: #FFFFFF;
    border-color: rgba(0,174,239,.35);
    box-shadow:
        -4px 0 12px rgba(255,23,68,.10),
        4px 0 12px rgba(0,174,239,.18);
}


/* =========================================================
   ÁREAS DE IMPACTO · ÓRBITA Y ADN v0.11.5
========================================================= */
.rx-impact-orbit {
    background: rgba(7,9,46,.10);
    box-shadow: none !important;
}

/* Haz rotatorio: sólo rojo/cian, sin aro púrpura exterior. */
.rx-impact-orbit::before {
    inset: 4px;
    padding: 2px;
    background: conic-gradient(
        from 7deg,
        transparent 0deg 16deg,
        rgba(255,23,68,.22) 20deg,
        #FF1744 28deg 146deg,
        rgba(255,23,68,.20) 154deg,
        transparent 164deg 196deg,
        rgba(0,174,239,.20) 204deg,
        #00AEEF 214deg 332deg,
        rgba(0,174,239,.18) 340deg,
        transparent 348deg 360deg
    );
    filter:
        drop-shadow(0 0 3px rgba(255,23,68,.92))
        drop-shadow(0 0 9px rgba(255,23,68,.42))
        drop-shadow(0 0 3px rgba(0,174,239,.92))
        drop-shadow(0 0 9px rgba(0,174,239,.42));
    animation-duration: 20s;
}

/* Eliminado el antiguo halo/borde iluminado exterior. */
.rx-impact-orbit::after {
    content: none !important;
    display: none !important;
    box-shadow: none !important;
    animation: none !important;
}

/* Nodos púrpura neón; la base navy oculta el haz cuando pasa por debajo. */
.rx-impact-orbit-node,
.rx-impact-node-a,
.rx-impact-node-b,
.rx-impact-node-c,
.rx-impact-node-d {
    width: 20px;
    height: 20px;
    color: var(--rx-purple) !important;
    border: 3px solid var(--rx-purple) !important;
    background: #07092E !important;
    box-shadow:
        0 0 0 6px #07092E,
        0 0 7px rgba(0,174,239,.95),
        0 0 16px rgba(0,174,239,.55),
        inset 0 0 8px rgba(0,174,239,.38);
    z-index: 4;
}

/* Icono de ADN más limpio, simétrico e inclinado. */
.rx-impact-dna {
    width: 148px;
    height: 224px;
    overflow: visible;
    transform: rotate(-11deg);
    transform-origin: 50% 50%;
    filter:
        drop-shadow(-2px 0 7px rgba(0,174,239,.20))
        drop-shadow(2px 0 7px rgba(255,23,68,.20));
}

.rx-impact-dna-icon {
    transform-origin: 80px 120px;
}

.rx-impact-dna .rx-dna-a {
    stroke: url(#rxDnaBlueRed);
    stroke-width: 6.5;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.rx-impact-dna .rx-dna-b {
    stroke: url(#rxDnaRedBlue);
    stroke-width: 6.5;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.rx-impact-dna .rx-dna-rung {
    stroke: rgba(213,216,230,.82);
    stroke-width: 3;
    stroke-linecap: round;
    opacity: .82;
}

.rx-impact-dna .rx-dna-rung path:nth-child(odd) {
    stroke: rgba(0,174,239,.88);
}

@media (max-width: 767px) {
    .rx-impact-dna {
        width: 122px;
        height: 188px;
        transform: rotate(-9deg);
    }

    .rx-impact-orbit-node,
    .rx-impact-node-a,
    .rx-impact-node-b,
    .rx-impact-node-c,
    .rx-impact-node-d {
        width: 18px;
        height: 18px;
        box-shadow:
            0 0 0 5px #07092E,
            0 0 6px rgba(0,174,239,.92),
            0 0 13px rgba(0,174,239,.48);
    }
}

@media (prefers-reduced-motion: reduce) {
    .rx-impact-orbit::before {
        animation: none !important;
    }
}


/* =========================================================
   ÁREAS DE IMPACTO · ADN ICONOGRÁFICO Y NODOS LIMPIOS v0.11.7
========================================================= */

/* ADN inspirado en un icono clásico de doble hélice: dos ondas claras,
   travesaños visibles y una inclinación integrada en el SVG. */
.rx-impact-dna {
    width: 190px;
    height: 150px;
    overflow: visible;
    transform: none !important;
    filter:
        drop-shadow(-2px 0 6px rgba(0,174,239,.18))
        drop-shadow(2px 0 6px rgba(255,23,68,.18));
}

.rx-impact-dna .rx-dna-a {
    stroke: #00AEEF !important;
    stroke-width: 7px !important;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.rx-impact-dna .rx-dna-b {
    stroke: #FF1744 !important;
    stroke-width: 7px !important;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.rx-impact-dna .rx-dna-rung {
    stroke: rgba(225,228,241,.88) !important;
    stroke-width: 3.4px !important;
    stroke-linecap: round;
    opacity: .92 !important;
}

.rx-impact-dna .rx-dna-rung path:nth-child(3n+2) {
    stroke: rgba(0,174,239,.90) !important;
}

/* Nodos morados sin aro/disco exterior oscuro.
   El fondo sólido del propio nodo basta para tapar el haz que pasa por debajo. */
.rx-impact-orbit-node,
.rx-impact-node-a,
.rx-impact-node-b,
.rx-impact-node-c,
.rx-impact-node-d {
    width: 20px;
    height: 20px;
    border: 3px solid #00AEEF !important;
    background: #07092E !important;
    box-shadow:
        0 0 6px rgba(0,174,239,.95),
        0 0 14px rgba(0,174,239,.58),
        inset 0 0 7px rgba(0,174,239,.30) !important;
}

@media (max-width: 767px) {
    .rx-impact-dna {
        width: 158px;
        height: 126px;
        transform: none !important;
    }

    .rx-impact-orbit-node,
    .rx-impact-node-a,
    .rx-impact-node-b,
    .rx-impact-node-c,
    .rx-impact-node-d {
        width: 18px;
        height: 18px;
        box-shadow:
            0 0 5px rgba(0,174,239,.94),
            0 0 12px rgba(0,174,239,.52),
            inset 0 0 6px rgba(0,174,239,.28) !important;
    }
}


/* =========================================================
   SOBRE RECOMBIDX · EXPERIENCIA INTERACTIVA v0.12.0
   Compacta el contenido y usa movimiento para revelar información.
========================================================= */
.rx-about-experience {
    padding: 28px 0 18px;
}

.rx-about-stage {
    min-height: min(590px, calc(100vh - 150px));
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(520px, 1.1fr);
    gap: clamp(42px, 6vw, 92px);
    align-items: center;
}

.rx-about-stage-copy {
    max-width: 640px;
}

.rx-about-stage-copy .rx-page-title {
    font-size: clamp(3.4rem, 6.2vw, 6.7rem);
}

.rx-about-lead {
    max-width: 590px;
    margin: 22px 0 0;
    color: var(--rx-text);
    font-size: clamp(1rem, 1.2vw, 1.18rem);
    line-height: 1.65;
}

.rx-about-signals {
    margin-top: 30px;
    display: flex;
    flex-wrap: wrap;
    gap: 12px 22px;
    color: rgba(255,255,255,.82);
    font-size: .78rem;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.rx-about-signals span {
    display: inline-flex;
    align-items: center;
    gap: 9px;
}

.rx-signal-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    box-shadow: 0 0 12px currentColor;
}
.rx-signal-red { color: var(--rx-red); background: currentColor; }
.rx-signal-blue { color: var(--rx-cyan); background: currentColor; }
.rx-signal-purple { color: var(--rx-purple); background: currentColor; }

.rx-about-story {
    position: relative;
    min-height: 390px;
    padding: 26px;
    border: 1px solid rgba(213,216,230,.17);
    border-radius: 18px;
    overflow: hidden;
    background:
        radial-gradient(circle at 15% 0%, rgba(255,23,68,.07), transparent 38%),
        radial-gradient(circle at 100% 100%, rgba(0,174,239,.08), transparent 42%),
        rgba(9,13,53,.62);
    box-shadow: 0 24px 70px rgba(0,0,0,.18);
    backdrop-filter: blur(12px);
}

.rx-about-story::before {
    content: "";
    position: absolute;
    width: 240px;
    height: 240px;
    right: -110px;
    top: -110px;
    border: 1px solid rgba(0,174,239,.22);
    border-radius: 50%;
    box-shadow: 0 0 55px rgba(0,174,239,.08);
    animation: rxAboutOrbit 18s linear infinite;
}

.rx-about-story-tabs {
    position: relative;
    z-index: 2;
    display: inline-flex;
    gap: 4px;
    padding: 4px;
    border: 1px solid rgba(213,216,230,.14);
    border-radius: 999px;
    background: rgba(7,9,46,.48);
}

.rx-about-story-tab {
    min-width: 106px;
    min-height: 40px;
    padding: 8px 18px;
    border: 0;
    border-radius: 999px;
    color: var(--rx-text);
    background: transparent;
    cursor: pointer;
    transition: color .22s ease, background .22s ease, box-shadow .22s ease;
}

.rx-about-story-tab.is-active {
    color: #fff;
    background: rgba(255,255,255,.07);
    box-shadow: inset 0 0 0 1px rgba(0,174,239,.22), 0 0 20px rgba(0,174,239,.07);
}

.rx-about-story-viewport {
    position: relative;
    z-index: 2;
    min-height: 250px;
    margin-top: 30px;
}

.rx-about-story-panel {
    display: grid;
    grid-template-columns: 70px 1fr;
    gap: 24px;
    align-items: start;
    animation: rxAboutPanelIn .48s cubic-bezier(.22,.8,.32,1) both;
}

.rx-about-story-panel[hidden] {
    display: none;
}

.rx-about-story-index {
    font-family: var(--font-display);
    font-size: 3rem;
    line-height: 1;
    opacity: .75;
}

.rx-story-red .rx-about-story-index { color: var(--rx-red); }
.rx-story-blue .rx-about-story-index { color: var(--rx-cyan); }

.rx-about-story-label {
    margin: 2px 0 10px;
    color: var(--rx-text);
    font-size: .72rem;
    font-weight: 600;
    letter-spacing: .18em;
    text-transform: uppercase;
}

.rx-about-story-panel h2 {
    max-width: 590px;
    margin: 0;
    color: #fff;
    font-family: var(--font-display);
    font-size: clamp(2rem, 3vw, 3.25rem);
    line-height: 1.04;
    letter-spacing: -.025em;
}

.rx-about-story-panel p:last-child {
    max-width: 610px;
    margin: 20px 0 0;
    color: var(--rx-text);
    line-height: 1.58;
}

.rx-about-story-progress {
    position: absolute;
    left: 26px;
    right: 26px;
    bottom: 20px;
    height: 2px;
    overflow: hidden;
    background: rgba(213,216,230,.12);
}

.rx-about-story-progress span {
    display: block;
    width: 100%;
    height: 100%;
    transform-origin: left center;
    background: linear-gradient(90deg, var(--rx-red), var(--rx-purple), var(--rx-cyan));
    animation: rxAboutProgress 7.2s linear infinite;
}

.rx-story-restart .rx-about-story-progress span {
    animation-name: rxAboutProgressRestart;
}

.rx-values-motion {
    margin-top: 28px;
    padding: 26px 0 30px;
    border-top: 1px solid rgba(213,216,230,.18);
    border-bottom: 1px solid rgba(213,216,230,.18);
}

.rx-values-motion-head {
    display: grid;
    grid-template-columns: 1fr minmax(260px, .7fr);
    gap: 36px;
    align-items: end;
    margin-bottom: 22px;
}

.rx-values-motion-head .rx-page-kicker {
    margin-bottom: 8px;
}

.rx-values-motion-head h2 {
    margin: 0;
    color: #fff;
    font-family: var(--font-display);
    font-size: clamp(2rem, 3.4vw, 3.4rem);
    line-height: 1;
}

.rx-values-motion-head > p {
    margin: 0 0 2px;
    color: var(--rx-text);
    line-height: 1.5;
}

.rx-values-marquee {
    overflow: hidden;
    mask-image: linear-gradient(90deg, transparent, #000 5%, #000 95%, transparent);
}

.rx-values-marquee-track {
    width: max-content;
    display: flex;
    animation: rxValuesTravel 30s linear infinite;
}

.rx-values-marquee:hover .rx-values-marquee-track,
.rx-values-marquee:focus-within .rx-values-marquee-track {
    animation-play-state: paused;
}

.rx-values-marquee-group {
    display: flex;
    gap: 14px;
    padding-right: 14px;
}

.rx-value-chip {
    width: clamp(255px, 22vw, 330px);
    min-height: 150px;
    padding: 20px 22px;
    border: 1px solid rgba(213,216,230,.15);
    border-radius: 14px;
    background: rgba(9,13,53,.48);
}

.rx-value-chip > span {
    display: block;
    margin-bottom: 12px;
    font-size: .7rem;
    font-weight: 700;
    letter-spacing: .16em;
}

.rx-value-chip strong {
    display: block;
    color: #fff;
    font-family: var(--font-display);
    font-size: 1.28rem;
}

.rx-value-chip p {
    margin: 10px 0 0;
    color: var(--rx-text);
    font-size: .9rem;
    line-height: 1.45;
}

.rx-chip-red > span { color: var(--rx-red); }
.rx-chip-blue > span { color: var(--rx-cyan); }
.rx-chip-purple > span { color: #00AEEF; }

.rx-process-deck {
    min-height: 360px;
    padding: 34px 0 20px;
    display: grid;
    grid-template-columns: minmax(280px, .7fr) minmax(0, 1.3fr);
    gap: clamp(42px, 6vw, 90px);
    align-items: center;
}

.rx-process-deck-copy .rx-section-title {
    max-width: 520px;
    font-size: clamp(2.55rem, 4vw, 4.5rem);
    line-height: .98;
}

.rx-process-deck-copy > p:last-child {
    max-width: 430px;
    margin: 18px 0 0;
    color: var(--rx-text);
    line-height: 1.55;
}

.rx-process-interactive {
    display: grid;
    grid-template-columns: minmax(180px, .42fr) minmax(0, 1fr);
    gap: 22px;
}

.rx-process-tabs {
    display: grid;
    gap: 7px;
    align-content: center;
}

.rx-process-tab {
    min-height: 58px;
    display: grid;
    grid-template-columns: 35px 1fr;
    gap: 12px;
    align-items: center;
    padding: 9px 14px;
    border: 1px solid transparent;
    border-radius: 11px;
    color: rgba(213,216,230,.72);
    background: transparent;
    text-align: left;
    cursor: pointer;
    transition: color .2s ease, border-color .2s ease, background .2s ease, transform .2s ease;
}

.rx-process-tab span {
    width: 30px;
    height: 30px;
    display: grid;
    place-items: center;
    border: 1px solid currentColor;
    border-radius: 50%;
    font-size: .8rem;
}

.rx-process-tab.is-active {
    color: #fff;
    border-color: rgba(213,216,230,.17);
    background: rgba(255,255,255,.04);
    transform: translateX(5px);
}

.rx-process-panel-wrap {
    min-height: 220px;
    display: grid;
    align-items: center;
    padding: 24px 26px;
    border-left: 1px solid rgba(213,216,230,.18);
}

.rx-process-panel {
    display: grid;
    grid-template-columns: 100px 1fr;
    gap: 24px;
    align-items: center;
    animation: rxAboutPanelIn .42s ease both;
}

.rx-process-panel[hidden] {
    display: none;
}

.rx-process-visual {
    position: relative;
    width: 86px;
    height: 86px;
    display: grid;
    place-items: center;
    border: 1px solid currentColor;
    border-radius: 50%;
}

.rx-process-visual::before,
.rx-process-visual::after,
.rx-process-visual i {
    content: "";
    position: absolute;
    border-radius: 50%;
    border: 1px solid currentColor;
}

.rx-process-visual::before { inset: 14px; opacity: .65; }
.rx-process-visual::after { inset: 28px; background: currentColor; box-shadow: 0 0 18px currentColor; }
.rx-process-visual i { inset: -7px; opacity: .22; animation: rxAboutPulse 3.8s ease-in-out infinite; }

.rx-process-panel strong {
    color: #fff;
    font-family: var(--font-display);
    font-size: 1.6rem;
}

.rx-process-panel p {
    margin: 10px 0 0;
    color: var(--rx-text);
    line-height: 1.52;
}

@keyframes rxAboutPanelIn {
    from { opacity: 0; transform: translateY(12px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes rxAboutProgress {
    from { transform: scaleX(0); }
    to { transform: scaleX(1); }
}

@keyframes rxAboutProgressRestart {
    from { transform: scaleX(0); }
    to { transform: scaleX(1); }
}

@keyframes rxValuesTravel {
    to { transform: translateX(-50%); }
}

@keyframes rxAboutOrbit {
    to { transform: rotate(360deg); }
}

@keyframes rxAboutPulse {
    0%, 100% { transform: scale(.94); opacity: .14; }
    50% { transform: scale(1.08); opacity: .34; }
}

@media (max-width: 1100px) {
    .rx-about-stage {
        min-height: 0;
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .rx-about-stage-copy {
        max-width: 800px;
    }

    .rx-about-story {
        min-height: 350px;
    }

    .rx-process-deck {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .rx-process-deck-copy {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 20px 34px;
        align-items: end;
    }

    .rx-process-deck-copy .rx-page-kicker {
        grid-column: 1 / -1;
        margin-bottom: -6px;
    }
}

@media (max-width: 767px) {
    .rx-about-experience {
        padding-top: 14px;
    }

    .rx-about-stage {
        gap: 22px;
    }

    .rx-about-stage-copy .rx-page-title {
        font-size: clamp(2.9rem, 14vw, 4.2rem);
    }

    .rx-about-lead {
        margin-top: 14px;
        line-height: 1.52;
    }

    .rx-about-signals {
        margin-top: 18px;
        gap: 8px 14px;
        font-size: .68rem;
    }

    .rx-about-story {
        min-height: 350px;
        padding: 18px;
        border-radius: 14px;
    }

    .rx-about-story-viewport {
        min-height: 244px;
        margin-top: 23px;
    }

    .rx-about-story-panel {
        grid-template-columns: 45px 1fr;
        gap: 14px;
    }

    .rx-about-story-index {
        font-size: 2.1rem;
    }

    .rx-about-story-panel h2 {
        font-size: clamp(1.7rem, 9vw, 2.45rem);
    }

    .rx-about-story-panel p:last-child {
        margin-top: 13px;
        font-size: .9rem;
        line-height: 1.5;
    }

    .rx-values-motion {
        margin-top: 22px;
        padding: 22px 0;
    }

    .rx-values-motion-head {
        grid-template-columns: 1fr;
        gap: 10px;
        margin-bottom: 17px;
    }

    .rx-values-motion-head > p {
        font-size: .88rem;
    }

    .rx-value-chip {
        width: 245px;
        min-height: 138px;
        padding: 17px 18px;
    }

    .rx-process-deck {
        min-height: 0;
        padding-top: 28px;
    }

    .rx-process-deck-copy {
        display: block;
    }

    .rx-process-deck-copy .rx-section-title {
        font-size: clamp(2.35rem, 11vw, 3.4rem);
    }

    .rx-process-interactive {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .rx-process-tabs {
        grid-template-columns: repeat(3, 1fr);
        gap: 6px;
    }

    .rx-process-tab {
        min-height: 72px;
        grid-template-columns: 1fr;
        justify-items: center;
        gap: 5px;
        padding: 8px 5px;
        font-size: .69rem;
        text-align: center;
    }

    .rx-process-tab.is-active {
        transform: translateY(-3px);
    }

    .rx-process-panel-wrap {
        min-height: 185px;
        padding: 18px 4px 10px;
        border-left: 0;
        border-top: 1px solid rgba(213,216,230,.18);
    }

    .rx-process-panel {
        grid-template-columns: 70px 1fr;
        gap: 16px;
    }

    .rx-process-visual {
        width: 64px;
        height: 64px;
    }

    .rx-process-visual::before { inset: 11px; }
    .rx-process-visual::after { inset: 22px; }

    .rx-process-panel strong {
        font-size: 1.35rem;
    }

    .rx-process-panel p {
        font-size: .88rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rx-about-story::before,
    .rx-about-story-progress span,
    .rx-values-marquee-track,
    .rx-process-visual i {
        animation: none !important;
    }

    .rx-values-marquee {
        overflow-x: auto;
        mask-image: none;
        scrollbar-width: thin;
    }

    .rx-values-marquee-group[aria-hidden="true"] {
        display: none;
    }
}


/* =========================================================
   SOBRE RECOMBIDX · REFINAMIENTO UX v0.12.1
========================================================= */

/* Misión / Visión: interacción explícita, sin barra que sugiera una carga. */
.rx-about-story {
    min-height: 352px;
    padding-bottom: 24px;
}

.rx-about-story-viewport {
    min-height: 228px;
}

.rx-about-story-progress {
    display: none !important;
}

.rx-about-story-tabs {
    gap: 6px;
    background: rgba(7,9,46,.58);
}

.rx-about-story-tab {
    min-width: 118px;
}

.rx-about-story-tab.is-active {
    background: linear-gradient(110deg, rgba(255,23,68,.08), rgba(0,174,239,.10), rgba(0,174,239,.10));
    border: 1px solid rgba(0,174,239,.30);
}

.rx-about-story-panel {
    grid-template-columns: 58px 1fr;
    gap: 22px;
}

.rx-about-story-index {
    font-size: 2.55rem;
}

.rx-about-story-panel h2 {
    font-size: clamp(1.95rem, 2.7vw, 3rem);
}

.rx-about-story-panel p:last-child {
    max-width: 650px;
}

/* Proceso: una sola pieza horizontal, sin columnas enfrentadas ni órbita decorativa. */
.rx-process-journey {
    min-height: 0;
    padding: 34px 0 18px;
    display: block;
}

.rx-process-journey-head {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(300px, .7fr);
    gap: 46px;
    align-items: end;
    margin-bottom: 24px;
}

.rx-process-journey-head .rx-page-kicker {
    margin-bottom: 9px;
}

.rx-process-journey-head .rx-section-title {
    max-width: 900px;
    font-size: clamp(2.6rem, 4vw, 4.6rem);
    line-height: .98;
}

.rx-process-journey-head > p {
    max-width: 480px;
    margin: 0 0 4px;
    color: var(--rx-text);
    line-height: 1.55;
}

.rx-process-journey-card {
    position: relative;
    padding: 26px 30px 24px;
    border: 1px solid rgba(213,216,230,.16);
    border-radius: 16px;
    background:
        linear-gradient(110deg, rgba(255,23,68,.025), transparent 31%, rgba(0,174,239,.025)),
        rgba(9,13,53,.42);
    overflow: hidden;
}

.rx-process-rail {
    display: grid;
    grid-template-columns: minmax(155px, 1fr) minmax(54px, .35fr) minmax(155px, 1fr) minmax(54px, .35fr) minmax(155px, 1fr);
    align-items: center;
    gap: 12px;
}

.rx-process-node {
    position: relative;
    min-height: 84px;
    display: grid;
    grid-template-columns: 44px 24px 1fr;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
    border: 1px solid transparent;
    border-radius: 12px;
    color: rgba(213,216,230,.62);
    background: transparent;
    text-align: left;
    cursor: pointer;
    transition: color .2s ease, border-color .2s ease, background .2s ease, transform .2s ease;
}

.rx-process-node:hover,
.rx-process-node:focus-visible {
    color: #fff;
    border-color: rgba(213,216,230,.14);
    background: rgba(255,255,255,.025);
}

.rx-process-node.is-active {
    color: #fff;
    border-color: rgba(213,216,230,.18);
    background: rgba(255,255,255,.045);
    transform: translateY(-2px);
}

.rx-process-node-number {
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .12em;
    opacity: .76;
}

.rx-process-node-dot {
    width: 17px;
    height: 17px;
    border: 2px solid currentColor;
    border-radius: 50%;
    box-shadow: 0 0 12px color-mix(in srgb, currentColor 45%, transparent);
}

.rx-process-node.is-active .rx-process-node-dot {
    background: currentColor;
    box-shadow: 0 0 18px color-mix(in srgb, currentColor 70%, transparent);
}

.rx-process-node strong {
    color: inherit;
    font-family: var(--font-display);
    font-size: 1.08rem;
}

.rx-process-rail-line {
    height: 1px;
    background: linear-gradient(90deg, rgba(255,23,68,.40), rgba(0,174,239,.46), rgba(0,174,239,.40));
}

.rx-process-detail {
    min-height: 160px;
    margin-top: 20px;
    padding: 22px 24px 6px;
    border-top: 1px solid rgba(213,216,230,.13);
}

.rx-process-journey .rx-process-panel {
    display: grid;
    grid-template-columns: minmax(150px, .28fr) minmax(0, 1fr);
    gap: 24px 44px;
    align-items: start;
    animation: rxAboutPanelIn .34s ease both;
}

.rx-process-journey .rx-process-panel[hidden] {
    display: none;
}

.rx-process-detail-kicker {
    padding-top: 5px;
    color: var(--rx-cyan);
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .16em;
}

.rx-process-journey .rx-process-panel h3 {
    grid-column: 2;
    margin: 0;
    color: #fff;
    font-family: var(--font-display);
    font-size: clamp(1.55rem, 2.35vw, 2.45rem);
    line-height: 1.08;
    letter-spacing: -.015em;
}

.rx-process-journey .rx-process-panel p {
    grid-column: 2;
    margin: -12px 0 0;
    max-width: 780px;
    color: var(--rx-text);
    line-height: 1.5;
}

.rx-process-journey .rx-step-red { color: var(--rx-red); }
.rx-process-journey .rx-step-blue { color: var(--rx-cyan); }
.rx-process-journey .rx-step-purple { color: #00AEEF; }

@media (max-width: 900px) {
    .rx-process-journey-head {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .rx-process-journey-head > p {
        max-width: 760px;
    }

    .rx-process-rail {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 8px;
    }

    .rx-process-rail-line {
        display: none;
    }

    .rx-process-node {
        grid-template-columns: 1fr;
        justify-items: center;
        gap: 6px;
        text-align: center;
    }

    .rx-process-node-number {
        display: none;
    }

    .rx-process-detail {
        min-height: 180px;
    }
}

@media (max-width: 767px) {
    .rx-about-story {
        min-height: 318px;
        padding-bottom: 14px;
    }

    .rx-about-story-viewport {
        min-height: 215px;
    }

    .rx-about-story-panel {
        grid-template-columns: 38px 1fr;
        gap: 12px;
    }

    .rx-about-story-index {
        font-size: 1.85rem;
    }

    .rx-process-journey {
        padding-top: 26px;
    }

    .rx-process-journey-head {
        margin-bottom: 16px;
    }

    .rx-process-journey-card {
        padding: 14px;
        border-radius: 13px;
    }

    .rx-process-node {
        min-height: 72px;
        padding: 8px 5px;
    }

    .rx-process-node strong {
        font-family: var(--font-sans);
        font-size: .74rem;
        font-weight: 600;
    }

    .rx-process-node-dot {
        width: 14px;
        height: 14px;
    }

    .rx-process-detail {
        min-height: 205px;
        margin-top: 12px;
        padding: 18px 4px 4px;
    }

    .rx-process-journey .rx-process-panel {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .rx-process-journey .rx-process-panel h3,
    .rx-process-journey .rx-process-panel p {
        grid-column: 1;
    }

    .rx-process-journey .rx-process-panel h3 {
        font-size: clamp(1.55rem, 8vw, 2rem);
    }

    .rx-process-journey .rx-process-panel p {
        margin: 0;
        font-size: .9rem;
    }

    .rx-process-detail-kicker {
        padding-top: 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rx-process-node,
    .rx-about-story-tab {
        transition: none !important;
    }
}


/* =========================================================
   RECOMBIDX · REVISIÓN VISUAL ROJO + CIAN v0.13.0
========================================================= */
:root,
body.recombidx-site {
    --rx-purple: #00AEEF;
    --rx-purple-dark: #00AEEF;
    --rx-button-blue-top: #285B9F;
    --rx-button-blue-mid: #1D477E;
    --rx-button-blue-bottom: #153563;
}

.rx-text-blue {
    --rx-word-gradient: linear-gradient(#00AEEF, #00AEEF) !important;
    filter:
        drop-shadow(0 0 2px rgba(0,174,239,.26))
        drop-shadow(0 0 7px rgba(0,174,239,.10)) !important;
}

.rx-text-red {
    --rx-word-gradient: linear-gradient(#FF1744, #FF1744) !important;
    filter:
        drop-shadow(0 0 2px rgba(255,23,68,.26))
        drop-shadow(0 0 7px rgba(255,23,68,.10)) !important;
}

.rx-dot-purple,
.rx-value-purple,
.rx-mini-purple,
.rx-feature-purple,
.rx-step-purple,
.rx-service-purple,
.rx-impact-purple,
.rx-signal-purple,
.rx-chip-purple,
.rx-portal-stat.is-purple,
.rx-portal-status.is-purple {
    color: var(--rx-cyan) !important;
}

.rx-dot-purple,
.rx-value-purple .rx-value-line,
.rx-mini-purple .rx-value-mini-line,
.rx-feature-purple .rx-feature-line,
.rx-step-purple .rx-feature-line,
.rx-service-purple .rx-service-line {
    background: var(--rx-cyan) !important;
}

/* Botón estándar: azul más claro, espejo sutil, borde/glow rojo + cian. */
.rx-button,
.rx-shop-quote-button,
.rx-shop-secondary-button,
.rx-shop-advice-button,
.rx-account-submit,
.rx-portal-native-content .woocommerce a.button,
.rx-portal-native-content .woocommerce button.button {
    position: relative;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    border: 1px solid transparent !important;
    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.14) 0%,
            rgba(255,255,255,.055) 46%,
            rgba(255,255,255,.015) 47%,
            rgba(0,0,0,.10) 53%,
            rgba(0,0,0,.04) 100%
        ) padding-box,
        linear-gradient(
            180deg,
            var(--rx-button-blue-top) 0%,
            var(--rx-button-blue-mid) 48%,
            var(--rx-button-blue-bottom) 100%
        ) padding-box,
        conic-gradient(
            from 90deg,
            #FF1744 0 25%,
            #00AEEF 25% 50%,
            #FF1744 50% 75%,
            #00AEEF 75% 100%
        ) border-box !important;
    background-origin: border-box !important;
    background-clip: padding-box, padding-box, border-box !important;
    box-shadow:
        -9px 0 20px rgba(255,23,68,.13),
        9px 0 20px rgba(0,174,239,.15),
        inset 0 1px 0 rgba(255,255,255,.15),
        0 8px 22px rgba(0,0,0,.18) !important;
    text-shadow: 0 1px 2px rgba(0,0,0,.35);
}

.rx-button:hover,
.rx-shop-quote-button:hover,
.rx-shop-secondary-button:hover,
.rx-shop-advice-button:hover,
.rx-account-submit:hover,
.rx-portal-native-content .woocommerce a.button:hover,
.rx-portal-native-content .woocommerce button.button:hover {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.18) 0%,
            rgba(255,255,255,.07) 46%,
            rgba(255,255,255,.02) 47%,
            rgba(0,0,0,.08) 53%,
            rgba(0,0,0,.02) 100%
        ) padding-box,
        linear-gradient(180deg, #3170B9 0%, #24558F 48%, #193E70 100%) padding-box,
        conic-gradient(
            from 90deg,
            #FF1744 0 25%,
            #00AEEF 25% 50%,
            #FF1744 50% 75%,
            #00AEEF 75% 100%
        ) border-box !important;
    box-shadow:
        -13px 0 27px rgba(255,23,68,.20),
        13px 0 27px rgba(0,174,239,.22),
        inset 0 1px 0 rgba(255,255,255,.18),
        0 10px 26px rgba(0,0,0,.20) !important;
}

/* Productos: tarjetas compactas, imagen contenida, título legible y descripción. */
.rx-shop-grid {
    grid-template-columns: repeat(auto-fill, minmax(215px, 255px)) !important;
    justify-content: start;
    gap: 14px !important;
}

.rx-product-card {
    width: 100%;
    max-width: 255px;
    min-height: 0;
    border-radius: 12px;
}

.rx-product-image {
    min-height: 0 !important;
    height: 156px !important;
    aspect-ratio: auto !important;
    padding: 10px 14px !important;
    background:
        radial-gradient(circle at 30% 18%, rgba(0,174,239,.08), transparent 38%),
        linear-gradient(180deg, rgba(9,13,53,.76), rgba(7,9,46,.26)) !important;
}

.rx-product-image img {
    width: 100% !important;
    height: 100% !important;
    max-height: 136px;
    object-fit: contain !important;
}

.rx-product-card-body {
    padding: 12px 14px 14px !important;
}

.rx-product-category {
    margin-bottom: 6px !important;
    font-size: .58rem !important;
}

.rx-product-title {
    font-size: 1.12rem !important;
    line-height: 1.18 !important;
}

.rx-product-title a {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    background: none !important;
    text-shadow: 0 0 8px rgba(0,174,239,.08);
}

.rx-product-description {
    min-height: 3.5em;
    margin: 8px 0 12px !important;
    color: #D5D8E6 !important;
    font-size: .76rem !important;
    line-height: 1.42 !important;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.rx-product-actions {
    margin-top: auto;
    display: grid;
    gap: 8px;
}

.rx-product-actions form {
    margin: 0;
}

.rx-shop-quote-button,
.rx-shop-secondary-button {
    width: 100%;
    min-height: 38px !important;
    margin: 0 !important;
    padding: 8px 11px !important;
    border-radius: 9px !important;
    font: inherit;
    font-size: .72rem !important;
    font-weight: 700 !important;
    cursor: pointer;
    text-decoration: none !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

@media (max-width: 1100px) {
    .rx-shop-grid {
        grid-template-columns: repeat(auto-fill, minmax(210px, 245px)) !important;
    }
}

@media (max-width: 767px) {
    .rx-shop-grid {
        grid-template-columns: repeat(auto-fill, minmax(165px, 1fr)) !important;
    }

    .rx-product-card {
        max-width: none;
    }

    .rx-product-image {
        height: 142px !important;
    }
}


/* =========================================================
   RECOMBIDX · BOTONES CRISTAL + BORDE NEÓN v0.13.1
========================================================= */
@keyframes rxNeonBreath {
    0%, 100% {
        box-shadow:
            -7px 0 16px rgba(255,23,68,.14),
            7px 0 16px rgba(0,174,239,.15),
            inset 0 1px 0 rgba(255,255,255,.13),
            inset 0 -1px 0 rgba(0,0,0,.10);
    }
    50% {
        box-shadow:
            -13px 0 27px rgba(255,23,68,.30),
            13px 0 27px rgba(0,174,239,.30),
            inset 0 1px 0 rgba(255,255,255,.18),
            inset 0 -1px 0 rgba(0,0,0,.08);
    }
}

.rx-button,
.rx-shop-quote-button,
.rx-shop-secondary-button,
.rx-shop-advice-button,
.rx-account-submit,
.rx-portal-native-content .woocommerce a.button,
.rx-portal-native-content .woocommerce button.button,
.rx-single-product-main .woocommerce button.button,
.rx-single-product-main .woocommerce a.button,
.rx-single-product-main .woocommerce input.button {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    border: 1px solid transparent !important;
    background:
        linear-gradient(
            112deg,
            rgba(255,255,255,.16) 0%,
            rgba(255,255,255,.07) 18%,
            rgba(255,255,255,.015) 40%,
            rgba(255,255,255,.09) 51%,
            rgba(255,255,255,.025) 63%,
            rgba(255,255,255,.06) 100%
        ) padding-box,
        linear-gradient(
            180deg,
            rgba(34,94,156,.60) 0%,
            rgba(25,76,132,.50) 50%,
            rgba(19,60,111,.54) 100%
        ) padding-box,
        linear-gradient(
            90deg,
            #FF1744 0%,
            #FF1744 43%,
            #9B4D92 50%,
            #00AEEF 57%,
            #00AEEF 100%
        ) border-box !important;
    background-origin: border-box !important;
    background-clip: padding-box, padding-box, border-box !important;
    backdrop-filter: blur(12px) saturate(118%);
    -webkit-backdrop-filter: blur(12px) saturate(118%);
    box-shadow:
        -7px 0 16px rgba(255,23,68,.14),
        7px 0 16px rgba(0,174,239,.15),
        inset 0 1px 0 rgba(255,255,255,.13),
        inset 0 -1px 0 rgba(0,0,0,.10) !important;
    text-shadow: 0 1px 2px rgba(0,0,0,.28);
    animation: rxNeonBreath 5.8s ease-in-out infinite !important;
    transition:
        transform .25s ease,
        filter .25s ease,
        box-shadow .25s ease !important;
}

.rx-button:hover,
.rx-shop-quote-button:hover,
.rx-shop-secondary-button:hover,
.rx-shop-advice-button:hover,
.rx-account-submit:hover,
.rx-portal-native-content .woocommerce a.button:hover,
.rx-portal-native-content .woocommerce button.button:hover,
.rx-single-product-main .woocommerce button.button:hover,
.rx-single-product-main .woocommerce a.button:hover,
.rx-single-product-main .woocommerce input.button:hover {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    transform: translateY(-1px);
    filter: brightness(1.08);
}

@media (prefers-reduced-motion: reduce) {
    .rx-button,
    .rx-shop-quote-button,
    .rx-shop-secondary-button,
    .rx-shop-advice-button,
    .rx-account-submit,
    .rx-portal-native-content .woocommerce a.button,
    .rx-portal-native-content .woocommerce button.button,
    .rx-single-product-main .woocommerce button.button,
    .rx-single-product-main .woocommerce a.button,
    .rx-single-product-main .woocommerce input.button {
        animation: none !important;
    }
}

/* =========================================================
   ÁREAS DE IMPACTO · LOGO CENTRAL v0.13.1
========================================================= */
.rx-impact-center-logo {
    position: relative;
    z-index: 3;
    width: min(205px, 62%);
    height: auto;
    object-fit: contain;
    transform: rotate(-12deg);
    transform-origin: center;
    filter:
        drop-shadow(-5px 0 13px rgba(255,23,68,.13))
        drop-shadow(5px 0 13px rgba(0,174,239,.16));
}

.rx-impact-center-logo-fallback {
    position: relative;
    z-index: 3;
    color: #FFFFFF;
    font-family: var(--font-display);
    font-size: 1.65rem;
    font-weight: 700;
    transform: rotate(-12deg);
}

@media (max-width: 767px) {
    .rx-impact-center-logo {
        width: min(172px, 66%);
    }
}

/* =========================================================
   PRODUCTOS · MODO PRELANZAMIENTO DE MARCA v0.13.1
========================================================= */
.rx-shop-prelaunch {
    min-height: clamp(330px, 46vh, 520px);
    margin: 30px 0 22px;
    padding: clamp(34px, 6vw, 70px);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    border: 1px solid rgba(0,174,239,.30);
    border-radius: 20px;
    background:
        radial-gradient(circle at 10% 15%, rgba(255,23,68,.08), transparent 32%),
        radial-gradient(circle at 90% 80%, rgba(0,174,239,.10), transparent 38%),
        rgba(9,13,53,.54);
    box-shadow: 0 26px 70px rgba(0,0,0,.20);
    backdrop-filter: blur(10px);
}

.rx-shop-prelaunch h1,
.rx-shop-prelaunch h2 {
    margin: 5px 0 0;
    color: #FFFFFF;
    font-family: var(--font-display);
    font-size: clamp(2.55rem, 5vw, 5.2rem);
    line-height: 1;
    letter-spacing: -.035em;
}

.rx-shop-prelaunch > p:not(.rx-page-kicker) {
    max-width: 760px;
    margin: 20px 0 0;
    color: #FFFFFF;
    font-size: clamp(.98rem, 1.35vw, 1.15rem);
    line-height: 1.58;
}

.rx-shop-prelaunch-actions {
    margin-top: 28px;
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
}

/* =========================================================
   PRODUCTO INDIVIDUAL · RECOMBIDX v0.13.1
========================================================= */
.rx-single-product-main {
    padding: 34px 0 46px;
    color: #FFFFFF;
}

.rx-single-product-shell,
.rx-single-product-main .woocommerce {
    color: #FFFFFF;
}

.rx-single-product-main div.product {
    display: grid;
    grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
    gap: clamp(34px, 5vw, 72px);
    align-items: start;
    margin: 0;
}

.rx-single-product-main div.product > .woocommerce-product-gallery {
    width: 100% !important;
    max-width: 430px;
    float: none !important;
    margin: 0 !important;
    padding: 18px;
    border: 1px solid rgba(126,151,222,.34);
    border-radius: 18px;
    background:
        radial-gradient(circle at 25% 15%, rgba(0,174,239,.08), transparent 35%),
        rgba(9,13,53,.48);
}

.rx-single-product-main div.product > .woocommerce-product-gallery img {
    width: 100%;
    max-height: 410px;
    object-fit: contain;
    border-radius: 12px;
}

.rx-single-product-main div.product > .summary {
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
    padding: 16px 0 0;
}

.rx-single-product-main .product_title {
    margin: 0 0 14px !important;
    color: #FFFFFF !important;
    font-family: var(--font-display);
    font-size: clamp(2.3rem, 4.2vw, 4.6rem);
    line-height: 1;
    letter-spacing: -.035em;
}

.rx-single-product-main .woocommerce-product-details__short-description,
.rx-single-product-main .woocommerce-product-details__short-description p,
.rx-single-product-main .product_meta,
.rx-single-product-main .product_meta a,
.rx-single-product-main .stock {
    color: #D5D8E6 !important;
    line-height: 1.6;
}

.rx-single-product-main .product_meta {
    margin-top: 22px;
    padding-top: 18px;
    border-top: 1px solid rgba(213,216,230,.18);
}

.rx-single-product-main .product_meta a {
    color: #00AEEF !important;
}

.rx-single-product-main .price {
    color: #FFFFFF !important;
}

.rx-single-product-main div.product > .woocommerce-tabs,
.rx-single-product-main div.product > .related,
.rx-single-product-main div.product > .upsells {
    grid-column: 1 / -1;
    width: 100%;
    float: none;
    clear: both;
}

.rx-single-product-main .woocommerce-tabs {
    margin-top: 26px;
    padding: 24px;
    border: 1px solid rgba(126,151,222,.30);
    border-radius: 18px;
    background: rgba(9,13,53,.42);
}

.rx-single-product-main .woocommerce-tabs ul.tabs {
    margin: 0 0 22px !important;
    padding: 0 !important;
    display: flex;
    gap: 22px;
    border-bottom: 1px solid rgba(213,216,230,.18);
}

.rx-single-product-main .woocommerce-tabs ul.tabs::before,
.rx-single-product-main .woocommerce-tabs ul.tabs li::before,
.rx-single-product-main .woocommerce-tabs ul.tabs li::after {
    display: none !important;
}

.rx-single-product-main .woocommerce-tabs ul.tabs li {
    margin: 0 !important;
    padding: 0 0 10px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
}

.rx-single-product-main .woocommerce-tabs ul.tabs li a {
    color: #D5D8E6 !important;
    font-weight: 650 !important;
}

.rx-single-product-main .woocommerce-tabs ul.tabs li.active a {
    color: #FFFFFF !important;
}

.rx-single-product-main .woocommerce-tabs ul.tabs li.active {
    border-bottom: 2px solid #00AEEF !important;
}

.rx-single-product-main .woocommerce-Tabs-panel,
.rx-single-product-main .woocommerce-Tabs-panel h2,
.rx-single-product-main #reviews,
.rx-single-product-main #reviews p,
.rx-single-product-main #reviews label,
.rx-single-product-main #reviews .comment-reply-title {
    color: #FFFFFF !important;
}

.rx-single-product-main #reviews {
    max-width: 980px;
}

.rx-single-product-main #reviews .comment-respond {
    margin-top: 18px;
    padding: 22px;
    border: 1px solid rgba(126,151,222,.26);
    border-radius: 14px;
    background: rgba(7,9,46,.32);
}

.rx-single-product-main #reviews textarea,
.rx-single-product-main #reviews input[type="text"],
.rx-single-product-main #reviews input[type="email"] {
    width: 100%;
    color: #FFFFFF !important;
    background: rgba(9,13,53,.70) !important;
    border: 1px solid rgba(0,174,239,.38) !important;
    border-radius: 10px;
    box-shadow: none !important;
}

.rx-single-product-main #reviews textarea:focus,
.rx-single-product-main #reviews input[type="text"]:focus,
.rx-single-product-main #reviews input[type="email"]:focus {
    outline: none;
    border-color: #00AEEF !important;
    box-shadow: 0 0 0 2px rgba(0,174,239,.10) !important;
}

.rx-single-product-main #reviews .stars a {
    color: #00AEEF !important;
}

.rx-single-product-main .related.products,
.rx-single-product-main .upsells.products {
    margin-top: 30px;
}

.rx-single-product-main .related.products > h2,
.rx-single-product-main .upsells.products > h2 {
    color: #FFFFFF;
    font-family: var(--font-display);
}

.rx-single-product-main ul.products li.product {
    color: #FFFFFF;
    background: rgba(9,13,53,.42);
    border: 1px solid rgba(126,151,222,.28);
    border-radius: 14px;
    padding: 12px;
}

.rx-single-product-main ul.products li.product .woocommerce-loop-product__title {
    color: #FFFFFF !important;
}

@media (max-width: 900px) {
    .rx-single-product-main div.product {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .rx-single-product-main div.product > .woocommerce-product-gallery {
        max-width: 520px;
        margin-inline: auto !important;
    }

    .rx-single-product-main div.product > .woocommerce-tabs,
    .rx-single-product-main div.product > .related,
    .rx-single-product-main div.product > .upsells {
        grid-column: 1;
    }
}

@media (max-width: 600px) {
    .rx-single-product-main {
        padding-top: 18px;
    }

    .rx-single-product-main div.product > .woocommerce-product-gallery {
        max-width: 360px;
        padding: 12px;
    }

    .rx-single-product-main .woocommerce-tabs {
        padding: 16px;
    }

    .rx-single-product-main .woocommerce-tabs ul.tabs {
        gap: 14px;
        overflow-x: auto;
    }

    .rx-shop-prelaunch {
        min-height: 360px;
        padding: 28px 20px;
    }

    .rx-shop-prelaunch-actions {
        width: 100%;
        display: grid;
        grid-template-columns: 1fr;
    }

    .rx-shop-prelaunch-actions .rx-button {
        width: 100%;
        justify-content: space-between;
    }
}


/* =========================================================
   RECOMBIDX · BOTONES AZUL ESPEJO + BORDE NEÓN MÓVIL v0.13.2
========================================================= */
@keyframes rxBorderFlow132 {
    0% {
        background-position: 0 0, 0% 50%;
    }
    100% {
        background-position: 0 0, 220% 50%;
    }
}

@keyframes rxNeonBreath132 {
    0%, 100% {
        box-shadow:
            -8px 0 17px rgba(255,23,68,.16),
            8px 0 17px rgba(0,174,239,.17),
            inset 0 1px 0 rgba(255,255,255,.34),
            inset 0 13px 26px rgba(255,255,255,.055),
            inset 0 -16px 24px rgba(5,34,74,.12);
    }
    50% {
        box-shadow:
            -14px 0 30px rgba(255,23,68,.34),
            14px 0 30px rgba(0,174,239,.35),
            inset 0 1px 0 rgba(255,255,255,.40),
            inset 0 15px 30px rgba(255,255,255,.075),
            inset 0 -16px 24px rgba(5,34,74,.10);
    }
}

.rx-button,
.rx-shop-quote-button,
.rx-shop-secondary-button,
.rx-shop-advice-button,
.rx-account-submit,
.rx-portal-native-content .woocommerce a.button,
.rx-portal-native-content .woocommerce button.button,
.rx-single-product-main .woocommerce button.button,
.rx-single-product-main .woocommerce a.button,
.rx-single-product-main .woocommerce input.button,
.rx-single-product-main #respond input#submit {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    border: 1.5px solid transparent !important;
    background:
        linear-gradient(#2B6FA6 0 0) padding-box,
        linear-gradient(
            90deg,
            #FF1744 0%,
            #FF1744 39%,
            #00AEEF 47%,
            #00AEEF 89%,
            #FF1744 97%,
            #FF1744 100%
        ) border-box !important;
    background-size: 100% 100%, 220% 100% !important;
    background-position: 0 0, 0% 50%;
    background-origin: border-box !important;
    background-clip: padding-box, border-box !important;
    backdrop-filter: blur(11px) saturate(112%);
    -webkit-backdrop-filter: blur(11px) saturate(112%);
    box-shadow:
        -8px 0 17px rgba(255,23,68,.16),
        8px 0 17px rgba(0,174,239,.17),
        inset 0 1px 0 rgba(255,255,255,.34),
        inset 0 13px 26px rgba(255,255,255,.055),
        inset 0 -16px 24px rgba(5,34,74,.12) !important;
    text-shadow: 0 1px 2px rgba(0,0,0,.24);
    animation:
        rxBorderFlow132 8.5s linear infinite,
        rxNeonBreath132 5.8s ease-in-out infinite !important;
    transition:
        transform .22s ease,
        filter .22s ease !important;
    will-change: background-position, box-shadow;
}

.rx-button:hover,
.rx-button:focus-visible,
.rx-button:active,
.rx-shop-quote-button:hover,
.rx-shop-quote-button:focus-visible,
.rx-shop-quote-button:active,
.rx-shop-secondary-button:hover,
.rx-shop-secondary-button:focus-visible,
.rx-shop-secondary-button:active,
.rx-shop-advice-button:hover,
.rx-shop-advice-button:focus-visible,
.rx-shop-advice-button:active,
.rx-account-submit:hover,
.rx-account-submit:focus-visible,
.rx-account-submit:active,
.rx-portal-native-content .woocommerce a.button:hover,
.rx-portal-native-content .woocommerce a.button:focus-visible,
.rx-portal-native-content .woocommerce button.button:hover,
.rx-portal-native-content .woocommerce button.button:focus-visible,
.rx-single-product-main .woocommerce button.button:hover,
.rx-single-product-main .woocommerce button.button:focus-visible,
.rx-single-product-main .woocommerce a.button:hover,
.rx-single-product-main .woocommerce a.button:focus-visible,
.rx-single-product-main .woocommerce input.button:hover,
.rx-single-product-main .woocommerce input.button:focus-visible,
.rx-single-product-main #respond input#submit:hover,
.rx-single-product-main #respond input#submit:focus-visible {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    border: 1.5px solid transparent !important;
    background:
        linear-gradient(#2B6FA6 0 0) padding-box,
        linear-gradient(
            90deg,
            #FF1744 0%,
            #FF1744 39%,
            #00AEEF 47%,
            #00AEEF 89%,
            #FF1744 97%,
            #FF1744 100%
        ) border-box !important;
    background-size: 100% 100%, 220% 100% !important;
    background-origin: border-box !important;
    background-clip: padding-box, border-box !important;
    animation:
        rxBorderFlow132 8.5s linear infinite,
        rxNeonBreath132 5.8s ease-in-out infinite !important;
    transform: translateY(-1px);
    filter: brightness(1.035);
}

/* =========================================================
   PRODUCTOS · HERO HORIZONTAL Y TARJETAS ESTÁNDAR v0.13.2
========================================================= */
.rx-shop-intro {
    max-width: none !important;
    display: grid;
    grid-template-columns: minmax(520px, .92fr) minmax(420px, 1.08fr);
    grid-template-areas:
        "kicker lead"
        "title lead";
    column-gap: clamp(44px, 6vw, 110px);
    row-gap: 6px;
    align-items: end;
}

.rx-shop-intro .rx-page-kicker {
    grid-area: kicker;
    margin: 0 0 5px;
}

.rx-shop-title {
    grid-area: title;
    margin: 0 !important;
    max-width: none !important;
    white-space: nowrap;
    font-size: clamp(3rem, 4.45vw, 5.1rem) !important;
}

.rx-shop-lead {
    grid-area: lead;
    max-width: 720px !important;
    margin: 0 !important;
    padding-bottom: 7px;
    align-self: end;
    color: #FFFFFF !important;
    font-size: clamp(.98rem, 1.25vw, 1.14rem) !important;
    line-height: 1.55 !important;
}

.rx-shop-grid {
    grid-template-columns: repeat(auto-fill, minmax(250px, 250px)) !important;
    grid-auto-rows: 1fr;
    justify-content: start !important;
    align-items: stretch;
    gap: 16px !important;
}

.rx-product-card {
    width: 250px !important;
    max-width: 250px !important;
    height: 438px !important;
    min-height: 438px !important;
    display: flex !important;
    flex-direction: column;
    overflow: hidden !important;
    border: 1px solid rgba(126,151,222,.48) !important;
    border-radius: 14px !important;
    background: #090D35 !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.035),
        0 18px 34px rgba(0,0,0,.12) !important;
}

.rx-product-image {
    width: 100% !important;
    height: 170px !important;
    min-height: 170px !important;
    flex: 0 0 170px !important;
    margin: 0 !important;
    padding: 0 !important;
    display: grid !important;
    place-items: center;
    overflow: hidden;
    border: 0 !important;
    border-radius: 0 !important;
    background: #080C33 !important;
}

.rx-product-image img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    padding: 12px !important;
    box-sizing: border-box;
    object-fit: contain !important;
    display: block;
}

.rx-product-card-body {
    width: 100%;
    flex: 1 1 auto;
    display: flex !important;
    flex-direction: column;
    padding: 14px !important;
    box-sizing: border-box;
    background: #090D35 !important;
}

.rx-product-category {
    min-height: 1.15em;
    margin: 0 0 7px !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.rx-product-title {
    min-height: 2.52em;
    margin: 0 !important;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.rx-product-description {
    min-height: 4.28em !important;
    max-height: 4.28em;
    margin: 9px 0 11px !important;
    -webkit-line-clamp: 3 !important;
}

.rx-product-actions {
    width: 100%;
    margin-top: auto !important;
    gap: 8px !important;
}

.rx-product-actions form,
.rx-product-actions > a {
    width: 100%;
}

.rx-shop-quote-button,
.rx-shop-secondary-button {
    min-height: 40px !important;
}

/* =========================================================
   PRODUCTOS · PRELANZAMIENTO SIN ESPACIO MUERTO v0.13.2
========================================================= */
.rx-shop-prelaunch {
    min-height: 285px !important;
    margin: 26px 0 22px !important;
    padding: clamp(34px, 4.2vw, 58px) !important;
    display: grid !important;
    grid-template-columns: minmax(500px, .96fr) minmax(420px, 1.04fr);
    grid-template-areas:
        "pre-kicker pre-copy"
        "pre-title pre-copy"
        "pre-title pre-actions";
    column-gap: clamp(48px, 6vw, 110px);
    row-gap: 10px;
    align-items: center;
}

.rx-shop-prelaunch > .rx-page-kicker {
    grid-area: pre-kicker;
    margin: 0;
    align-self: end;
}

.rx-shop-prelaunch h1,
.rx-shop-prelaunch h2 {
    grid-area: pre-title;
    margin: 0 !important;
    max-width: none !important;
    white-space: nowrap;
    font-size: clamp(2.75rem, 4.2vw, 4.9rem) !important;
    align-self: start;
}

.rx-shop-prelaunch > p:not(.rx-page-kicker) {
    grid-area: pre-copy;
    max-width: 690px !important;
    margin: 0 !important;
    align-self: end;
}

.rx-shop-prelaunch-actions {
    grid-area: pre-actions;
    margin: 10px 0 0 !important;
    align-self: start;
}

/* =========================================================
   PRODUCTO · VALORACIONES COMPACTAS Y ESTRELLAS NEÓN v0.13.2
========================================================= */
.rx-single-product-main .woocommerce-tabs {
    padding: 18px 24px 22px !important;
}

.rx-single-product-main .woocommerce-Tabs-panel {
    margin: 0 !important;
    padding: 0 !important;
}

.rx-single-product-main #reviews,
.rx-single-product-main #review_form_wrapper,
.rx-single-product-main #review_form,
.rx-single-product-main #respond,
.rx-single-product-main #commentform {
    width: 100% !important;
    max-width: none !important;
}

.rx-single-product-main #reviews .comment-respond {
    width: 100% !important;
    max-width: none !important;
    margin: 10px 0 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.rx-single-product-main #reviews .comment-reply-title {
    display: block;
    margin: 0 0 14px;
    font-size: clamp(1.35rem, 2vw, 1.75rem);
    line-height: 1.2;
}

.rx-single-product-main #reviews .comment-form-rating {
    margin: 0 0 13px !important;
}

.rx-single-product-main #reviews .comment-form-comment {
    margin: 0 0 14px !important;
}

.rx-single-product-main #reviews textarea {
    width: 100% !important;
    min-height: 118px !important;
    height: 118px !important;
    resize: vertical;
}

.rx-single-product-main #reviews .form-submit {
    margin: 0 !important;
}

.rx-single-product-main #reviews .form-submit input#submit {
    min-width: 150px;
    min-height: 44px;
}

.rx-single-product-main #reviews .stars a {
    color: transparent !important;
    -webkit-text-fill-color: transparent !important;
    text-shadow: none !important;
}

.rx-single-product-main #reviews .stars a::before,
.rx-single-product-main .star-rating::before,
.rx-single-product-main .star-rating span::before {
    background:
        linear-gradient(
            90deg,
            #FF1744 0%,
            #FF1744 38%,
            #00AEEF 62%,
            #00AEEF 100%
        );
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent !important;
    -webkit-text-fill-color: transparent !important;
    filter:
        drop-shadow(-1px 0 3px rgba(255,23,68,.58))
        drop-shadow(1px 0 3px rgba(0,174,239,.62))
        drop-shadow(0 0 7px rgba(0,174,239,.20));
}

.rx-single-product-main #reviews .stars:hover a::before,
.rx-single-product-main #reviews .stars.selected a::before {
    filter:
        drop-shadow(-1px 0 4px rgba(255,23,68,.80))
        drop-shadow(1px 0 4px rgba(0,174,239,.82))
        drop-shadow(0 0 9px rgba(255,255,255,.10));
}

@media (max-width: 1180px) {
    .rx-shop-intro {
        grid-template-columns: minmax(430px, .9fr) minmax(340px, 1.1fr);
        column-gap: 38px;
    }

    .rx-shop-title {
        font-size: clamp(2.7rem, 4.2vw, 4rem) !important;
    }

    .rx-shop-prelaunch {
        grid-template-columns: minmax(410px, .95fr) minmax(340px, 1.05fr);
        column-gap: 38px;
    }

    .rx-shop-prelaunch h1,
    .rx-shop-prelaunch h2 {
        font-size: clamp(2.45rem, 4vw, 3.7rem) !important;
    }
}

@media (max-width: 900px) {
    .rx-shop-intro {
        display: block;
    }

    .rx-shop-title {
        margin-top: 8px !important;
        white-space: normal;
    }

    .rx-shop-lead {
        margin-top: 14px !important;
        padding-bottom: 0;
    }

    .rx-shop-prelaunch {
        min-height: 0 !important;
        display: block !important;
        padding: 30px 24px !important;
    }

    .rx-shop-prelaunch h1,
    .rx-shop-prelaunch h2 {
        margin-top: 7px !important;
        white-space: normal;
    }

    .rx-shop-prelaunch > p:not(.rx-page-kicker) {
        margin-top: 18px !important;
    }

    .rx-shop-prelaunch-actions {
        margin-top: 22px !important;
    }
}

@media (max-width: 767px) {
    .rx-shop-grid {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .rx-product-card {
        width: 100% !important;
        max-width: none !important;
        height: 420px !important;
        min-height: 420px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rx-button,
    .rx-shop-quote-button,
    .rx-shop-secondary-button,
    .rx-shop-advice-button,
    .rx-account-submit,
    .rx-portal-native-content .woocommerce a.button,
    .rx-portal-native-content .woocommerce button.button,
    .rx-single-product-main .woocommerce button.button,
    .rx-single-product-main .woocommerce a.button,
    .rx-single-product-main .woocommerce input.button,
    .rx-single-product-main #respond input#submit {
        animation: none !important;
    }
}


/* =========================================================
   RECOMBIDX · REFINO VISUAL v0.13.3
========================================================= */
@property --rx-border-angle {
    syntax: "<angle>";
    inherits: false;
    initial-value: 0deg;
}

@keyframes rxBorderOrbit133 {
    to { --rx-border-angle: 360deg; }
}

@keyframes rxNeonBreath133 {
    0%, 100% {
        box-shadow:
            0 0 8px rgba(255,23,68,.16),
            0 0 12px rgba(0,174,239,.16),
            inset 0 1px 0 rgba(255,255,255,.78),
            inset 0 16px 22px rgba(255,255,255,.20);
    }
    50% {
        box-shadow:
            0 0 13px rgba(255,23,68,.28),
            0 0 18px rgba(0,174,239,.28),
            inset 0 1px 0 rgba(255,255,255,.88),
            inset 0 18px 25px rgba(255,255,255,.25);
    }
}

/* Un solo azul claro; el efecto espejo se logra con luz interna, no con degradado de color. */
.rx-button,
.rx-shop-quote-button,
.rx-shop-secondary-button,
.rx-shop-advice-button,
.rx-account-submit,
.rx-portal-native-content .woocommerce a.button,
.rx-portal-native-content .woocommerce button.button,
.rx-single-product-main .woocommerce button.button,
.rx-single-product-main .woocommerce a.button,
.rx-single-product-main .woocommerce input.button,
.rx-single-product-main #respond input#submit {
    --rx-border-angle: 0deg;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    border: 1.5px solid transparent !important;
    background:
        linear-gradient(#3AA6DA 0 0) padding-box,
        conic-gradient(
            from var(--rx-border-angle),
            #FF1744 0%,
            #FF1744 46%,
            #00AEEF 50%,
            #00AEEF 96%,
            #FF1744 100%
        ) border-box !important;
    background-origin: border-box !important;
    background-clip: padding-box, border-box !important;
    box-shadow:
        0 0 8px rgba(255,23,68,.16),
        0 0 12px rgba(0,174,239,.16),
        inset 0 1px 0 rgba(255,255,255,.78),
        inset 0 16px 22px rgba(255,255,255,.20) !important;
    text-shadow: 0 1px 2px rgba(0,39,75,.36);
    animation:
        rxBorderOrbit133 7.2s linear infinite,
        rxNeonBreath133 5.6s ease-in-out infinite !important;
    transition:
        transform .20s ease,
        filter .20s ease !important;
}

.rx-button:hover,
.rx-button:focus-visible,
.rx-button:active,
.rx-shop-quote-button:hover,
.rx-shop-quote-button:focus-visible,
.rx-shop-quote-button:active,
.rx-shop-secondary-button:hover,
.rx-shop-secondary-button:focus-visible,
.rx-shop-secondary-button:active,
.rx-shop-advice-button:hover,
.rx-shop-advice-button:focus-visible,
.rx-shop-advice-button:active,
.rx-account-submit:hover,
.rx-account-submit:focus-visible,
.rx-account-submit:active,
.rx-portal-native-content .woocommerce a.button:hover,
.rx-portal-native-content .woocommerce a.button:focus-visible,
.rx-portal-native-content .woocommerce button.button:hover,
.rx-portal-native-content .woocommerce button.button:focus-visible,
.rx-single-product-main .woocommerce button.button:hover,
.rx-single-product-main .woocommerce button.button:focus-visible,
.rx-single-product-main .woocommerce a.button:hover,
.rx-single-product-main .woocommerce a.button:focus-visible,
.rx-single-product-main .woocommerce input.button:hover,
.rx-single-product-main .woocommerce input.button:focus-visible,
.rx-single-product-main #respond input#submit:hover,
.rx-single-product-main #respond input#submit:focus-visible {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    border: 1.5px solid transparent !important;
    background:
        linear-gradient(#3AA6DA 0 0) padding-box,
        conic-gradient(
            from var(--rx-border-angle),
            #FF1744 0%,
            #FF1744 46%,
            #00AEEF 50%,
            #00AEEF 96%,
            #FF1744 100%
        ) border-box !important;
    background-origin: border-box !important;
    background-clip: padding-box, border-box !important;
    animation:
        rxBorderOrbit133 7.2s linear infinite,
        rxNeonBreath133 5.6s ease-in-out infinite !important;
    transform: translateY(-1px);
    filter: brightness(1.035);
}

/* =========================================================
   PRODUCTOS · HERO CENTRADO Y MÁS LIMPIO
========================================================= */
.rx-shop-intro {
    max-width: 1180px !important;
    margin: 0 auto !important;
    padding: 8px 20px 12px;
    display: flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    text-align: center;
}

.rx-shop-intro::after {
    content: "";
    width: 118px;
    height: 2px;
    margin-top: 8px;
    border-radius: 999px;
    background: linear-gradient(90deg, #FF1744 0 46%, #00AEEF 54% 100%);
    box-shadow:
        -5px 0 10px rgba(255,23,68,.20),
        5px 0 10px rgba(0,174,239,.20);
}

.rx-shop-title {
    margin: 0 !important;
    max-width: 100% !important;
    white-space: nowrap !important;
    text-align: center;
    font-size: clamp(3rem, 5vw, 5.35rem) !important;
}

.rx-shop-lead {
    max-width: 920px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    color: #FFFFFF !important;
    text-align: center;
    font-size: clamp(.98rem, 1.25vw, 1.12rem) !important;
    line-height: 1.55 !important;
}

/* =========================================================
   PRODUCTOS · TARJETAS MÁS BAJAS Y ESTÁNDAR
========================================================= */
.rx-shop-grid {
    grid-template-columns: repeat(auto-fill, minmax(248px, 248px)) !important;
    grid-auto-rows: 1fr;
    gap: 16px !important;
    justify-content: start !important;
    align-items: stretch;
}

.rx-product-card {
    width: 248px !important;
    max-width: 248px !important;
    height: 372px !important;
    min-height: 372px !important;
    background: #090D35 !important;
}

.rx-product-image {
    height: 148px !important;
    min-height: 148px !important;
    flex: 0 0 148px !important;
    background: #080C33 !important;
}

.rx-product-image img {
    padding: 10px !important;
}

.rx-product-card-body {
    padding: 12px 13px 13px !important;
    background: #090D35 !important;
}

.rx-product-title {
    min-height: 2.42em !important;
}

.rx-product-description {
    min-height: 2.92em !important;
    max-height: 2.92em !important;
    margin: 7px 0 9px !important;
    -webkit-line-clamp: 2 !important;
}

/* =========================================================
   PRELANZAMIENTO · COMPOSICIÓN ÚNICA CENTRADA
========================================================= */
.rx-shop-prelaunch {
    min-height: 0 !important;
    margin: 24px 0 22px !important;
    padding: clamp(38px, 5vw, 64px) clamp(24px, 5vw, 70px) !important;
    display: flex !important;
    flex-direction: column;
    align-items: center !important;
    justify-content: center;
    gap: 10px;
    text-align: center;
}

.rx-shop-prelaunch > .rx-page-kicker {
    margin: 0 0 2px !important;
    text-align: center;
}

.rx-shop-prelaunch h1,
.rx-shop-prelaunch h2 {
    margin: 0 !important;
    max-width: 100% !important;
    white-space: nowrap !important;
    text-align: center;
    font-size: clamp(2.8rem, 4.9vw, 5rem) !important;
}

.rx-shop-prelaunch > p:not(.rx-page-kicker) {
    max-width: 880px !important;
    margin: 8px auto 0 !important;
    text-align: center;
}

.rx-shop-prelaunch-actions {
    margin: 18px 0 0 !important;
    display: flex !important;
    flex-wrap: wrap;
    justify-content: center;
    gap: 14px;
}

/* =========================================================
   PRODUCTO INDIVIDUAL · LIMPIEZA DE NAVEGACIÓN
========================================================= */
.rx-single-product-main .woocommerce-breadcrumb {
    display: none !important;
}

/* =========================================================
   ÁREAS DE IMPACTO · ICONO CENTRAL
========================================================= */
.rx-impact-center-logo {
    display: none !important;
}

.rx-impact-center-icon,
.rx-impact-center-icon-crop,
.rx-impact-center-icon-fallback {
    position: relative;
    z-index: 3;
    display: block;
    width: min(190px, 58%);
    height: min(190px, 58%);
    transform: rotate(-12deg);
    transform-origin: center;
    filter:
        drop-shadow(-5px 0 12px rgba(255,23,68,.14))
        drop-shadow(5px 0 12px rgba(0,174,239,.18));
}

.rx-impact-center-icon {
    object-fit: contain;
    border-radius: 18px;
}

.rx-impact-center-icon-crop {
    overflow: hidden;
}

.rx-impact-center-icon-crop img {
    position: absolute;
    right: -2%;
    top: 50%;
    width: 330%;
    max-width: none;
    transform: translateY(-50%);
}

.rx-impact-center-icon-fallback {
    fill: none;
    stroke-width: 7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.rx-impact-center-icon-fallback path:nth-child(1) {
    stroke: #00AEEF;
}

.rx-impact-center-icon-fallback path:nth-child(2) {
    stroke: #FF1744;
}

.rx-impact-center-icon-fallback path:nth-child(n+3) {
    stroke: #FFFFFF;
    stroke-width: 4.5;
}

@media (max-width: 900px) {
    .rx-shop-title,
    .rx-shop-prelaunch h1,
    .rx-shop-prelaunch h2 {
        white-space: normal !important;
    }
}

@media (max-width: 767px) {
    .rx-shop-intro {
        padding-inline: 0;
    }

    .rx-shop-grid {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .rx-product-card {
        width: 100% !important;
        max-width: none !important;
        height: 360px !important;
        min-height: 360px !important;
    }

    .rx-impact-center-icon,
    .rx-impact-center-icon-crop,
    .rx-impact-center-icon-fallback {
        width: min(165px, 62%);
        height: min(165px, 62%);
    }
}

@media (prefers-reduced-motion: reduce) {
    .rx-button,
    .rx-shop-quote-button,
    .rx-shop-secondary-button,
    .rx-shop-advice-button,
    .rx-account-submit,
    .rx-portal-native-content .woocommerce a.button,
    .rx-portal-native-content .woocommerce button.button,
    .rx-single-product-main .woocommerce button.button,
    .rx-single-product-main .woocommerce a.button,
    .rx-single-product-main .woocommerce input.button,
    .rx-single-product-main #respond input#submit {
        animation: none !important;
    }
}


/* =========================================================
   RECOMBIDX · VIDRIO SUAVE + SWEEP GLOBAL v0.13.4
========================================================= */

/* Botones: más translúcidos, manteniendo el fondo ilegible detrás. */
.rx-button,
.rx-shop-quote-button,
.rx-shop-secondary-button,
.rx-shop-advice-button,
.rx-account-submit,
.rx-portal-native-content .woocommerce a.button,
.rx-portal-native-content .woocommerce button.button,
.rx-single-product-main .woocommerce button.button,
.rx-single-product-main .woocommerce a.button,
.rx-single-product-main .woocommerce input.button,
.rx-single-product-main #respond input#submit {
    background:
        linear-gradient(rgba(58,166,218,.86) 0 0) padding-box,
        conic-gradient(
            from var(--rx-border-angle),
            #FF1744 0%,
            #FF1744 46%,
            #00AEEF 50%,
            #00AEEF 96%,
            #FF1744 100%
        ) border-box !important;
    background-origin: border-box !important;
    background-clip: padding-box, border-box !important;
    backdrop-filter: blur(18px) saturate(118%);
    -webkit-backdrop-filter: blur(18px) saturate(118%);
    box-shadow:
        0 0 8px rgba(255,23,68,.14),
        0 0 12px rgba(0,174,239,.15),
        inset 0 1px 0 rgba(255,255,255,.72),
        inset 0 13px 18px rgba(255,255,255,.14) !important;
}

.rx-button:hover,
.rx-button:focus-visible,
.rx-button:active,
.rx-shop-quote-button:hover,
.rx-shop-quote-button:focus-visible,
.rx-shop-quote-button:active,
.rx-shop-secondary-button:hover,
.rx-shop-secondary-button:focus-visible,
.rx-shop-secondary-button:active,
.rx-shop-advice-button:hover,
.rx-shop-advice-button:focus-visible,
.rx-shop-advice-button:active,
.rx-account-submit:hover,
.rx-account-submit:focus-visible,
.rx-account-submit:active,
.rx-portal-native-content .woocommerce a.button:hover,
.rx-portal-native-content .woocommerce a.button:focus-visible,
.rx-portal-native-content .woocommerce button.button:hover,
.rx-portal-native-content .woocommerce button.button:focus-visible,
.rx-single-product-main .woocommerce button.button:hover,
.rx-single-product-main .woocommerce button.button:focus-visible,
.rx-single-product-main .woocommerce a.button:hover,
.rx-single-product-main .woocommerce a.button:focus-visible,
.rx-single-product-main .woocommerce input.button:hover,
.rx-single-product-main .woocommerce input.button:focus-visible,
.rx-single-product-main #respond input#submit:hover,
.rx-single-product-main #respond input#submit:focus-visible {
    background:
        linear-gradient(rgba(58,166,218,.86) 0 0) padding-box,
        conic-gradient(
            from var(--rx-border-angle),
            #FF1744 0%,
            #FF1744 46%,
            #00AEEF 50%,
            #00AEEF 96%,
            #FF1744 100%
        ) border-box !important;
    background-origin: border-box !important;
    background-clip: padding-box, border-box !important;
    backdrop-filter: blur(18px) saturate(118%);
    -webkit-backdrop-filter: blur(18px) saturate(118%);
}

/* Cabecera: controles con esquinas suavemente redondeadas y focus coherente. */
.rx-icon-button {
    border: 1px solid transparent !important;
    border-radius: 10px !important;
    transition:
        background .22s ease,
        border-color .22s ease,
        box-shadow .22s ease,
        color .22s ease !important;
}

.rx-icon-button:hover,
.rx-icon-button.is-active,
.rx-icon-button:focus-visible {
    border-radius: 10px !important;
    background: rgba(0,174,239,.035);
    border-color: rgba(0,174,239,.28) !important;
}

.rx-icon-button:focus-visible {
    outline: none !important;
    box-shadow:
        0 0 0 2px rgba(0,174,239,.15),
        -4px 0 12px rgba(255,23,68,.10),
        4px 0 12px rgba(0,174,239,.16) !important;
}

/* Barrido de luz estándar: aparece casi de inmediato y cruza lentamente. */
.rx-text-blue,
.rx-text-red,
.rx-portal-title span {
    display: inline-block;
    position: relative;
    color: transparent !important;
    -webkit-text-fill-color: transparent !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    background-image:
        linear-gradient(
            108deg,
            transparent 0%,
            transparent 44%,
            rgba(255,255,255,.08) 47%,
            rgba(255,255,255,.76) 50%,
            rgba(255,255,255,.10) 53%,
            transparent 56%,
            transparent 100%
        ),
        var(--rx-word-gradient) !important;
    background-size: 145% 100%, 100% 100% !important;
    background-repeat: no-repeat !important;
    background-blend-mode: screen, normal !important;
    animation: rxTitleLightSweep134 16s linear infinite !important;
}

.rx-text-blue,
.rx-portal-title span {
    --rx-word-gradient: linear-gradient(#00AEEF, #00AEEF);
    filter:
        drop-shadow(0 0 2px rgba(0,174,239,.24))
        drop-shadow(0 0 6px rgba(0,174,239,.10)) !important;
}

.rx-text-red {
    --rx-word-gradient: linear-gradient(#FF1744, #FF1744);
    filter:
        drop-shadow(0 0 2px rgba(255,23,68,.24))
        drop-shadow(0 0 6px rgba(255,23,68,.10)) !important;
}

@keyframes rxTitleLightSweep134 {
    0% {
        background-position: 74% 0, 0 0;
    }
    100% {
        background-position: -74% 0, 0 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rx-text-blue,
    .rx-text-red,
    .rx-portal-title span {
        animation: none !important;
    }
}


/* v0.13.5: isolate the animated red/cyan gradient to the border line only. */
@keyframes rxBorderLineOrbit135 { to { --rx-border-angle: 360deg; } }

.rx-button,
.rx-shop-quote-button,
.rx-shop-secondary-button,
.rx-shop-advice-button,
.rx-account-submit,
.rx-portal-native-content .woocommerce a.button,
.rx-portal-native-content .woocommerce button.button,
.rx-single-product-main .woocommerce button.button,
.rx-single-product-main .woocommerce a.button,
.rx-single-product-main .woocommerce input.button,
.rx-single-product-main #respond input#submit {
    --rx-border-angle: 0deg;
    position: relative !important;
    isolation: isolate;
    overflow: hidden;
    border: 0 !important;
    background: rgba(58,166,218,.84) !important;
    box-shadow:
        0 0 7px rgba(255,23,68,.12),
        0 0 10px rgba(0,174,239,.13),
        inset 0 1px 0 rgba(255,255,255,.74),
        inset 0 13px 18px rgba(255,255,255,.13) !important;
    animation: rxNeonBreath133 5.6s ease-in-out infinite !important;
}

.rx-button::before,
.rx-shop-quote-button::before,
.rx-shop-secondary-button::before,
.rx-shop-advice-button::before,
.rx-account-submit::before,
.rx-portal-native-content .woocommerce a.button::before,
.rx-portal-native-content .woocommerce button.button::before,
.rx-single-product-main .woocommerce button.button::before,
.rx-single-product-main .woocommerce a.button::before,
.rx-single-product-main .woocommerce input.button::before,
.rx-single-product-main #respond input#submit::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 3;
    pointer-events: none;
    border-radius: inherit;
    padding: 1.5px;
    background: conic-gradient(
        from var(--rx-border-angle),
        #FF1744 0%,
        #FF1744 46%,
        #00AEEF 50%,
        #00AEEF 96%,
        #FF1744 100%
    );
    -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
    animation: rxBorderLineOrbit135 7.2s linear infinite;
}

.rx-button:hover,
.rx-button:focus-visible,
.rx-button:active,
.rx-shop-quote-button:hover,
.rx-shop-quote-button:focus-visible,
.rx-shop-quote-button:active,
.rx-shop-secondary-button:hover,
.rx-shop-secondary-button:focus-visible,
.rx-shop-secondary-button:active,
.rx-shop-advice-button:hover,
.rx-shop-advice-button:focus-visible,
.rx-shop-advice-button:active {
    border: 0 !important;
    background: rgba(58,166,218,.84) !important;
}


/* =========================================================
   RECOMBIDX · LUMINOSIDAD Y MOVIMIENTO SUAVE v0.13.6
========================================================= */
.rx-button,
.rx-shop-quote-button,
.rx-shop-secondary-button,
.rx-shop-advice-button,
.rx-account-submit,
.rx-portal-native-content .woocommerce a.button,
.rx-portal-native-content .woocommerce button.button,
.rx-single-product-main .woocommerce button.button,
.rx-single-product-main .woocommerce a.button,
.rx-single-product-main .woocommerce input.button,
.rx-single-product-main #respond input#submit {
    background: rgba(74,184,230,.72) !important;
    backdrop-filter: blur(22px) saturate(122%);
    -webkit-backdrop-filter: blur(22px) saturate(122%);
    box-shadow:
        0 0 8px rgba(255,23,68,.12),
        0 0 12px rgba(0,174,239,.16),
        inset 0 1px 0 rgba(255,255,255,.90),
        inset 0 12px 22px rgba(255,255,255,.26),
        inset 0 -8px 16px rgba(0,74,122,.08) !important;
}

.rx-button:hover,
.rx-button:focus-visible,
.rx-button:active,
.rx-shop-quote-button:hover,
.rx-shop-quote-button:focus-visible,
.rx-shop-quote-button:active,
.rx-shop-secondary-button:hover,
.rx-shop-secondary-button:focus-visible,
.rx-shop-secondary-button:active,
.rx-shop-advice-button:hover,
.rx-shop-advice-button:focus-visible,
.rx-shop-advice-button:active,
.rx-account-submit:hover,
.rx-account-submit:focus-visible,
.rx-account-submit:active {
    background: rgba(74,184,230,.72) !important;
}

.rx-button::before,
.rx-shop-quote-button::before,
.rx-shop-secondary-button::before,
.rx-shop-advice-button::before,
.rx-account-submit::before,
.rx-portal-native-content .woocommerce a.button::before,
.rx-portal-native-content .woocommerce button.button::before,
.rx-single-product-main .woocommerce button.button::before,
.rx-single-product-main .woocommerce a.button::before,
.rx-single-product-main .woocommerce input.button::before,
.rx-single-product-main #respond input#submit::before {
    animation: rxBorderLineOrbit135 12.5s linear infinite !important;
}


/* =========================================================
   RECOMBIDX · BOTÓN CRISTAL AZUL / BORDE NEÓN v0.13.7
   Azul dominante en el perímetro, rojo concentrado con más luz.
========================================================= */
@property --rx-border-angle-137 {
    syntax: "<angle>";
    inherits: false;
    initial-value: 0deg;
}

@keyframes rxBorderOrbit137 {
    to { --rx-border-angle-137: 360deg; }
}

@keyframes rxButtonGlow137 {
    0%, 100% {
        box-shadow:
            0 0 8px rgba(0,174,239,.13),
            0 0 10px rgba(255,23,68,.15),
            inset 0 1px 0 rgba(255,255,255,.78),
            inset 0 10px 18px rgba(255,255,255,.18);
    }
    50% {
        box-shadow:
            0 0 11px rgba(0,174,239,.18),
            0 0 18px rgba(255,23,68,.28),
            inset 0 1px 0 rgba(255,255,255,.90),
            inset 0 12px 20px rgba(255,255,255,.22);
    }
}

.rx-button,
.rx-shop-quote-button,
.rx-shop-secondary-button,
.rx-shop-advice-button,
.rx-account-submit,
.rx-portal-native-content .woocommerce a.button,
.rx-portal-native-content .woocommerce button.button,
.rx-single-product-main .woocommerce button.button,
.rx-single-product-main .woocommerce a.button,
.rx-single-product-main .woocommerce input.button,
.rx-single-product-main #respond input#submit {
    --rx-border-angle-137: 0deg;
    position: relative !important;
    isolation: isolate;
    overflow: hidden;
    border: 0 !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    background:
        linear-gradient(
            180deg,
            rgba(108,203,239,.78) 0%,
            rgba(66,177,224,.72) 42%,
            rgba(40,143,199,.78) 100%
        ) !important;
    backdrop-filter: blur(20px) saturate(122%);
    -webkit-backdrop-filter: blur(20px) saturate(122%);
    box-shadow:
        0 0 8px rgba(0,174,239,.13),
        0 0 10px rgba(255,23,68,.15),
        inset 0 1px 0 rgba(255,255,255,.78),
        inset 0 10px 18px rgba(255,255,255,.18) !important;
    text-shadow: 0 1px 2px rgba(0,34,72,.35);
    animation: rxButtonGlow137 6.4s ease-in-out infinite !important;
    transition: transform .22s ease, filter .22s ease !important;
}

.rx-button::before,
.rx-shop-quote-button::before,
.rx-shop-secondary-button::before,
.rx-shop-advice-button::before,
.rx-account-submit::before,
.rx-portal-native-content .woocommerce a.button::before,
.rx-portal-native-content .woocommerce button.button::before,
.rx-single-product-main .woocommerce button.button::before,
.rx-single-product-main .woocommerce a.button::before,
.rx-single-product-main .woocommerce input.button::before,
.rx-single-product-main #respond input#submit::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 4;
    pointer-events: none;
    border-radius: inherit;
    padding: 1.6px;
    background: conic-gradient(
        from var(--rx-border-angle-137),
        #00AEEF 0%,
        #00AEEF 58%,
        #48C3EE 61%,
        #FF1744 66%,
        #FF1744 94%,
        #67D6F6 98%,
        #00AEEF 100%
    );
    -webkit-mask:
        linear-gradient(#000 0 0) content-box,
        linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    filter:
        drop-shadow(0 0 2px rgba(0,174,239,.34))
        drop-shadow(0 0 5px rgba(255,23,68,.74));
    animation: rxBorderOrbit137 14s linear infinite;
}

.rx-button::after,
.rx-shop-quote-button::after,
.rx-shop-secondary-button::after,
.rx-shop-advice-button::after,
.rx-account-submit::after {
    content: "";
    position: absolute;
    right: -8px;
    bottom: -8px;
    width: 42%;
    height: 54%;
    z-index: 1;
    pointer-events: none;
    border-radius: 50%;
    background: radial-gradient(
        circle at center,
        rgba(255,23,68,.22) 0%,
        rgba(255,23,68,.09) 42%,
        transparent 72%
    );
    filter: blur(9px);
}

.rx-button > *,
.rx-shop-quote-button > *,
.rx-shop-secondary-button > *,
.rx-shop-advice-button > *,
.rx-account-submit > * {
    position: relative;
    z-index: 5;
}

.rx-button:hover,
.rx-button:focus-visible,
.rx-button:active,
.rx-shop-quote-button:hover,
.rx-shop-quote-button:focus-visible,
.rx-shop-quote-button:active,
.rx-shop-secondary-button:hover,
.rx-shop-secondary-button:focus-visible,
.rx-shop-secondary-button:active,
.rx-shop-advice-button:hover,
.rx-shop-advice-button:focus-visible,
.rx-shop-advice-button:active,
.rx-account-submit:hover,
.rx-account-submit:focus-visible,
.rx-account-submit:active {
    border: 0 !important;
    background:
        linear-gradient(
            180deg,
            rgba(108,203,239,.78) 0%,
            rgba(66,177,224,.72) 42%,
            rgba(40,143,199,.78) 100%
        ) !important;
    transform: translateY(-1px);
    filter: brightness(1.035);
}

@media (prefers-reduced-motion: reduce) {
    .rx-button::before,
    .rx-shop-quote-button::before,
    .rx-shop-secondary-button::before,
    .rx-shop-advice-button::before,
    .rx-account-submit::before,
    .rx-portal-native-content .woocommerce a.button::before,
    .rx-portal-native-content .woocommerce button.button::before,
    .rx-single-product-main .woocommerce button.button::before,
    .rx-single-product-main .woocommerce a.button::before,
    .rx-single-product-main .woocommerce input.button::before,
    .rx-single-product-main #respond input#submit::before {
        animation: none !important;
    }
}


/* =========================================================
   RECOMBIDX · BOTÓN OSCURO CRISTAL + BORDE NEÓN v0.13.8
   Referencia: azul dominante, rojo concentrado y más luminoso.
========================================================= */
@property --rx-border-angle-138 {
    syntax: "<angle>";
    inherits: false;
    initial-value: 0deg;
}

@keyframes rxBorderOrbit138 {
    to { --rx-border-angle-138: 360deg; }
}

@keyframes rxButtonBreath138 {
    0%, 100% {
        box-shadow:
            inset 0 1px 0 rgba(255,255,255,.30),
            inset 0 13px 22px rgba(255,255,255,.075),
            inset 0 -12px 20px rgba(0,16,54,.18);
    }
    50% {
        box-shadow:
            inset 0 1px 0 rgba(255,255,255,.40),
            inset 0 15px 25px rgba(255,255,255,.10),
            inset 0 -12px 20px rgba(0,16,54,.15);
    }
}

.rx-button,
.rx-shop-quote-button,
.rx-shop-secondary-button,
.rx-shop-advice-button,
.rx-account-submit,
.rx-portal-native-content .woocommerce a.button,
.rx-portal-native-content .woocommerce button.button,
.rx-single-product-main .woocommerce button.button,
.rx-single-product-main .woocommerce a.button,
.rx-single-product-main .woocommerce input.button,
.rx-single-product-main #respond input#submit {
    --rx-border-angle-138: 0deg;
    position: relative !important;
    isolation: isolate;
    overflow: visible !important;
    border: 0 !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    background:
        linear-gradient(
            180deg,
            rgba(83,174,220,.30) 0%,
            rgba(36,111,168,.25) 18%,
            rgba(10,34,83,.82) 52%,
            rgba(5,18,59,.92) 100%
        ) !important;
    backdrop-filter: blur(18px) saturate(118%);
    -webkit-backdrop-filter: blur(18px) saturate(118%);
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.30),
        inset 0 13px 22px rgba(255,255,255,.075),
        inset 0 -12px 20px rgba(0,16,54,.18) !important;
    text-shadow: 0 1px 2px rgba(0,12,34,.48);
    animation: rxButtonBreath138 6.8s ease-in-out infinite !important;
    transition: transform .22s ease, filter .22s ease !important;
}

.rx-button::before,
.rx-shop-quote-button::before,
.rx-shop-secondary-button::before,
.rx-shop-advice-button::before,
.rx-account-submit::before,
.rx-portal-native-content .woocommerce a.button::before,
.rx-portal-native-content .woocommerce button.button::before,
.rx-single-product-main .woocommerce button.button::before,
.rx-single-product-main .woocommerce a.button::before,
.rx-single-product-main .woocommerce input.button::before,
.rx-single-product-main #respond input#submit::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 3;
    pointer-events: none;
    border-radius: inherit;
    padding: 1.6px;
    background: conic-gradient(
        from var(--rx-border-angle-138),
        #00AEEF 0%,
        #00AEEF 61%,
        #54D3F7 64%,
        #FF315C 68%,
        #FF1744 88%,
        #FF5477 91%,
        #4CD3FA 95%,
        #00AEEF 100%
    );
    -webkit-mask:
        linear-gradient(#000 0 0) content-box,
        linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    filter:
        drop-shadow(0 0 2px rgba(0,174,239,.48))
        drop-shadow(0 0 4px rgba(0,174,239,.24));
    animation: rxBorderOrbit138 12s linear infinite;
}

/* Glow móvil sincronizado con el tramo rojo del borde. */
.rx-button::after,
.rx-shop-quote-button::after,
.rx-shop-secondary-button::after,
.rx-shop-advice-button::after,
.rx-account-submit::after,
.rx-portal-native-content .woocommerce a.button::after,
.rx-portal-native-content .woocommerce button.button::after,
.rx-single-product-main .woocommerce button.button::after,
.rx-single-product-main .woocommerce a.button::after,
.rx-single-product-main .woocommerce input.button::after,
.rx-single-product-main #respond input#submit::after {
    content: "";
    position: absolute;
    inset: -3px;
    z-index: 2;
    pointer-events: none;
    border-radius: inherit;
    padding: 4px;
    background: conic-gradient(
        from var(--rx-border-angle-138),
        transparent 0%,
        transparent 64%,
        rgba(255,49,92,.28) 68%,
        rgba(255,23,68,.95) 78%,
        rgba(255,23,68,.72) 88%,
        rgba(255,84,119,.20) 92%,
        transparent 96%,
        transparent 100%
    );
    -webkit-mask:
        linear-gradient(#000 0 0) content-box,
        linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    filter: blur(5px);
    animation: rxBorderOrbit138 12s linear infinite;
}

.rx-button > *,
.rx-shop-quote-button > *,
.rx-shop-secondary-button > *,
.rx-shop-advice-button > *,
.rx-account-submit > * {
    position: relative;
    z-index: 5;
}

.rx-button:hover,
.rx-button:focus-visible,
.rx-button:active,
.rx-shop-quote-button:hover,
.rx-shop-quote-button:focus-visible,
.rx-shop-quote-button:active,
.rx-shop-secondary-button:hover,
.rx-shop-secondary-button:focus-visible,
.rx-shop-secondary-button:active,
.rx-shop-advice-button:hover,
.rx-shop-advice-button:focus-visible,
.rx-shop-advice-button:active,
.rx-account-submit:hover,
.rx-account-submit:focus-visible,
.rx-account-submit:active,
.rx-portal-native-content .woocommerce a.button:hover,
.rx-portal-native-content .woocommerce button.button:hover,
.rx-single-product-main .woocommerce button.button:hover,
.rx-single-product-main .woocommerce a.button:hover,
.rx-single-product-main .woocommerce input.button:hover,
.rx-single-product-main #respond input#submit:hover {
    border: 0 !important;
    background:
        linear-gradient(
            180deg,
            rgba(83,174,220,.30) 0%,
            rgba(36,111,168,.25) 18%,
            rgba(10,34,83,.82) 52%,
            rgba(5,18,59,.92) 100%
        ) !important;
    transform: translateY(-1px);
    filter: brightness(1.04);
}

@media (prefers-reduced-motion: reduce) {
    .rx-button::before,
    .rx-shop-quote-button::before,
    .rx-shop-secondary-button::before,
    .rx-shop-advice-button::before,
    .rx-account-submit::before,
    .rx-portal-native-content .woocommerce a.button::before,
    .rx-portal-native-content .woocommerce button.button::before,
    .rx-single-product-main .woocommerce button.button::before,
    .rx-single-product-main .woocommerce a.button::before,
    .rx-single-product-main .woocommerce input.button::before,
    .rx-single-product-main #respond input#submit::before,
    .rx-button::after,
    .rx-shop-quote-button::after,
    .rx-shop-secondary-button::after,
    .rx-shop-advice-button::after,
    .rx-account-submit::after {
        animation: none !important;
    }
}


/* =========================================================
   RECOMBIDX · BORDE NEÓN ROBUSTO v0.13.9
   Se conserva el fondo oscuro/cristal de v0.13.8.
   El borde ya no usa máscaras: rota como una capa exterior
   y una segunda capa interior tapa completamente el centro.
========================================================= */
@keyframes rxEdgeOrbit139 {
    to { transform: rotate(360deg); }
}

.rx-button,
.rx-shop-quote-button,
.rx-shop-secondary-button,
.rx-shop-advice-button,
.rx-account-submit,
.rx-portal-native-content .woocommerce a.button,
.rx-portal-native-content .woocommerce button.button,
.rx-single-product-main .woocommerce button.button,
.rx-single-product-main .woocommerce a.button,
.rx-single-product-main .woocommerce input.button,
.rx-single-product-main #respond input#submit {
    position: relative !important;
    isolation: isolate;
    overflow: hidden !important;
    border: 0 !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    background:
        linear-gradient(
            180deg,
            rgba(83,174,220,.30) 0%,
            rgba(36,111,168,.25) 18%,
            rgba(10,34,83,.82) 52%,
            rgba(5,18,59,.92) 100%
        ) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.30),
        inset 0 13px 22px rgba(255,255,255,.075),
        inset 0 -12px 20px rgba(0,16,54,.18) !important;
}

/* Capa giratoria: sólo se verá en el perímetro. */
.rx-button::before,
.rx-shop-quote-button::before,
.rx-shop-secondary-button::before,
.rx-shop-advice-button::before,
.rx-account-submit::before,
.rx-portal-native-content .woocommerce a.button::before,
.rx-portal-native-content .woocommerce button.button::before,
.rx-single-product-main .woocommerce button.button::before,
.rx-single-product-main .woocommerce a.button::before,
.rx-single-product-main .woocommerce input.button::before,
.rx-single-product-main #respond input#submit::before {
    content: "";
    position: absolute;
    z-index: 1;
    pointer-events: none;
    width: 180%;
    height: 380%;
    left: -40%;
    top: -140%;
    border-radius: 50%;
    background: conic-gradient(
        from 0deg,
        #00AEEF 0deg,
        #00AEEF 226deg,
        #52D4FA 236deg,
        #FF315C 246deg,
        #FF1744 326deg,
        #FF5477 336deg,
        #48CFF5 346deg,
        #00AEEF 360deg
    ) !important;
    animation: rxEdgeOrbit139 12s linear infinite !important;
}

/* Tapa interior: elimina por completo cualquier línea dentro del botón. */
.rx-button::after,
.rx-shop-quote-button::after,
.rx-shop-secondary-button::after,
.rx-shop-advice-button::after,
.rx-account-submit::after,
.rx-portal-native-content .woocommerce a.button::after,
.rx-portal-native-content .woocommerce button.button::after,
.rx-single-product-main .woocommerce button.button::after,
.rx-single-product-main .woocommerce a.button::after,
.rx-single-product-main .woocommerce input.button::after,
.rx-single-product-main #respond input#submit::after {
    content: "";
    position: absolute;
    z-index: 2;
    pointer-events: none;
    inset: 1.6px;
    border-radius: calc(16px - 1.6px);
    background:
        linear-gradient(
            180deg,
            rgba(83,174,220,.30) 0%,
            rgba(36,111,168,.25) 18%,
            rgba(10,34,83,.82) 52%,
            rgba(5,18,59,.92) 100%
        ) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.30),
        inset 0 13px 22px rgba(255,255,255,.075),
        inset 0 -12px 20px rgba(0,16,54,.18);
}

/* El contenido queda por encima de las dos capas. */
.rx-button > *,
.rx-shop-quote-button > *,
.rx-shop-secondary-button > *,
.rx-shop-advice-button > *,
.rx-account-submit > *,
.rx-portal-native-content .woocommerce a.button > *,
.rx-portal-native-content .woocommerce button.button > *,
.rx-single-product-main .woocommerce button.button > *,
.rx-single-product-main .woocommerce a.button > * {
    position: relative;
    z-index: 3;
}

.rx-button:hover,
.rx-button:focus-visible,
.rx-button:active,
.rx-shop-quote-button:hover,
.rx-shop-quote-button:focus-visible,
.rx-shop-quote-button:active,
.rx-shop-secondary-button:hover,
.rx-shop-secondary-button:focus-visible,
.rx-shop-secondary-button:active,
.rx-shop-advice-button:hover,
.rx-shop-advice-button:focus-visible,
.rx-shop-advice-button:active,
.rx-account-submit:hover,
.rx-account-submit:focus-visible,
.rx-account-submit:active {
    background:
        linear-gradient(
            180deg,
            rgba(83,174,220,.30) 0%,
            rgba(36,111,168,.25) 18%,
            rgba(10,34,83,.82) 52%,
            rgba(5,18,59,.92) 100%
        ) !important;
}

/* Halo exterior fijo: rojo con más intensidad, sin interferir con la línea. */
.rx-button,
.rx-shop-quote-button,
.rx-shop-secondary-button,
.rx-shop-advice-button,
.rx-account-submit {
    box-shadow:
        -2px 0 7px rgba(0,174,239,.16),
        3px 0 13px rgba(255,23,68,.26),
        inset 0 1px 0 rgba(255,255,255,.30),
        inset 0 13px 22px rgba(255,255,255,.075),
        inset 0 -12px 20px rgba(0,16,54,.18) !important;
}

@media (prefers-reduced-motion: reduce) {
    .rx-button::before,
    .rx-shop-quote-button::before,
    .rx-shop-secondary-button::before,
    .rx-shop-advice-button::before,
    .rx-account-submit::before,
    .rx-portal-native-content .woocommerce a.button::before,
    .rx-portal-native-content .woocommerce button.button::before,
    .rx-single-product-main .woocommerce button.button::before,
    .rx-single-product-main .woocommerce a.button::before,
    .rx-single-product-main .woocommerce input.button::before,
    .rx-single-product-main #respond input#submit::before {
        animation: none !important;
    }
}


/* HOTFIX: restore registered-angle perimeter motion from v0.13.7.
   Retain the dark glass fill of v0.13.9. No rotating underlay or rear glow. */
.rx-button,
.rx-shop-quote-button,
.rx-shop-secondary-button,
.rx-shop-advice-button,
.rx-account-submit,
.rx-portal-native-content .woocommerce a.button,
.rx-portal-native-content .woocommerce button.button,
.rx-single-product-main .woocommerce button.button,
.rx-single-product-main .woocommerce a.button,
.rx-single-product-main .woocommerce input.button,
.rx-single-product-main #respond input#submit {
    --rx-border-angle-137: 0deg;
    animation: none !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.30),
        inset 0 13px 22px rgba(255,255,255,.075),
        inset 0 -12px 20px rgba(0,16,54,.18) !important;
}
.rx-button::before,
.rx-shop-quote-button::before,
.rx-shop-secondary-button::before,
.rx-shop-advice-button::before,
.rx-account-submit::before,
.rx-portal-native-content .woocommerce a.button::before,
.rx-portal-native-content .woocommerce button.button::before,
.rx-single-product-main .woocommerce button.button::before,
.rx-single-product-main .woocommerce a.button::before,
.rx-single-product-main .woocommerce input.button::before,
.rx-single-product-main #respond input#submit::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    width: auto !important;
    height: auto !important;
    left: 0 !important;
    top: 0 !important;
    border-radius: inherit !important;
    padding: 1.6px !important;
    transform: none !important;
    z-index: 4 !important;
    pointer-events: none !important;
    background: conic-gradient(
        from var(--rx-border-angle-137),
        #00AEEF 0%,
        #00AEEF 58%,
        #48C3EE 61%,
        #FF1744 66%,
        #FF1744 94%,
        #67D6F6 98%,
        #00AEEF 100%
    ) !important;
    -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0) !important;
    -webkit-mask-composite: xor !important;
    mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0) !important;
    mask-composite: exclude !important;
    filter: none !important;
    animation: rxBorderOrbit137 12.5s linear infinite !important;
}
.rx-button::after,
.rx-shop-quote-button::after,
.rx-shop-secondary-button::after,
.rx-shop-advice-button::after,
.rx-account-submit::after,
.rx-portal-native-content .woocommerce a.button::after,
.rx-portal-native-content .woocommerce button.button::after,
.rx-single-product-main .woocommerce button.button::after,
.rx-single-product-main .woocommerce a.button::after,
.rx-single-product-main .woocommerce input.button::after,
.rx-single-product-main #respond input#submit::after {
    content: none !important;
    display: none !important;
}
@media (prefers-reduced-motion: reduce) {
.rx-button::before,
.rx-shop-quote-button::before,
.rx-shop-secondary-button::before,
.rx-shop-advice-button::before,
.rx-account-submit::before,
.rx-portal-native-content .woocommerce a.button::before,
.rx-portal-native-content .woocommerce button.button::before,
.rx-single-product-main .woocommerce button.button::before,
.rx-single-product-main .woocommerce a.button::before,
.rx-single-product-main .woocommerce input.button::before,
.rx-single-product-main #respond input#submit::before {
        animation: none !important;
    }
}


/* 0.14.2 - Native MP4 players in Inicio and Contacto (no YouTube when MP4 present). */
body.recombidx-site .rx-video-frame > video.rx-native-video {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    background-color: #07092E;
}


/* 0.14.3: branded local-video fallback while assets are not yet deployed.
   Never load a YouTube iframe. The MP4 takes precedence whenever present. */
body.recombidx-site .rx-video-frame > .rx-video-poster {
    position: absolute;
    inset: 0;
    overflow: hidden;
    background:
        radial-gradient(ellipse 58% 72% at 82% 33%, rgba(0,174,239,.30), transparent 77%),
        radial-gradient(ellipse 55% 74% at 16% 74%, rgba(255,23,68,.25), transparent 76%),
        linear-gradient(135deg, #07092E 2%, #03051B 100%);
}
body.recombidx-site .rx-video-frame > .rx-video-poster::after {
    content: "";
    position: absolute;
    inset: -15%;
    background:
        radial-gradient(circle at 68% 58%, rgba(0,174,239,.13), transparent 29%),
        radial-gradient(circle at 33% 40%, rgba(255,23,68,.11), transparent 27%);
    animation: rxVideoPosterAmbient 14s ease-in-out infinite alternate;
}
@keyframes rxVideoPosterAmbient {
    to { transform: translate3d(2%, -2%, 0) scale(1.03); }
}
@media (prefers-reduced-motion: reduce) {
    body.recombidx-site .rx-video-poster::after { animation: none; }
}


/* v0.14.6 — Typography of the ONE shared header (Inicio is the reference).
   Applied globally so /prueba/ never develops a different navigation style. */
body.recombidx-site .rx-header-wrap .rx-nav-link {
    font-size: clamp(.98rem, 1vw, 1.1rem);
    font-weight: 600;
}
@media (min-width: 1025px) and (max-width: 1280px) {
    body.recombidx-site .rx-header-wrap .rx-nav-link {
        font-size: .95rem;
    }
}
@media (max-width: 1024px) {
    body.recombidx-site .rx-header-wrap .rx-nav-link {
        font-size: .95rem;
    }
}
@media (max-width: 767px) {
    body.recombidx-site .rx-header-wrap .rx-nav-link {
        font-size: .91rem;
    }
}


/* v0.14.7 — Global header/footer typography and readable brand mark.
   The SAME font-size variable drives both global navigations and footer text.
   Use only the existing shared header/footer; do not duplicate markup. */
body.recombidx-site {
    --rx-global-nav-font-size: 1.18rem;
}
body.recombidx-site .rx-header-wrap .rx-nav-link,
body.recombidx-site .rx-footer-wrap .rx-footer-nav a,
body.recombidx-site .rx-footer-wrap .rx-copyright {
    font-size: var(--rx-global-nav-font-size) !important;
    font-weight: 600;
    line-height: 1.4;
}
body.recombidx-site .rx-header-wrap .rx-header {
    width: min(1580px, calc(100% - 64px));
    min-height: 104px;
    grid-template-columns: minmax(0, 300px) minmax(0, 1fr) auto;
    gap: 24px;
}
body.recombidx-site .rx-header-wrap .rx-brand-logo {
    width: auto;
    max-width: min(100%, 295px);
    max-height: 84px;
}
body.recombidx-site .rx-footer-wrap .rx-footer {
    width: min(1580px, calc(100% - 64px));
    min-height: 0;
    grid-template-columns: minmax(0, 275px) minmax(0, 1fr) auto;
    gap: 20px 28px;
    padding: 24px 0;
}
body.recombidx-site .rx-footer-wrap .rx-footer-logo {
    width: auto;
    max-width: min(100%, 260px);
    max-height: 78px;
}
body.recombidx-site .rx-footer-wrap .rx-footer-nav {
    flex-wrap: wrap;
    gap: 10px 22px;
    justify-content: center;
    white-space: normal;
}
body.recombidx-site .rx-footer-wrap .rx-social {
    gap: 10px;
    padding: 0 0 0 18px;
    border-right: 0;
}
body.recombidx-site .rx-footer-wrap .rx-copyright {
    display: block;
    grid-column: 1 / -1;
    text-align: center;
    margin: 0;
    color: #D5D8E6;
    font-weight: 400;
}
@media (max-width: 1280px) {
    body.recombidx-site { --rx-global-nav-font-size: 1.07rem; }
    body.recombidx-site .rx-header-wrap .rx-header {
        width: min(1180px, calc(100% - 48px));
        grid-template-columns: minmax(0, 265px) minmax(0, 1fr) auto;
        gap: 16px;
    }
    body.recombidx-site .rx-header-wrap .rx-brand-logo {
        max-width: min(100%, 260px);
        max-height: 76px;
    }
    body.recombidx-site .rx-footer-wrap .rx-footer {
        width: min(1180px, calc(100% - 48px));
        grid-template-columns: minmax(0, 245px) minmax(0, 1fr) auto;
        gap: 18px;
    }
    body.recombidx-site .rx-footer-wrap .rx-footer-logo {
        max-width: min(100%, 235px);
        max-height: 72px;
    }
}
@media (max-width: 1024px) {
    body.recombidx-site .rx-header-wrap .rx-header {
        grid-template-columns: minmax(0, 1fr) auto;
        row-gap: 4px;
    }
    body.recombidx-site .rx-footer-wrap .rx-footer {
        grid-template-columns: minmax(0, 1fr) auto;
        row-gap: 20px;
    }
    body.recombidx-site .rx-footer-wrap .rx-footer-brand {
        grid-column: 1;
        grid-row: 1;
    }
    body.recombidx-site .rx-footer-wrap .rx-footer-nav {
        grid-column: 1 / -1;
        grid-row: 2;
        justify-content: center;
    }
    body.recombidx-site .rx-footer-wrap .rx-social {
        grid-column: 2;
        grid-row: 1;
    }
    body.recombidx-site .rx-footer-wrap .rx-copyright {
        grid-column: 1 / -1;
        grid-row: 3;
    }
}
@media (max-width: 767px) {
    body.recombidx-site { --rx-global-nav-font-size: 1.02rem; }
    body.recombidx-site .rx-header-wrap .rx-header {
        width: min(100% - 28px, 1180px);
        min-height: 74px;
        column-gap: 10px;
    }
    body.recombidx-site .rx-header-wrap .rx-brand-logo {
        max-width: min(50vw, 215px);
        max-height: 65px;
    }
    body.recombidx-site .rx-footer-wrap .rx-footer {
        width: min(100% - 28px, 1180px);
        grid-template-columns: 1fr;
        gap: 20px;
        padding: 28px 0;
        text-align: center;
    }
    body.recombidx-site .rx-footer-wrap .rx-footer-brand {
        grid-column: 1;
        grid-row: 1;
        align-items: center;
    }
    body.recombidx-site .rx-footer-wrap .rx-footer-nav {
        grid-column: 1;
        grid-row: 2;
        gap: 12px 20px;
    }
    body.recombidx-site .rx-footer-wrap .rx-social {
        grid-column: 1;
        grid-row: 3;
        justify-content: center;
        padding: 0;
        border: 0;
    }
    body.recombidx-site .rx-footer-wrap .rx-copyright {
        grid-column: 1;
        grid-row: 4;
    }
}


/* v0.14.8 — Footer simplification: logo LEFT, contact/social icons CENTER,
   copyright RIGHT. Navigation is removed from the shared PHP component.
   Keep the single global header completely untouched. */
body.recombidx-site .rx-footer-wrap .rx-footer {
    display: grid;
    width: min(1580px, calc(100% - 64px));
    min-height: 120px;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    gap: 24px;
    padding: 24px 0;
    text-align: initial;
}
body.recombidx-site .rx-footer-wrap .rx-footer-brand {
    grid-column: 1;
    grid-row: 1;
    justify-self: start;
    align-items: flex-start;
}
body.recombidx-site .rx-footer-wrap .rx-social {
    grid-column: 2;
    grid-row: 1;
    justify-self: center;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 14px;
    padding: 0;
    margin: 0;
    border: 0;
}
body.recombidx-site .rx-footer-wrap .rx-copyright {
    display: block;
    grid-column: 3;
    grid-row: 1;
    justify-self: end;
    align-self: center;
    text-align: right;
    margin: 0;
    color: #D5D8E6;
    font-size: var(--rx-global-nav-font-size) !important;
    font-weight: 400;
    line-height: 1.42;
    white-space: normal;
}
@media (max-width: 1280px) {
    body.recombidx-site .rx-footer-wrap .rx-footer {
        width: min(1180px, calc(100% - 48px));
        grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
        gap: 18px;
    }
}
@media (max-width: 767px) {
    body.recombidx-site .rx-footer-wrap .rx-footer {
        width: min(100% - 28px, 1180px);
        grid-template-columns: minmax(0, 1fr);
        grid-template-rows: auto auto auto;
        gap: 18px;
        padding: 26px 0;
    }
    body.recombidx-site .rx-footer-wrap .rx-footer-brand {
        grid-column: 1;
        grid-row: 1;
        justify-self: start;
        align-items: flex-start;
    }
    body.recombidx-site .rx-footer-wrap .rx-social {
        grid-column: 1;
        grid-row: 2;
        justify-self: center;
    }
    body.recombidx-site .rx-footer-wrap .rx-copyright {
        grid-column: 1;
        grid-row: 3;
        justify-self: end;
        text-align: right;
    }
}
