/* =====================================================================
   RM Films — design « Nuit » (v1.7)
   Même univers que rodriguemontcheu.fr : nuit, ivoire, or ; Instrument Serif
   pour les titres (un mot en italique doré), Inter Tight pour le texte.
   Touches champêtres (rameau doré, sauge) et éditoriales (folios, filets).
   Cette couche se pose par-dessus rm.css : rien n'est supprimé, et l'ancien
   design revient en un clic (Apparence > Design RM Films).
   ===================================================================== */
.rmf--nuit {
	/* Palette */
	--n0: #0B0B0A;            /* nuit */
	--n1: #131311;            /* nuit relevée */
	--n2: #1B1A17;            /* surface */
	--n3: #26241F;            /* surface claire */
	--ivoire: #F2EFE9;
	--txt: rgba(242, 239, 233, .82);
	--txt-2: rgba(242, 239, 233, .64);
	--filet: rgba(242, 239, 233, .14);
	--or: #EE8E8A;            /* rouge pastel : mots en italique, petits titres (8,3:1 sur la nuit) */
	--rouge: #C72339;         /* carmin : boutons (texte ivoire 4,9:1 ; 3,5:1 sur la nuit) */
	--rouge-encre: #9E1B2A;   /* rouge sur papier ivoire (6,9:1) */
	--or-clair: #F09A95;
	--rose: #DCAE9F;
	--sauge: #A7AF94;         /* touche champêtre */

	/* Anciennes variables, réaffectées pour que tous les composants suivent */
	--ox: var(--n0); --ox-2: var(--n1); --cr: var(--or); --iv: var(--ivoire); --paper: var(--n0);
	--go: var(--or); --ta: rgba(242, 239, 233, .32);
	--ink: var(--ivoire); --ink-soft: var(--txt); --muted: var(--txt-2);
	--gold: var(--or); --gold-line: var(--or); --gold-text: var(--or); --gold-light: var(--or-clair);
	--sand: var(--n1); --line: var(--filet); --white: var(--ivoire);

	/* Polices */
	--display: 'Instrument Serif', 'Times New Roman', Georgia, serif;
	--serif: 'Inter Tight', 'Helvetica Neue', Arial, sans-serif;
	--sans: 'Inter Tight', 'Helvetica Neue', Arial, sans-serif;
	--script: 'Instrument Serif', Georgia, serif;

	background: var(--n0);
	color: var(--ivoire);
	font-family: var(--sans);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.rmf--nuit ::selection { background: var(--or); color: var(--n0); }

/* ---------------------------------------------------------------------
   Typographie : lisible partout (rien sous 12 px, pas de caractères fins)
   --------------------------------------------------------------------- */
.rmf--nuit :where(h1, h2, h3) { font-family: var(--display); font-weight: 400; }
.rmf--nuit .rmf-display { font-family: var(--display); font-weight: 400; text-transform: none; letter-spacing: -.01em; line-height: 1; }
.rmf--nuit .rmf-h1 { letter-spacing: -.01em; }
.rmf--nuit .rmf-ed-title { font-family: var(--display); font-weight: 400; font-size: clamp(44px, 6.4vw, 104px); line-height: .98; letter-spacing: -.015em; color: var(--ivoire); }
.rmf--nuit :is(.rmf-ed-title, .rmf-display, .rmf-hero__title, .rmf-price-title, .rmf-offer__name, .rmf-banner__title, .rmf-contact__title) em { font-style: italic; color: var(--or); }
.rmf--nuit .rmf-kicker,
.rmf--nuit .rmf-band__kicker,
.rmf--nuit .rmf-cta__kicker { display: inline-flex; align-items: center; gap: 14px; font-family: var(--sans); font-size: 12px; font-weight: 500; letter-spacing: .26em; line-height: 1.6; text-transform: uppercase; color: var(--or); }
.rmf--nuit .rmf-kicker::before { content: ""; flex: none; width: 28px; height: 1px; background: currentColor; opacity: .7; }
.rmf--nuit .rmf-center.rmf-kicker, .rmf--nuit .rmf-center .rmf-kicker { justify-content: center; }
.rmf--nuit .rmf-kicker--light { color: var(--ivoire); }
.rmf--nuit .rmf-sub { font-family: var(--display); font-style: italic; font-size: clamp(19px, 1.8vw, 24px); line-height: 1.45; color: var(--txt); }
.rmf--nuit .rmf-lead { font-family: var(--display); font-style: normal; font-size: clamp(22px, 2.3vw, 32px); line-height: 1.4; color: var(--ivoire); }
.rmf--nuit .rmf-spaced { font-family: var(--sans); font-size: 12px; letter-spacing: .22em; }
.rmf--nuit .rmf-link { position: relative; padding: 10px 0; font-family: var(--sans); font-size: 12px; font-weight: 500; letter-spacing: .24em; text-transform: uppercase; color: var(--ivoire); border-bottom: 1px solid var(--or); }
.rmf--nuit .rmf-link:hover { color: var(--or); opacity: 1; }

/* Boutons : pilule fine comme sur rodriguemontcheu.fr */
.rmf--nuit .rmf-btn { min-height: 50px; padding: 15px 34px; border-radius: 999px; font-family: var(--sans); font-size: 12px; font-weight: 500; letter-spacing: .2em; transition: background .25s, color .25s, border-color .25s, transform .25s; }
.rmf--nuit .rmf-btn:hover { transform: translateY(-1px); }
.rmf--nuit .rmf-btn--dark, .rmf--nuit .rmf-btn--light { background: var(--or); border-color: var(--or); color: var(--n0); }
.rmf--nuit .rmf-btn--dark:hover, .rmf--nuit .rmf-btn--light:hover { background: var(--ivoire); border-color: var(--ivoire); color: var(--n0); }
.rmf--nuit .rmf-btn--outline, .rmf--nuit .rmf-btn--ghost-light { background: transparent; border-color: rgba(242, 239, 233, .5); color: var(--ivoire); }
.rmf--nuit .rmf-btn--outline:hover, .rmf--nuit .rmf-btn--ghost-light:hover { background: var(--ivoire); border-color: var(--ivoire); color: var(--n0); }

/* ---------------------------------------------------------------------
   En-tête : nuit, logo « RODRIGUE Montcheu » comme le site principal
   --------------------------------------------------------------------- */
.rmf--nuit .rmf-header { min-height: 88px; background: rgba(11, 11, 10, .92); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); border-bottom: 1px solid var(--filet); color: var(--ivoire); }
.rmf--nuit .rmf-header--over { background: linear-gradient(to bottom, rgba(11, 11, 10, .72), rgba(11, 11, 10, 0)); border-bottom-color: transparent; -webkit-backdrop-filter: none; backdrop-filter: none; }
.rmf--nuit .rmf-header.is-scrolled { min-height: 70px; background: rgba(11, 11, 10, .94); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); border-bottom-color: var(--filet); box-shadow: none; }
.rmf--nuit .rmf-logo { gap: 5px; }
.rmf--nuit .rmf-logo__name { display: inline-flex; align-items: baseline; gap: .42em; font-family: var(--sans); font-size: 14px; line-height: 1; letter-spacing: 0; color: var(--ivoire); white-space: nowrap; }
.rmf--nuit .rmf-logo__name b { font-weight: 600; font-size: 1em; letter-spacing: .28em; text-transform: uppercase; }
.rmf--nuit .rmf-logo__name em { font-family: var(--display); font-style: italic; font-weight: 400; font-size: 1.62em; letter-spacing: 0; color: var(--or); }
.rmf--nuit .rmf-logo__sub { padding-left: 0; font-family: var(--sans); font-size: 12px; font-weight: 500; letter-spacing: .26em; color: var(--txt-2); }
.rmf--nuit .rmf-header .rmf-logo__name { color: var(--ivoire); }
.rmf--nuit .rmf-header .rmf-logo__sub { color: var(--txt-2); }
.rmf--nuit .rmf-nav { gap: clamp(18px, 2.2vw, 34px); font-family: var(--sans); font-size: 12px; font-weight: 400; letter-spacing: .2em; }
.rmf--nuit .rmf-nav > a, .rmf--nuit .rmf-dd__btn { position: relative; }
.rmf--nuit .rmf-dd__btn, .rmf--nuit .rmf-dd__btn:hover, .rmf--nuit .rmf-dd__btn:focus { font-family: var(--sans) !important; font-size: 12px !important; letter-spacing: .2em !important; }
.rmf--nuit .rmf-nav a[aria-current="page"], .rmf--nuit .rmf-dd.is-current > .rmf-dd__btn { border-bottom: 1px solid var(--or) !important; }
.rmf--nuit .rmf-nav__client { color: var(--or-clair); }
.rmf--nuit .rmf-nav .rmf-btn { min-height: 42px; padding: 11px 24px; background: transparent; border: 1px solid var(--or); color: var(--ivoire); }
.rmf--nuit .rmf-nav .rmf-btn:hover { background: var(--or); border-color: var(--or); color: var(--n0); }
.rmf--nuit .rmf-dd__list { background: var(--n1); border-top: 1px solid var(--or); box-shadow: 0 24px 48px rgba(0, 0, 0, .45); }
.rmf--nuit .rmf-dd__list a { font-family: var(--sans); font-size: 12px; letter-spacing: .18em; color: var(--txt); }
.rmf--nuit .rmf-dd__list a:hover, .rmf--nuit .rmf-nav .rmf-dd__list a[aria-current="page"] { color: var(--or); }
@media (min-width: 1101px) and (max-width: 1360px) {
	.rmf--nuit .rmf-nav { gap: 18px; font-size: 11.5px; letter-spacing: .16em; }
	.rmf--nuit .rmf-dd__btn, .rmf--nuit .rmf-dd__btn:hover, .rmf--nuit .rmf-dd__btn:focus { font-size: 11.5px !important; letter-spacing: .16em !important; }
	.rmf--nuit .rmf-logo__name { font-size: 13px; }
}

