:root {
    --rt-green: #27682B;
    --rt-green-dark: #1f5223;

    --rt-primary: #0F3D7A;
    --rt-primary-light: #1A73E8;

    --rt-bg-page: #F4F6F9;
    --rt-bg-why: #E3E7EB;
    --rt-bg-white: #FFFFFF;

    --rt-text: #111;
    --rt-muted: #555;
    --rt-border: #D5D7DA;

    --rt-radius-sm: 6px;
    --rt-radius-md: 12px;
}

/* GLOBAL */
body {
    font-family: 'Inter', sans-serif;
    background: var(--rt-bg-page);
    color: var(--rt-text);
    font-size: 15px;
    line-height: 1.45;
}

h1, h2, h3, h4 {
    color: var(--rt-primary);
    font-weight: 600;
}

.section {
    margin-bottom: 3rem;
}

/* HERO */
.hero-block {
    background: var(--rt-bg-white);
    padding: 3rem 2rem;
    border-radius: var(--rt-radius-md);
    box-shadow: 0 2px 12px rgba(0,0,0,0.04);
    text-align: center;
}

.hero-title {
    font-size: 2rem;
    margin-bottom: 1rem;
}

.hero-lead {
    font-size: 1.15rem;
    color: var(--rt-muted);
    max-width: 650px;
    margin: 0 auto;
}

/* BLOCS COMPACTS */
.card-premium {
    background: var(--rt-bg-white);
    border-radius: var(--rt-radius-md);
    padding: 1.6rem;
    box-shadow: 0 2px 12px rgba(0,0,0,0.04);
    text-align: center;
}

.icon-green {
    color: var(--rt-green);
    margin-bottom: 0.75rem;
}

/* ON-NET */
.onnet-block {
    background: var(--rt-bg-white);
    padding: 3rem 2rem;
    border-radius: var(--rt-radius-md);
    box-shadow: 0 2px 12px rgba(0,0,0,0.04);
    text-align: center;
}

/* POURQUOI RIGHTIER */
.why-block {
    background: var(--rt-bg-why);
    padding: 3rem 2rem;
    border-radius: var(--rt-radius-md);
    box-shadow: 0 2px 12px rgba(0,0,0,0.04);
}

.why-block .card-premium {
    background: var(--rt-bg-white);
    border-radius: var(--rt-radius-sm);
    padding: 1.2rem;
    box-shadow: 0 2px 10px rgba(0,0,0,0.04);
}

/* CTA */
.btn-primary-rightier {
    background: var(--rt-green);
    border-color: var(--rt-green);
    color: #fff;
    padding: 0.9rem 2.5rem;
    font-size: 1.1rem;
    border-radius: var(--rt-radius-md);
}

.btn-primary-rightier:hover {
    background: var(--rt-green-dark);
}

/* HEADER — alignement du bouton */
.navbar .btn-outline-light {
    padding-top: 0.55rem;
    padding-bottom: 0.55rem;
    line-height: 1.2;
}

/* FOOTER */
footer {
    background: var(--rt-primary);
    color: rgba(255,255,255,0.8);
}

footer a {
    color: rgba(255,255,255,0.8) !important;
    text-decoration: none !important;
}

footer a:hover {
    color: #fff !important;
    text-decoration: none !important;
}


/* Logo animé Rightier */

/* Conteneur des trois cercles */
.rt-signal {
    display: flex;
    align-items: center;
}

/* Cercles bleus avec halo très faible */
.rt-signal span {
    width: 6px;
    height: 6px;
    margin-right: 3px;
    border-radius: 50%;
    background: #0d6efd; /* Bleu Bootstrap */
    opacity: .9;
    box-shadow: 0 0 3px rgba(13, 110, 253, 0.25); /* Halo très faible */
    display: inline-block;
    animation: rt-blink 1.4s infinite ease-in-out both;
}

/* Décalage de l’animation pour effet “signal réseau” */
.rt-signal span:nth-child(2) {
    animation-delay: 0.2s;
}

.rt-signal span:nth-child(3) {
    animation-delay: 0.4s;
}

/* Animation de clignotement */
@keyframes rt-blink {
    0%, 80%, 100% { opacity: .2; }
    40% { opacity: 1; }
}

/* Animation sweep (conservée comme demandé) */
@keyframes sweep {
    0%   { transform: scale(0.9); opacity: 0.3; }
    50%  { transform: scale(1.1); opacity: 0.5; }
    100% { transform: scale(0.9); opacity: 0.3; }
}

/* rt-signal old */
.rt-signal-old {
    display: flex;
    gap: 4px;
    align-items: center;
    margin-right: 6px;
}

.rt-signal-old span {
    width: 5px;
    height: 5px;
    background: currentColor;
    border-radius: 50%;
    opacity: .2;
    animation: sweep 1.4s infinite;
    box-shadow: 0 0 4px currentColor;
}

.rt-signal-old span:nth-child(1) { animation-delay: 0s; }
.rt-signal-old span:nth-child(2) { animation-delay: .18s; }
.rt-signal-old span:nth-child(3) { animation-delay: .36s; }

@keyframes-old sweep {
    0%   { opacity: .2; transform: scale(1); }
    50%  { opacity: 1; transform: scale(1.6); }
    100% { opacity: .2; transform: scale(1); }
}
/* end rt-signal-old */



/* Bullet vision.html */
.rt-list-premium {
    list-style: none;
    padding: 0;
    margin: 0;
}

.rt-list-premium li {
    margin-bottom: 6px;
    font-size: 1rem;
}

.rt-list-premium li::before {
    content: "✔ ";
    color: var(--rt-green);
    font-weight: 600;
    font-size: 1rem;
    transform: rotate(-8deg);
}

.schema {
    text-align: center;
    margin: 40px auto;
    padding: 20px 0;
    font-family: monospace;
    font-size: 16px;
    line-height: 1.6;
    white-space: pre;
}

.schema pre {
    display: inline-block;
    text-align: left;
}