/* ---------------------------------------------------------------------
   Couverture
   --------------------------------------------------------------------- */
.rmf--nuit .rmf-hero { background: var(--n0); }
.rmf--nuit .rmf-hero::after { background:
	linear-gradient(to top, rgba(11, 11, 10, .92) 0%, rgba(11, 11, 10, .5) 34%, rgba(11, 11, 10, .08) 64%, rgba(11, 11, 10, .4) 100%),
	linear-gradient(to right, rgba(11, 11, 10, .5) 0%, rgba(11, 11, 10, 0) 58%); }
.rmf--nuit .rmf-hero__inner { gap: clamp(18px, 2.4vw, 30px); padding-bottom: clamp(64px, 10vh, 120px); }
.rmf--nuit .rmf-hero__kicker { font-family: var(--sans); font-size: 12px; font-weight: 500; letter-spacing: .26em; color: var(--ivoire) !important; text-shadow: 0 1px 12px rgba(0, 0, 0, .6); }
.rmf--nuit .rmf-hero__kicker::before { width: 36px; background: var(--or); }
.rmf--nuit .rmf-hero__title { font-family: var(--display); font-weight: 400; font-size: clamp(54px, 9.4vw, 158px); line-height: .92; letter-spacing: -.02em; color: var(--ivoire); text-shadow: 0 2px 30px rgba(0, 0, 0, .35); }
.rmf--nuit .rmf-hero__title em { color: var(--or); }
.rmf--nuit .rmf-hero__dot::before { background: rgba(242, 239, 233, .4); }
.rmf--nuit .rmf-hero__dot.is-active::before { background: var(--or); }
.rmf--nuit .rmf-hero__edition { position: absolute; z-index: 3; top: calc(120px + var(--wp-admin--admin-bar--height, 0px)); right: var(--pad); writing-mode: vertical-rl; font-family: var(--sans); font-size: 12px; font-weight: 500; letter-spacing: .34em; text-transform: uppercase; color: rgba(242, 239, 233, .7); }
.rmf--nuit .rmf-hero__edition::after { content: ""; display: inline-block; width: 1px; height: 54px; margin-top: 14px; background: var(--or); }

/* Bandeau défilant : comme le site principal (sérif, points dorés) */
.rmf--nuit .rmf-marquee { background: var(--n1); color: var(--ivoire); border-top: 1px solid var(--filet); border-bottom: 1px solid var(--filet); }
.rmf--nuit .rmf-marquee__track { gap: 40px; padding: 22px 0; font-family: var(--display); font-style: normal; font-weight: 400; font-size: clamp(24px, 2.6vw, 38px); }
.rmf--nuit .rmf-marquee__track i { font-size: 0; width: 6px; height: 6px; border-radius: 50%; background: var(--or); }

/* ---------------------------------------------------------------------
   Nouveau : le manifeste (texte d'ouverture, comme rodriguemontcheu.fr)
   --------------------------------------------------------------------- */
.rmf-manif { position: relative; padding: clamp(80px, 12vw, 180px) var(--pad) clamp(72px, 10vw, 150px); background: var(--n0); display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 3.2fr); gap: clamp(24px, 4vw, 72px); align-items: start; }
.rmf-manif__side { display: flex; flex-direction: column; gap: 22px; padding-top: 14px; }
.rmf-manif__rameau { width: 104px; height: auto; color: var(--or); }
.rmf-manif__text { margin: 0; font-family: var(--display); font-weight: 400; font-size: clamp(30px, 3.7vw, 60px); line-height: 1.14; letter-spacing: -.01em; color: var(--ivoire); }
.rmf-manif__text em { font-style: italic; color: var(--or); }
.rmf-manif__foot { grid-column: 2; display: flex; flex-wrap: wrap; align-items: center; gap: 18px 40px; margin-top: clamp(8px, 2vw, 24px); }
.rmf-manif__sign { font-family: var(--display); font-style: italic; font-size: 22px; color: var(--txt-2); }

/* ---------------------------------------------------------------------
   Formules (accueil) : deux grandes cartes nuit
   --------------------------------------------------------------------- */
.rmf--nuit .rmf-offers { background: var(--n0); padding-top: clamp(48px, 7vw, 110px); }
.rmf--nuit .rmf-offers__intro { color: var(--txt); }
.rmf--nuit .rmf-offer { background: var(--n1); border: 1px solid var(--filet); box-shadow: none; transition: border-color .3s, transform .4s; }
.rmf--nuit .rmf-offer:hover { border-color: rgba(238, 142, 138, .6); transform: translateY(-3px); }
.rmf--nuit .rmf-offer__n { font-family: var(--sans); font-style: normal; font-size: 12px; font-weight: 500; letter-spacing: .26em; color: var(--or); }
.rmf--nuit .rmf-offer__n::before { content: "N° "; }
.rmf--nuit .rmf-offer__name { font-family: var(--display); font-weight: 400; font-size: clamp(40px, 4vw, 64px); }
.rmf--nuit .rmf-offer__text { font-family: var(--sans); font-size: 16px; line-height: 1.7; color: var(--txt); }
.rmf--nuit .rmf-offer__price { font-family: var(--display); font-size: 34px; color: var(--ivoire); }
.rmf--nuit .rmf-offer__price small { font-family: var(--sans); font-size: 12px; font-weight: 500; letter-spacing: .18em; color: var(--txt-2); }
.rmf--nuit .rmf-offer__more { font-family: var(--sans); font-size: 12px; font-weight: 500; letter-spacing: .22em; color: var(--ivoire); border-bottom-color: var(--or); }

/* ---------------------------------------------------------------------
   Nouveau : « Deux écritures » — champêtre / éditorial
   --------------------------------------------------------------------- */
.rmf-duo { padding: clamp(72px, 10vw, 150px) var(--pad); background: var(--n1); border-top: 1px solid var(--filet); }
.rmf-duo__head { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: clamp(20px, 4vw, 64px); align-items: end; margin-bottom: clamp(32px, 5vw, 64px); }
.rmf-duo__head .rmf-ed-title { margin-top: 18px; }
.rmf-duo__head .rmf-sub { max-width: 520px; }
.rmf-duo__grid { position: relative; display: flex; gap: 10px; height: clamp(560px, 62vw, 860px); }
.rmf-duo__panel { position: relative; flex: 1 1 0; min-width: 0; overflow: hidden; display: flex; flex-direction: column; justify-content: flex-end; color: var(--ivoire); background: var(--n2); transition: flex-grow .9s cubic-bezier(.2, .7, .1, 1); }
.rmf--nuit a.rmf-duo__panel:hover { opacity: 1; }
.rmf-duo__panel img.rmf-img { position: absolute !important; inset: 0; transition: transform 1.6s cubic-bezier(.2, .7, .1, 1), filter .9s; }
.rmf-duo__panel::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgba(11, 11, 10, .9) 0%, rgba(11, 11, 10, .35) 45%, rgba(11, 11, 10, .05) 100%); transition: opacity .9s; }
.rmf-duo__body { position: relative; z-index: 1; display: flex; flex-direction: column; gap: 14px; padding: clamp(24px, 3.4vw, 52px); max-width: 620px; }
.rmf-duo__n { font-family: var(--sans); font-size: 12px; font-weight: 500; letter-spacing: .28em; text-transform: uppercase; color: var(--or); }
.rmf-duo__panel--champ .rmf-duo__n { color: var(--sauge); }
.rmf-duo__name { font-family: var(--display); font-size: clamp(44px, 5vw, 84px); line-height: .95; letter-spacing: -.015em; }
.rmf-duo__name em { font-style: italic; color: var(--or); }
.rmf-duo__panel--champ .rmf-duo__name em { color: #CFD3BC; }
.rmf-duo__text { font-size: 16px; line-height: 1.7; color: var(--txt); max-width: 440px; }
.rmf-duo__tags { display: flex; flex-wrap: wrap; gap: 8px; }
.rmf-duo__tags span { padding: 7px 14px; border: 1px solid rgba(242, 239, 233, .28); border-radius: 999px; font-size: 12px; letter-spacing: .08em; color: var(--ivoire); }
.rmf-duo__more { align-self: flex-start; margin-top: 6px; padding-bottom: 6px; border-bottom: 1px solid var(--or); font-size: 12px; font-weight: 500; letter-spacing: .22em; text-transform: uppercase; }
.rmf-duo__or { position: absolute; z-index: 2; left: 50%; top: 50%; transform: translate(-50%, -50%); width: 76px; height: 76px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: var(--n0); border: 1px solid var(--or); font-family: var(--display); font-style: italic; font-size: 28px; color: var(--or); pointer-events: none; transition: left .9s cubic-bezier(.2, .7, .1, 1); }
@media (hover: hover) and (min-width: 901px) {
	.rmf-duo__text, .rmf-duo__tags, .rmf-duo__more { opacity: .0; transform: translateY(12px); transition: opacity .6s ease, transform .7s cubic-bezier(.2, .7, .1, 1); }
	.rmf-duo__grid:not(:hover) .rmf-duo__panel .rmf-duo__text, .rmf-duo__grid:not(:hover) .rmf-duo__panel .rmf-duo__tags, .rmf-duo__grid:not(:hover) .rmf-duo__panel .rmf-duo__more { opacity: 1; transform: none; }
	.rmf-duo__panel:hover { flex-grow: 1.75; }
	.rmf-duo__panel:hover .rmf-duo__text, .rmf-duo__panel:hover .rmf-duo__tags, .rmf-duo__panel:hover .rmf-duo__more { opacity: 1; transform: none; transition-delay: .2s; }
	.rmf-duo__panel:hover img.rmf-img { transform: scale(1.04); }
	.rmf-duo__grid:hover .rmf-duo__panel:not(:hover) img.rmf-img { filter: grayscale(.85) brightness(.6); }
	.rmf-duo__grid:has(.rmf-duo__panel--champ:hover) .rmf-duo__or { left: 63.6%; }
	.rmf-duo__grid:has(.rmf-duo__panel--edito:hover) .rmf-duo__or { left: 36.4%; }
}

/* ---------------------------------------------------------------------
   Bridal Fashion, portfolio, bandeau, à propos, mariages
   --------------------------------------------------------------------- */
.rmf--nuit .rmf-fashion { background: var(--n0); color: var(--ivoire); }
.rmf--nuit .rmf-fashion .rmf-sub { color: var(--txt); }
.rmf--nuit .rmf-fashion .rmf-link { color: var(--ivoire); }
.rmf--nuit .rmf-fashion__item { background: var(--n2); }

.rmf--nuit .rmf-portfolio { background: var(--n0); }
.rmf--nuit .rmf-pf-tabs { border-bottom-color: var(--filet); font-family: var(--sans); font-size: 12px; font-weight: 500; letter-spacing: .2em; }
.rmf--nuit .rmf-pf-tabs a { color: var(--txt-2); }
.rmf--nuit .rmf-pf-tabs a[aria-current="page"], .rmf--nuit .rmf-pf-tabs a:hover { color: var(--ivoire); border-bottom: 1px solid var(--or); }

.rmf--nuit .rmf-band--motion { background: var(--n1); }
.rmf--nuit .rmf-band--motion::after { background: radial-gradient(ellipse at center, rgba(11, 11, 10, .55) 0%, rgba(11, 11, 10, .3) 70%); }
.rmf--nuit .rmf-band__title { font-family: var(--display); font-weight: 400; color: var(--ivoire); text-shadow: 0 2px 30px rgba(0, 0, 0, .5); }
.rmf--nuit .rmf-band__title em { font-family: var(--display); font-style: italic; font-size: 1em; color: var(--or); }
.rmf--nuit .rmf-band__kicker, .rmf--nuit .rmf-cta__kicker { color: var(--ivoire) !important; }

.rmf--nuit .rmf-about { background: var(--n0); border-top: 1px solid var(--filet); }
.rmf--nuit .rmf-about h2.rmf-display { font-size: clamp(44px, 5.4vw, 88px); }
.rmf--nuit .rmf-about__who { font-family: var(--sans); font-size: 13px; font-weight: 500; letter-spacing: .2em; color: var(--or); }
.rmf--nuit .rmf-about__lead { font-family: var(--display); font-style: italic; font-size: clamp(24px, 2.2vw, 32px); line-height: 1.35; color: var(--ivoire); }
.rmf--nuit .rmf-about__body { font-family: var(--sans); font-size: 17px; line-height: 1.8; color: var(--txt); }
.rmf--nuit .rmf-about__img img { filter: grayscale(.15) contrast(1.02); }

.rmf--nuit .rmf-stories { background: var(--n0); padding-top: clamp(40px, 6vw, 90px); }
.rmf--nuit .rmf-stories h2.rmf-display { font-size: clamp(48px, 6.4vw, 104px); }
.rmf--nuit .rmf-story__img::after { background: linear-gradient(to top, rgba(11, 11, 10, .78), rgba(11, 11, 10, .1)); }
.rmf--nuit .rmf-story__title { font-family: var(--display); text-transform: none; letter-spacing: -.01em; font-size: clamp(26px, 2.6vw, 40px); line-height: 1.02; color: var(--ivoire); }
.rmf--nuit .rmf-story__couple { font-family: var(--display); font-style: italic; font-size: clamp(20px, 1.6vw, 24px); color: var(--ivoire); }
.rmf--nuit .rmf-story__more { font-family: var(--sans); font-size: 12px; font-weight: 500; letter-spacing: .2em; color: var(--or); }

/* Avis : la « lettre » ivoire, touche champêtre */
.rmf--nuit .rmf-reviews { background: var(--ivoire); color: #1A1815; }
.rmf--nuit .rmf-reviews h2.rmf-display { color: #1A1815 !important; font-size: clamp(48px, 6vw, 96px); }
.rmf--nuit .rmf-reviews .rmf-kicker { color: var(--rouge-encre); }
.rmf--nuit .rmf-review { padding: 34px 30px; background: #FBF9F4; border: 1px solid #E4DCCB; }
.rmf--nuit .rmf-review__ini { border-color: var(--rouge-encre); color: var(--rouge-encre); font-family: var(--display); }
.rmf--nuit .rmf-review__name { font-family: var(--display); font-style: italic; text-transform: none; font-size: 26px; color: #1A1815; }
.rmf--nuit .rmf-review__meta { font-family: var(--sans); font-size: 12px; font-weight: 500; letter-spacing: .18em; color: #6B5D47; }
.rmf--nuit .rmf-review blockquote { font-family: var(--display); font-style: normal; font-size: 20px; line-height: 1.5; color: #2A2622; }

/* Appel final */
.rmf--nuit .rmf-cta::after { background: linear-gradient(to top, rgba(11, 11, 10, .85), rgba(11, 11, 10, .45)); }
.rmf--nuit .rmf-cta__title { font-family: var(--display); font-weight: 400; font-size: clamp(40px, 5.6vw, 92px); line-height: 1.02; letter-spacing: -.015em; text-transform: none; color: var(--ivoire); }
.rmf--nuit .rmf-cta__title em { font-style: italic; color: var(--or); }

/* ---------------------------------------------------------------------
   Pages intérieures
   --------------------------------------------------------------------- */
.rmf--nuit .rmf-banner::after { background: linear-gradient(to top, rgba(11, 11, 10, .88) 0%, rgba(11, 11, 10, .45) 55%, rgba(11, 11, 10, .55) 100%); }
.rmf--nuit .rmf-banner__title { font-family: var(--display); font-size: clamp(64px, 9vw, 150px); color: var(--ivoire); text-shadow: 0 2px 26px rgba(0, 0, 0, .45); }
.rmf--nuit .rmf-banner__sub { font-family: var(--display); font-style: italic; font-size: clamp(20px, 2vw, 28px); color: var(--ivoire); }
.rmf--nuit .rmf-banner .rmf-kicker, .rmf--nuit .rmf-banner .rmf-kicker--light { color: var(--ivoire) !important; text-shadow: 0 1px 12px rgba(0, 0, 0, .7); }
.rmf--nuit .rmf-banner .rmf-kicker::before { background: var(--or); opacity: 1; }

.rmf--nuit .rmf-section--sand, .rmf--nuit .rmf-gift, .rmf--nuit .rmf-formules { background: var(--n1); }
.rmf--nuit .rmf-section, .rmf--nuit .rmf-films, .rmf--nuit .rmf-pf-cats, .rmf--nuit .rmf-pf-grid, .rmf--nuit .rmf-legal, .rmf--nuit .rmf-contact__body, .rmf--nuit .rmf-md-list, .rmf--nuit .rmf-wed-links { background: var(--n0); }
.rmf--nuit .rmf-features h3, .rmf--nuit .rmf-steps h3 { font-family: var(--display); font-size: clamp(28px, 2.4vw, 36px); text-transform: none; letter-spacing: -.005em; }
.rmf--nuit .rmf-features p, .rmf--nuit .rmf-steps p, .rmf--nuit .rmf-faq details p, .rmf--nuit .rmf-legal p, .rmf--nuit .rmf-session__text, .rmf--nuit .rmf-en-offer__text, .rmf--nuit .rmf-card__items li { font-family: var(--sans); font-size: 16px; line-height: 1.75; color: var(--txt); }
.rmf--nuit .rmf-features > div, .rmf--nuit .rmf-faq__list { border-top-color: var(--filet); }
.rmf--nuit .rmf-steps__n { font-family: var(--display); font-style: italic; color: var(--or); }
.rmf--nuit .rmf-faq details { border-bottom-color: var(--filet); }
.rmf--nuit .rmf-faq summary { font-family: var(--display); font-size: clamp(22px, 1.9vw, 28px); line-height: 1.3; color: var(--ivoire); }
.rmf--nuit .rmf-faq summary::marker { color: var(--or); }
.rmf--nuit .rmf-featured__quote blockquote, .rmf--nuit .rmf-contact__quote blockquote { font-family: var(--display); font-style: italic; font-size: clamp(22px, 2vw, 28px); line-height: 1.4; color: var(--ivoire); }
.rmf--nuit .rmf-featured__quote figcaption, .rmf--nuit .rmf-contact__quote figcaption { font-family: var(--sans); font-size: 12px; font-weight: 500; letter-spacing: .2em; color: var(--or); }
.rmf--nuit .rmf-film-meta { font-family: var(--display); font-size: clamp(20px, 1.8vw, 26px); color: var(--ivoire); }
.rmf--nuit .rmf-film-meta span:last-child { font-family: var(--sans); font-size: 12px; font-weight: 500; letter-spacing: .2em; color: var(--txt-2); }
.rmf--nuit .rmf-video { background-color: var(--n2); }
.rmf--nuit .rmf-video__play { border-color: rgba(242, 239, 233, .7); background: rgba(11, 11, 10, .35); }
.rmf--nuit .rmf-video__play:hover { background: var(--or); border-color: var(--or); color: var(--n0); }

/* Formules (page) */
.rmf--nuit .rmf-tab { min-height: 54px; border-color: rgba(242, 239, 233, .3); color: var(--ivoire); font-family: var(--sans); font-size: 12px; font-weight: 500; letter-spacing: .18em; }
.rmf--nuit .rmf-tab span { color: var(--txt-2); }
.rmf--nuit .rmf-tab[aria-selected="true"] { background: var(--ivoire); border-color: var(--ivoire); color: var(--n0); }
.rmf--nuit .rmf-tab[aria-selected="true"] span { color: var(--rouge-encre); }
.rmf--nuit .rmf-price-head { border-bottom: 1px solid var(--filet); font-family: var(--sans); font-size: 12px; font-weight: 500; letter-spacing: .22em; color: var(--or); }
.rmf--nuit .rmf-price-head em { font-family: var(--display); font-size: 20px; color: var(--txt); }
.rmf--nuit .rmf-price { border-bottom-color: var(--filet); }
.rmf--nuit .rmf-price--hl { background: var(--n2); border: 1px solid rgba(238, 142, 138, .55); box-shadow: 0 24px 60px rgba(0, 0, 0, .35); }
.rmf--nuit .rmf-price__presence { font-family: var(--sans); font-style: normal; font-size: 12px; font-weight: 500; letter-spacing: .22em; text-transform: uppercase; color: var(--or); }
.rmf--nuit .rmf-price__name { font-family: var(--display); font-size: clamp(40px, 3.8vw, 58px); color: var(--ivoire); }
.rmf--nuit .rmf-price__badge { background: var(--or); color: var(--n0); font-family: var(--sans); font-size: 11px; font-weight: 600; letter-spacing: .18em; border-radius: 999px; padding: 6px 12px; }
.rmf--nuit .rmf-price__items li { font-family: var(--sans); font-size: 15.5px; color: var(--txt); }
.rmf--nuit .rmf-price__items li::before { content: ""; display: inline-block; width: 5px; height: 5px; margin: 0 12px 2px 0; border-radius: 50%; background: var(--or); }
.rmf--nuit .rmf-price__side { border-left-color: var(--filet); }
.rmf--nuit .rmf-price__label { font-family: var(--sans); font-size: 11px; font-weight: 500; letter-spacing: .24em; color: var(--txt-2); }
.rmf--nuit .rmf-price__amount { font-family: var(--display); font-size: clamp(46px, 4vw, 60px); color: var(--ivoire); }
.rmf--nuit .rmf-tabs__note { font-family: var(--display); font-style: italic; font-size: 20px; line-height: 1.55; color: var(--txt); }
.rmf--nuit .rmf-card { background: var(--n1); border-color: var(--filet); }
.rmf--nuit .rmf-card--hl { background: var(--n2); border-color: var(--or); }
.rmf--nuit .rmf-card__name { font-family: var(--display); text-transform: none; letter-spacing: 0; font-size: 38px; }
.rmf--nuit .rmf-card__items li { border-top-color: var(--filet); }

/* Portfolio */
.rmf--nuit .rmf-pf-card__img, .rmf--nuit .rmf-pf-item { background: var(--n2); }
.rmf--nuit .rmf-pf-card__name { font-family: var(--display); text-transform: none; letter-spacing: -.01em; font-size: clamp(32px, 3vw, 46px); color: var(--ivoire); }
.rmf--nuit .rmf-pf-card__sub { font-family: var(--sans); font-style: normal; font-size: 15px; color: var(--txt-2); }
.rmf--nuit .rmf-wed-link__img { background: var(--n2); }
.rmf--nuit .rmf-wed-link__name { font-family: var(--display); font-size: clamp(22px, 2vw, 28px); color: var(--ivoire); }
.rmf--nuit .rmf-wed-link__place { font-family: var(--sans); font-size: 11px; font-weight: 500; letter-spacing: .2em; color: var(--or); }
.rmf--nuit .rmf-wed-link.is-current .rmf-wed-link__img { outline-color: var(--or); }

/* Séances, English */
.rmf--nuit .rmf-session { background: var(--n0); }
.rmf--nuit .rmf-session:nth-child(even) { background: var(--n1); }
.rmf--nuit .rmf-session__list { font-family: var(--sans); font-size: 14px; letter-spacing: .06em; color: var(--txt); }
.rmf--nuit .rmf-session__list li::before { color: var(--or); }
.rmf--nuit .rmf-session__price { font-family: var(--display); font-size: 28px; color: var(--or); }
.rmf--nuit .rmf-en-offer { background: var(--n1); border: 1px solid var(--filet); }
.rmf--nuit .rmf-en-offer__price { font-family: var(--display); font-style: italic; font-size: 24px; color: var(--or); }

/* Les mots doux */
.rmf--nuit .rmf-md-top { background: var(--n1); color: var(--ivoire); }
.rmf--nuit .rmf-md-quote { border-top-color: var(--or); }
.rmf--nuit .rmf-md-quote blockquote { font-family: var(--display); font-size: clamp(24px, 2.3vw, 32px); color: var(--ivoire); }
.rmf--nuit .rmf-md-quote figcaption { font-family: var(--sans); font-size: 12px; font-weight: 500; letter-spacing: .2em; color: var(--or); }
.rmf--nuit .rmf-md-card { background: var(--n1); border-color: var(--filet); }
.rmf--nuit .rmf-md-card blockquote { font-family: var(--sans); font-style: normal; font-size: 16.5px; line-height: 1.8; color: var(--txt); }
.rmf--nuit .rmf-md-card .rmf-review__name { color: var(--ivoire); }
.rmf--nuit .rmf-md-card .rmf-review__meta { color: var(--or); }
.rmf--nuit .rmf-md-card .rmf-review__ini { color: var(--or); border-color: var(--or); }

/* Contact & espace client */
.rmf--nuit .rmf-contact__title { font-family: var(--display); }
.rmf--nuit .rmf-contact__quote { background: rgba(11, 11, 10, .82); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); border: 1px solid var(--filet); }
.rmf--nuit .rmf-form label, .rmf--nuit .rmf-choice legend { font-family: var(--sans); font-size: 12px; font-weight: 500; letter-spacing: .16em; color: var(--txt); }
.rmf--nuit .rmf-form input, .rmf--nuit .rmf-form select, .rmf--nuit .rmf-form textarea { font-family: var(--sans); font-size: 17px; color: var(--ivoire); border-bottom-color: rgba(242, 239, 233, .35); }
.rmf--nuit .rmf-form input:focus, .rmf--nuit .rmf-form select:focus, .rmf--nuit .rmf-form textarea:focus { outline: none; border-bottom-color: var(--or); }
.rmf--nuit .rmf-form select option { background: var(--n1); color: var(--ivoire); }
.rmf--nuit .rmf-form ::placeholder { color: rgba(242, 239, 233, .4); }
.rmf--nuit .rmf-choice__opt span { border-color: rgba(242, 239, 233, .25); }
.rmf--nuit .rmf-choice__opt strong { font-family: var(--display); font-weight: 400; font-size: 26px; letter-spacing: 0; text-transform: none; color: var(--ivoire); }
.rmf--nuit .rmf-choice__opt em { letter-spacing: .02em; }
.rmf--nuit .rmf-form { color-scheme: dark; }
.rmf--nuit .rmf-choice__opt em { font-family: var(--sans); font-style: normal; font-size: 14px; color: var(--or); }
.rmf--nuit .rmf-choice__opt input:checked + span { border-color: var(--or); background: var(--n2); box-shadow: inset 0 0 0 1px var(--or); }
.rmf--nuit .rmf-notice { font-family: var(--sans); }
.rmf--nuit .rmf-notice--ok { background: var(--n2); border-left-color: var(--or); color: var(--ivoire); }
.rmf--nuit .rmf-notice--err { background: #2A1714; border-left-color: #E07A5F; color: var(--ivoire); }
.rmf--nuit .rmf-contact__direct { border-top-color: var(--filet); font-family: var(--display); font-size: 21px; }
.rmf--nuit .rmf-contact__direct span { font-family: var(--sans); font-size: 12px; font-weight: 500; letter-spacing: .2em; color: var(--or); }
.rmf--nuit .rmf-client__help { font-family: var(--sans); color: var(--txt-2); }
.rmf--nuit .rmf-gal-bar { background: rgba(11, 11, 10, .94); border-bottom-color: var(--filet); color: var(--ivoire); }
.rmf--nuit .rmf-gal-content { font-family: var(--sans); color: var(--txt); }
.rmf--nuit .rmf-gal-tip { font-family: var(--display); color: var(--txt-2); }
.rmf--nuit .rmf-gal-hero__date { font-family: var(--display); }
.rmf--nuit .rmf-lightbox__dl { font-family: var(--sans); }
.rmf--nuit .rmf-vv__empty { background: var(--n1); color: var(--or); }

/* Mentions légales */
.rmf--nuit .rmf-legal h2 { font-family: var(--display); text-transform: none; letter-spacing: 0; font-size: clamp(28px, 2.6vw, 36px); border-top-color: var(--filet); }
.rmf--nuit .rmf-legal__date { color: var(--txt-2) !important; }

/* ---------------------------------------------------------------------
   Pied de page : grande signature + rameau champêtre
   --------------------------------------------------------------------- */
.rmf--nuit .rmf-footer { position: relative; background: var(--n0); color: var(--ivoire); border-top: 1px solid var(--filet); padding-top: clamp(56px, 8vw, 110px); gap: 24px; }
.rmf--nuit .rmf-footer__rameau { width: 88px; height: auto; color: var(--or); }
.rmf--nuit .rmf-footer__brand .rmf-logo__name { font-size: clamp(16px, 1.6vw, 20px); }
.rmf--nuit .rmf-footer__brand .rmf-logo__name em { font-size: 1.7em; }
.rmf--nuit .rmf-footer__brand .rmf-logo__sub { color: var(--txt-2); }
.rmf--nuit .rmf-footer__contact { font-family: var(--sans); font-size: 15px; letter-spacing: .02em; color: var(--txt); }
.rmf--nuit .rmf-footer__links { font-family: var(--sans); font-size: 12px; font-weight: 500; letter-spacing: .2em; color: var(--txt-2); }
.rmf--nuit .rmf-footer__links a:hover, .rmf--nuit .rmf-footer__contact a:hover { color: var(--or); opacity: 1; }
.rmf--nuit .rmf-top { color: var(--or); border: 1px solid var(--filet); border-radius: 50%; }
.rmf--nuit .rmf-sticky { background: rgba(11, 11, 10, .96); border-top-color: var(--filet); }
.rmf--nuit .rmf-sticky__cta { background: var(--or); color: var(--n0); font-family: var(--sans); font-weight: 600; }
.rmf--nuit .rmf-sticky__call { border-color: rgba(242, 239, 233, .4); color: var(--ivoire); }

/* Apparitions : un peu plus lentes, plus « film » */
.rmf-js .rmf--nuit .rmf-rv { transform: translateY(26px); }

/* ---------------------------------------------------------------------
   Tablette
   --------------------------------------------------------------------- */
@media (max-width: 1100px) {
	.rmf--nuit .rmf-header, .rmf--nuit .rmf-header.is-scrolled { min-height: 70px; }
	.rmf--nuit .rmf-nav { background: var(--n0); border-top: 1px solid var(--filet); font-size: 13px; }
	.rmf--nuit .rmf-nav a, .rmf--nuit .rmf-dd { border-bottom-color: var(--filet); }
	.rmf--nuit .rmf-nav .rmf-dd__list a { color: var(--txt); font-size: 13px; }
	.rmf--nuit .rmf-dd__btn, .rmf--nuit .rmf-dd__btn:hover, .rmf--nuit .rmf-dd__btn:focus { font-size: 13px !important; }
	.rmf--nuit .rmf-burger { color: var(--ivoire); }
	.rmf--nuit .rmf-hero__edition { display: none; }
}
@media (max-width: 900px) {
	.rmf-manif { grid-template-columns: 1fr; }
	.rmf-manif__side { flex-direction: column; align-items: flex-start; gap: 14px; padding-top: 0; }
	.rmf-manif__foot { grid-column: 1; }
	.rmf-duo__head { grid-template-columns: 1fr; }
	.rmf-duo__grid { flex-direction: column; height: auto; gap: 12px; }
	.rmf-duo__panel { flex: none; min-height: 118vw; max-height: 720px; }
	.rmf-duo__or { position: relative; left: auto; top: auto; transform: none; margin: -38px auto; width: 64px; height: 64px; font-size: 24px; order: 1; }
	.rmf-duo__panel--champ .rmf-duo__body { padding-bottom: 60px; }
	.rmf-duo__head .rmf-sub { margin-top: 4px; }
	.rmf-duo__panel--edito { order: 2; }
}

/* ---------------------------------------------------------------------
   Téléphone
   --------------------------------------------------------------------- */
@media (max-width: 700px) {
	.rmf--nuit .rmf-logo__name { font-size: 12.5px; }
	.rmf--nuit .rmf-logo__name em { font-size: 1.6em; }
	.rmf--nuit .rmf-logo__sub { font-size: 12px; letter-spacing: .12em; }
	.rmf--nuit .rmf-hero::after { background: linear-gradient(to top, rgba(11, 11, 10, .94) 0%, rgba(11, 11, 10, .6) 42%, rgba(11, 11, 10, .15) 72%, rgba(11, 11, 10, .45) 100%); }
	.rmf--nuit .rmf-hero__title { font-size: clamp(46px, 13vw, 64px); }
	.rmf--nuit .rmf-hero__kicker { font-size: 11px; letter-spacing: .2em; }
	.rmf--nuit .rmf-kicker, .rmf--nuit .rmf-band__kicker, .rmf--nuit .rmf-cta__kicker { font-size: 11.5px; letter-spacing: .2em; }
	.rmf--nuit .rmf-ed-title { font-size: clamp(40px, 11.5vw, 54px); }
	.rmf--nuit .rmf-marquee__track { padding: 16px 0; gap: 26px; font-size: 24px; }
	.rmf-manif { padding-top: 72px; padding-bottom: 64px; }
	.rmf-manif__text { font-size: clamp(28px, 7.6vw, 36px); line-height: 1.18; }
	.rmf-duo { padding-top: 64px; padding-bottom: 64px; }
	.rmf-duo__panel { min-height: 128vw; }
	.rmf-duo__name { font-size: clamp(42px, 12vw, 56px); }
	.rmf--nuit .rmf-review { background: #FBF9F4; border: 1px solid #E4DCCB; }
	.rmf--nuit .rmf-cta__title { font-size: clamp(36px, 10vw, 48px); letter-spacing: -.01em; line-height: 1.05; }
	.rmf--nuit .rmf-banner__title { font-size: clamp(52px, 15vw, 72px); }
	.rmf--nuit .rmf-price__items li { font-size: 15px; }
	.rmf--nuit .rmf-tab { font-size: 11.5px; letter-spacing: .08em; }
	.rmf--nuit .rmf-pf-tabs { font-size: 11.5px; letter-spacing: .14em; }
}
@media (prefers-reduced-motion: reduce) {
	.rmf-duo__panel, .rmf-duo__panel img.rmf-img, .rmf-duo__or { transition: none !important; }
}

/* v1.7.2 — Petits titres centrés : un trait de chaque côté, pour rester dans l'axe du grand titre */
.rmf--nuit :is(.rmf-kicker.rmf-center, .rmf-center .rmf-kicker, .rmf-banner .rmf-kicker, .rmf-gal-hero .rmf-kicker) { justify-content: center; text-align: center; }
.rmf--nuit :is(.rmf-kicker.rmf-center, .rmf-center .rmf-kicker, .rmf-banner .rmf-kicker, .rmf-gal-hero .rmf-kicker)::after { content: ""; flex: none; width: 28px; height: 1px; background: currentColor; opacity: .7; }
.rmf--nuit .rmf-banner .rmf-kicker::after, .rmf--nuit .rmf-gal-hero .rmf-kicker::after { background: var(--or); opacity: 1; }
.rmf--nuit .rmf-ed-title + .rmf-sub { margin-top: 12px; }
@media (max-width: 700px) {
	.rmf--nuit :is(.rmf-kicker.rmf-center, .rmf-center .rmf-kicker, .rmf-banner .rmf-kicker, .rmf-gal-hero .rmf-kicker) { gap: 10px; letter-spacing: .16em; }
	.rmf--nuit :is(.rmf-kicker.rmf-center, .rmf-center .rmf-kicker, .rmf-banner .rmf-kicker, .rmf-gal-hero .rmf-kicker)::before,
	.rmf--nuit :is(.rmf-kicker.rmf-center, .rmf-center .rmf-kicker, .rmf-banner .rmf-kicker, .rmf-gal-hero .rmf-kicker)::after { width: 16px; }
}
.rmf--nuit .rmf-kicker.rmf-center { display: flex; width: 100%; }

/* =====================================================================
   v1.8 — Couleur principale rouge + contrastes WCAG 2.2 AA
   Texte ≥ 4,5:1 (≥ 3:1 au-dessus de 24 px), boutons et champs ≥ 3:1 sur le fond.
   ===================================================================== */
/* Boutons pleins : carmin, texte ivoire */
.rmf--nuit .rmf-btn--dark, .rmf--nuit .rmf-btn--light, .rmf--nuit .rmf-sticky__cta { background: var(--rouge); border-color: var(--rouge); color: var(--ivoire); }
.rmf--nuit .rmf-btn--dark:hover, .rmf--nuit .rmf-btn--light:hover, .rmf--nuit .rmf-sticky__cta:hover { background: var(--ivoire); border-color: var(--ivoire); color: var(--n0); }
.rmf--nuit .rmf-nav .rmf-btn { border-color: var(--or); }
.rmf--nuit .rmf-nav .rmf-btn:hover { background: var(--rouge); border-color: var(--rouge); color: var(--ivoire); }
.rmf--nuit .rmf-price__badge { background: var(--rouge); color: var(--ivoire); }
/* Bordures des boutons contour et des champs : au moins 3:1 sur la nuit */
.rmf--nuit .rmf-btn--outline, .rmf--nuit .rmf-btn--ghost-light { border-color: rgba(242, 239, 233, .62); }
.rmf--nuit .rmf-tab { border-color: rgba(242, 239, 233, .5); }
.rmf--nuit .rmf-form input, .rmf--nuit .rmf-form select, .rmf--nuit .rmf-form textarea { border-bottom-color: rgba(242, 239, 233, .55); }
.rmf--nuit .rmf-choice__opt span { border-color: rgba(242, 239, 233, .5); }
.rmf--nuit .rmf-form ::placeholder { color: rgba(242, 239, 233, .62); }
.rmf--nuit .rmf-duo__tags span { border-color: rgba(242, 239, 233, .5); }
/* Focus clavier bien visible */
.rmf--nuit a:focus-visible, .rmf--nuit button:focus-visible, .rmf--nuit input:focus-visible, .rmf--nuit select:focus-visible, .rmf--nuit textarea:focus-visible, .rmf--nuit summary:focus-visible { outline: 2px solid var(--or); outline-offset: 3px; }
.rmf--nuit .rmf-reviews a:focus-visible { outline-color: var(--rouge-encre); }
/* Liens soulignés en rouge pastel (lisibles sur la nuit) */
.rmf--nuit .rmf-link, .rmf--nuit .rmf-offer__more, .rmf--nuit .rmf-duo__more { border-bottom-color: var(--or); }
/* Textes posés sur photo : voiles calculés pour tenir 4,5:1 même devant une zone blanche (pire cas) */
.rmf--nuit .rmf-band--motion::after { background: radial-gradient(ellipse at center, rgba(11, 11, 10, .7) 0%, rgba(11, 11, 10, .42) 75%); }
.rmf--nuit .rmf-banner::after { background: linear-gradient(to top, rgba(11, 11, 10, .9) 0%, rgba(11, 11, 10, .66) 50%, rgba(11, 11, 10, .66) 100%); }
.rmf--nuit .rmf-gal-hero::after { background: rgba(11, 11, 10, .66); }
.rmf--nuit .rmf-cta::after { background: linear-gradient(to top, rgba(11, 11, 10, .88), rgba(11, 11, 10, .66)); }
.rmf--nuit .rmf-story__img::after { background: linear-gradient(to top, rgba(11, 11, 10, .82) 0%, rgba(11, 11, 10, .58) 50%, rgba(11, 11, 10, .3) 100%); }
.rmf--nuit .rmf-duo__panel::after { background: linear-gradient(to top, rgba(11, 11, 10, .93) 0%, rgba(11, 11, 10, .72) 40%, rgba(11, 11, 10, .2) 75%, rgba(11, 11, 10, .05) 100%); }

/* v1.9 — Prise de rendez-vous (design Nuit) */
.rmf--nuit .rmf-rdv { background: var(--n1); border-top: 1px solid var(--filet); }
.rmf--nuit .rmf-rdv__type { background: var(--n0); border: 1px solid rgba(242, 239, 233, .5); color: var(--ivoire); }
.rmf--nuit .rmf-rdv__type:hover, .rmf--nuit .rmf-rdv__type.is-on { border-color: var(--or); box-shadow: inset 0 0 0 1px var(--or); }
.rmf--nuit .rmf-rdv__n { font-family: var(--sans); font-weight: 500; color: var(--or); }
.rmf--nuit .rmf-rdv__name { font-family: var(--display); color: var(--ivoire); }
.rmf--nuit .rmf-rdv__meta { font-family: var(--sans); color: var(--txt); }
.rmf--nuit .rmf-rdv__text { font-family: var(--sans); font-size: 16px; color: var(--txt); }
.rmf--nuit .rmf-rdv__go { font-family: var(--sans); font-weight: 500; color: var(--ivoire); border-bottom-color: var(--or); }
.rmf--nuit .rmf-rdv__frame { background: var(--n0); border: 1px solid var(--filet); }
.rmf--nuit .rmf-rdv__note, .rmf--nuit .rmf-rdv__direct { font-family: var(--sans); color: var(--txt); }
.rmf--nuit .rmf-rdv__note a, .rmf--nuit .rmf-rdv__direct a { color: var(--or); }
.rmf-rdv__badge { margin-left: 8px; padding: 3px 9px; border-radius: 999px; background: var(--rouge, #C72339); color: var(--ivoire, #F2EFE9); font-style: normal; font-size: 11px; letter-spacing: .14em; }
.rmf--nuit .rmf-rdv__type--hl { border-color: var(--or); }
