.elementor-24742 .elementor-element.elementor-element-11b896f0{--display:flex;}.elementor-24742 .elementor-element.elementor-element-a144d6e{--display:flex;border-style:solid;--border-style:solid;border-width:2px 2px 2px 2px;--border-top-width:2px;--border-right-width:2px;--border-bottom-width:2px;--border-left-width:2px;border-color:var( --e-global-color-0781fdb );--border-color:var( --e-global-color-0781fdb );--border-radius:25px 25px 25px 25px;box-shadow:2px 1px 6px 0px rgba(0,0,0,0.5);--padding-top:30px;--padding-bottom:30px;--padding-left:30px;--padding-right:30px;}.elementor-24742 .elementor-element.elementor-element-a144d6e:not(.elementor-motion-effects-element-type-background), .elementor-24742 .elementor-element.elementor-element-a144d6e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#ECECEC73;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-table-of-contents{--header-color:var( --e-global-color-secondary );--item-text-color:var( --e-global-color-text );--item-text-hover-color:var( --e-global-color-accent );--marker-color:var( --e-global-color-text );}.elementor-widget-table-of-contents .elementor-toc__header, .elementor-widget-table-of-contents .elementor-toc__header-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-table-of-contents .elementor-toc__list-item{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-24742 .elementor-element.elementor-element-f6fed86{--box-border-width:1px;--box-border-radius:20px;--separator-width:1px;--box-padding:10px;--item-text-color:var( --e-global-color-0d8a5d7 );--item-text-hover-decoration:underline;--marker-color:var( --e-global-color-0d8a5d7 );}.elementor-24742 .elementor-element.elementor-element-f6fed86 .elementor-toc__header-title{text-align:start;}.elementor-24742 .elementor-element.elementor-element-f6fed86 .elementor-toc__header{flex-direction:row;}.elementor-24742 .elementor-element.elementor-element-f6fed86 .elementor-toc__list-item{font-family:"Roboto", Sans-serif;font-weight:500;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-24742 .elementor-element.elementor-element-2fcb40c{width:100%;max-width:100%;}.elementor-24742 .elementor-element.elementor-element-2fcb40c > .elementor-widget-container{margin:20px 0px 30px 0px;}.elementor-24742 .elementor-element.elementor-element-2fcb40c img{width:100%;border-radius:25px 25px 25px 25px;}.elementor-24742 .elementor-element.elementor-element-9a94cc4 img{width:100%;border-radius:25px 25px 25px 25px;}.elementor-24742 .elementor-element.elementor-element-15f56f7{width:100%;max-width:100%;}.elementor-24742 .elementor-element.elementor-element-15f56f7 > .elementor-widget-container{margin:20px 0px 30px 0px;}.elementor-24742 .elementor-element.elementor-element-15f56f7 img{width:100%;height:500px;object-fit:cover;object-position:center center;border-radius:25px 25px 25px 25px;}.elementor-24742 .elementor-element.elementor-element-fc8c7a4{width:100%;max-width:100%;}.elementor-24742 .elementor-element.elementor-element-fc8c7a4 > .elementor-widget-container{margin:20px 0px 30px 0px;}.elementor-24742 .elementor-element.elementor-element-fc8c7a4 img{width:100%;height:500px;object-fit:cover;object-position:center center;border-radius:25px 25px 25px 25px;}.elementor-24742 .elementor-element.elementor-element-2fa46db{width:100%;max-width:100%;}.elementor-24742 .elementor-element.elementor-element-2fa46db > .elementor-widget-container{margin:20px 0px 30px 0px;}.elementor-24742 .elementor-element.elementor-element-2fa46db img{width:100%;height:500px;object-fit:cover;object-position:center center;border-radius:25px 25px 25px 25px;}/* Start custom CSS for text-editor, class: .elementor-element-552794b *//* =========================================================
   Roadtrip Australie – Melbourne Hiver
   Styles génériques pour blocs HTML livrés (Intro + Chap.1)
   Dépose dans : Apparence > Personnaliser > CSS additionnel
   ou Elementor > Site Settings > Custom CSS
   ========================================================= */

/* ---------- Variables thème (ajuste ici) ---------- */
:root {
  --rt-color-text: #1a1a1a;
  --rt-color-text-muted: #555;
  --rt-color-bg: #ffffff;
  --rt-color-accent: #0077c8;         /* bleu océan */
  --rt-color-accent-warm: #ff6b35;    /* orange chaleureux */
  --rt-color-border: #e0e0e0;
  --rt-color-border-strong: #c8c8c8;
  --rt-color-callout-tip-bg: #eef9ff;
  --rt-color-callout-tip-border: #b5e3ff;
  --rt-color-callout-pack-bg: #fff8e6;
  --rt-color-callout-pack-border: #ffdfa6;
  --rt-color-table-head-bg: #f4f7f9;
  --rt-color-table-row-alt: #fafafa;
  --rt-radius-sm: 4px;
  --rt-radius-md: 8px;
  --rt-radius-lg: 16px;
  --rt-spacing-xs: 0.5rem;
  --rt-spacing-sm: 1rem;
  --rt-spacing-md: 1.5rem;
  --rt-spacing-lg: 2.5rem;
  --rt-spacing-xl: 4rem;
  --rt-max-width: 800px; /* largeur zone texte */
  --rt-font-size-base: 1rem;
  --rt-font-size-h1: clamp(2rem, 4vw, 2.75rem);
  --rt-font-size-h2: clamp(1.75rem, 3.5vw, 2.25rem);
  --rt-font-size-h3: clamp(1.35rem, 2.8vw, 1.75rem);
  --rt-font-size-small: 0.875rem;
}


/* ---------- Conteneur générique ---------- */
.rt-container {
  max-width: var(--rt-max-width);
  margin-inline: auto;
  padding-inline: var(--rt-spacing-sm);
  color: var(--rt-color-text);
}


/* ---------- Espacements utilitaires ---------- */
.rt-padding-xl { padding-block: var(--rt-spacing-xl); }
.rt-padding-lg { padding-block: var(--rt-spacing-lg); }
.rt-padding-md { padding-block: var(--rt-spacing-md); }
.rt-padding-sm { padding-block: var(--rt-spacing-sm); }
.rt-padding-xs { padding-block: var(--rt-spacing-xs); }

.rt-section + .rt-section {
  margin-top: var(--rt-spacing-xl);
}



/* ---------- Paragraphes ---------- */
.rt-section p {
  margin-block: var(--rt-spacing-sm);
  font-size: var(--rt-font-size-base);
  line-height: 1.55;
}

.rt-section p.rt-note {
  font-size: var(--rt-font-size-small);
  color: var(--rt-color-text-muted);
  margin-top: var(--rt-spacing-xs);
}


/* ---------- Divider ---------- */
.rt-divider-lg {
  width: 100%;
  margin-block: var(--rt-spacing-lg);
  border: 0;
  border-top: 2px solid var(--rt-color-border);
}


/* ---------- Sous-sections ---------- */
.rt-subsection {
  border-top: 1px solid var(--rt-color-border);
  margin-top: var(--rt-spacing-lg);
  padding-top: var(--rt-spacing-md);
}


/* ---------- Callouts (astuces / bagage) ---------- */
.rt-callout {
  margin-block: var(--rt-spacing-sm);
  padding: var(--rt-spacing-sm) var(--rt-spacing-md);
  border-left: 4px solid var(--rt-color-accent);
  background: var(--rt-color-callout-tip-bg);
  border-radius: 0 var(--rt-radius-md) var(--rt-radius-md) 0;
  font-size: var(--rt-font-size-small);
  line-height: 1.4;
}

.rt-callout strong {
  color: var(--rt-color-text);
}

.rt-callout-tip {
  background: var(--rt-color-callout-tip-bg);
  border-left-color: var(--rt-color-callout-tip-border);
}

.rt-callout-pack {
  background: var(--rt-color-callout-pack-bg);
  border-left-color: var(--rt-color-callout-pack-border);
}


/* ---------- Checklist (valise) ---------- */
.rt-checklist {
  list-style: none;
  margin: var(--rt-spacing-sm) 0 0 0;
  padding: 0;
  columns: 2;              /* auto multi-col petites listes */
  column-gap: var(--rt-spacing-md);
}

@media (max-width: 600px) {
  .rt-checklist { columns: 1; }
}

.rt-checklist li {
  position: relative;
  margin-bottom: var(--rt-spacing-xs);
  padding-left: 1.5em;
  break-inside: avoid;
}

.rt-checklist li::before {
  content: "✔";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--rt-color-accent-warm);
  font-size: 0.9em;
  line-height: 1.2;
}


/* ---------- Tableaux responsive ---------- */
.rt-table-wrap {
  position: relative;
  width: 100%;
  margin-block: var(--rt-spacing-md);
}

.rt-scroll-x {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.rt-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 480px; /* permet le scroll sur petits écrans */
  font-size: var(--rt-font-size-small);
}

.rt-table caption {
  text-align: left;
  font-weight: 600;
  margin-bottom: var(--rt-spacing-xs);
  color: var(--rt-color-text-muted);
}

.rt-table th,
.rt-table td {
  padding: 0.6em 0.8em;
  border: 1px solid var(--rt-color-border);
  text-align: left;
  vertical-align: top;
}

.rt-table thead th {
  background: var(--rt-color-table-head-bg);
  font-weight: 700;
}

.rt-table tbody tr:nth-child(even) {
  background: var(--rt-color-table-row-alt);
}

/* Accentuer colonnes température dans tableau météo */
.rt-table-meteo td:nth-child(2),
.rt-table-meteo td:nth-child(3) {
  font-weight: 600;
  white-space: nowrap;
}


/* ---------- Utility: Scroll indicator gradient (optional) ---------- */
.rt-scroll-x::after {
  content: "";
  position: sticky;
  right: 0;
  top: 0;
  bottom: 0;
  width: 1.5rem;
  pointer-events: none;
  background: linear-gradient(to right, rgba(255,255,255,0), var(--rt-color-bg) 80%);
}


/* ---------- Accessibility tweaks ---------- */
.rt-section a {
  color: var(--rt-color-accent);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

.rt-section a:hover,
.rt-section a:focus-visible {
  color: var(--rt-color-accent-warm);
  text-decoration-thickness: 2px;
}


/* ---------- Narrow layout fixes in Elementor inner sections ---------- */
.elementor-widget-container .rt-container {
  max-width: 100%;
}

/* Optional: tighten spacing when nested in Elementor columns */
.elementor-column .rt-section {
  margin-top: 0 !important;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-acb37e0 *//* =========================================================
   Roadtrip Australie – Melbourne Hiver
   Styles génériques pour blocs HTML livrés (Intro + Chap.1)
   Dépose dans : Apparence > Personnaliser > CSS additionnel
   ou Elementor > Site Settings > Custom CSS
   ========================================================= */

/* ---------- Variables thème (ajuste ici) ---------- */
:root {
  --rt-color-text: #1a1a1a;
  --rt-color-text-muted: #555;
  --rt-color-bg: #ffffff;
  --rt-color-accent: #0077c8;         /* bleu océan */
  --rt-color-accent-warm: #ff6b35;    /* orange chaleureux */
  --rt-color-border: #e0e0e0;
  --rt-color-border-strong: #c8c8c8;
  --rt-color-callout-tip-bg: #eef9ff;
  --rt-color-callout-tip-border: #b5e3ff;
  --rt-color-callout-pack-bg: #fff8e6;
  --rt-color-callout-pack-border: #ffdfa6;
  --rt-color-table-head-bg: #f4f7f9;
  --rt-color-table-row-alt: #fafafa;
  --rt-radius-sm: 4px;
  --rt-radius-md: 8px;
  --rt-radius-lg: 16px;
  --rt-spacing-xs: 0.5rem;
  --rt-spacing-sm: 1rem;
  --rt-spacing-md: 1.5rem;
  --rt-spacing-lg: 2.5rem;
  --rt-spacing-xl: 4rem;
  --rt-max-width: 800px; /* largeur zone texte */
  --rt-font-size-base: 1rem;
  --rt-font-size-h1: clamp(2rem, 4vw, 2.75rem);
  --rt-font-size-h2: clamp(1.75rem, 3.5vw, 2.25rem);
  --rt-font-size-h3: clamp(1.35rem, 2.8vw, 1.75rem);
  --rt-font-size-small: 0.875rem;
}


/* ---------- Conteneur générique ---------- */
.rt-container {
  max-width: var(--rt-max-width);
  margin-inline: auto;
  padding-inline: var(--rt-spacing-sm);
  color: var(--rt-color-text);
}


/* ---------- Espacements utilitaires ---------- */
.rt-padding-xl { padding-block: var(--rt-spacing-xl); }
.rt-padding-lg { padding-block: var(--rt-spacing-lg); }
.rt-padding-md { padding-block: var(--rt-spacing-md); }
.rt-padding-sm { padding-block: var(--rt-spacing-sm); }
.rt-padding-xs { padding-block: var(--rt-spacing-xs); }

.rt-section + .rt-section {
  margin-top: var(--rt-spacing-xl);
}



/* ---------- Paragraphes ---------- */
.rt-section p {
  margin-block: var(--rt-spacing-sm);
  font-size: var(--rt-font-size-base);
  line-height: 1.55;
}

.rt-section p.rt-note {
  font-size: var(--rt-font-size-small);
  color: var(--rt-color-text-muted);
  margin-top: var(--rt-spacing-xs);
}


/* ---------- Divider ---------- */
.rt-divider-lg {
  width: 100%;
  margin-block: var(--rt-spacing-lg);
  border: 0;
  border-top: 2px solid var(--rt-color-border);
}


/* ---------- Sous-sections ---------- */
.rt-subsection {
  border-top: 1px solid var(--rt-color-border);
  margin-top: var(--rt-spacing-lg);
  padding-top: var(--rt-spacing-md);
}


/* ---------- Callouts (astuces / bagage) ---------- */
.rt-callout {
  margin-block: var(--rt-spacing-sm);
  padding: var(--rt-spacing-sm) var(--rt-spacing-md);
  border-left: 4px solid var(--rt-color-accent);
  background: var(--rt-color-callout-tip-bg);
  border-radius: 0 var(--rt-radius-md) var(--rt-radius-md) 0;
  font-size: var(--rt-font-size-small);
  line-height: 1.4;
}

.rt-callout strong {
  color: var(--rt-color-text);
}

.rt-callout-tip {
  background: var(--rt-color-callout-tip-bg);
  border-left-color: var(--rt-color-callout-tip-border);
}

.rt-callout-pack {
  background: var(--rt-color-callout-pack-bg);
  border-left-color: var(--rt-color-callout-pack-border);
}


/* ---------- Checklist (valise) ---------- */
.rt-checklist {
  list-style: none;
  margin: var(--rt-spacing-sm) 0 0 0;
  padding: 0;
  columns: 2;              /* auto multi-col petites listes */
  column-gap: var(--rt-spacing-md);
}

@media (max-width: 600px) {
  .rt-checklist { columns: 1; }
}

.rt-checklist li {
  position: relative;
  margin-bottom: var(--rt-spacing-xs);
  padding-left: 1.5em;
  break-inside: avoid;
}

.rt-checklist li::before {
  content: "✔";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--rt-color-accent-warm);
  font-size: 0.9em;
  line-height: 1.2;
}


/* ---------- Tableaux responsive ---------- */
.rt-table-wrap {
  position: relative;
  width: 100%;
  margin-block: var(--rt-spacing-md);
}

.rt-scroll-x {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.rt-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 480px; /* permet le scroll sur petits écrans */
  font-size: var(--rt-font-size-small);
}

.rt-table caption {
  text-align: left;
  font-weight: 600;
  margin-bottom: var(--rt-spacing-xs);
  color: var(--rt-color-text-muted);
}

.rt-table th,
.rt-table td {
  padding: 0.6em 0.8em;
  border: 1px solid var(--rt-color-border);
  text-align: left;
  vertical-align: top;
}

.rt-table thead th {
  background: var(--rt-color-table-head-bg);
  font-weight: 700;
}

.rt-table tbody tr:nth-child(even) {
  background: var(--rt-color-table-row-alt);
}

/* Accentuer colonnes température dans tableau météo */
.rt-table-meteo td:nth-child(2),
.rt-table-meteo td:nth-child(3) {
  font-weight: 600;
  white-space: nowrap;
}


/* ---------- Utility: Scroll indicator gradient (optional) ---------- */
.rt-scroll-x::after {
  content: "";
  position: sticky;
  right: 0;
  top: 0;
  bottom: 0;
  width: 1.5rem;
  pointer-events: none;
  background: linear-gradient(to right, rgba(255,255,255,0), var(--rt-color-bg) 80%);
}


/* ---------- Accessibility tweaks ---------- */
.rt-section a {
  color: var(--rt-color-accent);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

.rt-section a:hover,
.rt-section a:focus-visible {
  color: var(--rt-color-accent-warm);
  text-decoration-thickness: 2px;
}


/* ---------- Narrow layout fixes in Elementor inner sections ---------- */
.elementor-widget-container .rt-container {
  max-width: 100%;
}

/* Optional: tighten spacing when nested in Elementor columns */
.elementor-column .rt-section {
  margin-top: 0 !important;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-212a4c4 *//* =========================================================
   Roadtrip Australie – Melbourne Hiver
   Styles génériques pour blocs HTML livrés (Intro + Chap.1)
   Dépose dans : Apparence > Personnaliser > CSS additionnel
   ou Elementor > Site Settings > Custom CSS
   ========================================================= */

/* ---------- Variables thème (ajuste ici) ---------- */
:root {
  --rt-color-text: #1a1a1a;
  --rt-color-text-muted: #555;
  --rt-color-bg: #ffffff;
  --rt-color-accent: #0077c8;         /* bleu océan */
  --rt-color-accent-warm: #ff6b35;    /* orange chaleureux */
  --rt-color-border: #e0e0e0;
  --rt-color-border-strong: #c8c8c8;
  --rt-color-callout-tip-bg: #eef9ff;
  --rt-color-callout-tip-border: #b5e3ff;
  --rt-color-callout-pack-bg: #fff8e6;
  --rt-color-callout-pack-border: #ffdfa6;
  --rt-color-table-head-bg: #f4f7f9;
  --rt-color-table-row-alt: #fafafa;
  --rt-radius-sm: 4px;
  --rt-radius-md: 8px;
  --rt-radius-lg: 16px;
  --rt-spacing-xs: 0.5rem;
  --rt-spacing-sm: 1rem;
  --rt-spacing-md: 1.5rem;
  --rt-spacing-lg: 2.5rem;
  --rt-spacing-xl: 4rem;
  --rt-max-width: 800px; /* largeur zone texte */
  --rt-font-size-base: 1rem;
  --rt-font-size-h1: clamp(2rem, 4vw, 2.75rem);
  --rt-font-size-h2: clamp(1.75rem, 3.5vw, 2.25rem);
  --rt-font-size-h3: clamp(1.35rem, 2.8vw, 1.75rem);
  --rt-font-size-small: 0.875rem;
}


/* ---------- Conteneur générique ---------- */
.rt-container {
  max-width: var(--rt-max-width);
  margin-inline: auto;
  padding-inline: var(--rt-spacing-sm);
  color: var(--rt-color-text);
}


/* ---------- Espacements utilitaires ---------- */
.rt-padding-xl { padding-block: var(--rt-spacing-xl); }
.rt-padding-lg { padding-block: var(--rt-spacing-lg); }
.rt-padding-md { padding-block: var(--rt-spacing-md); }
.rt-padding-sm { padding-block: var(--rt-spacing-sm); }
.rt-padding-xs { padding-block: var(--rt-spacing-xs); }

.rt-section + .rt-section {
  margin-top: var(--rt-spacing-xl);
}



/* ---------- Paragraphes ---------- */
.rt-section p {
  margin-block: var(--rt-spacing-sm);
  font-size: var(--rt-font-size-base);
  line-height: 1.55;
}

.rt-section p.rt-note {
  font-size: var(--rt-font-size-small);
  color: var(--rt-color-text-muted);
  margin-top: var(--rt-spacing-xs);
}


/* ---------- Divider ---------- */
.rt-divider-lg {
  width: 100%;
  margin-block: var(--rt-spacing-lg);
  border: 0;
  border-top: 2px solid var(--rt-color-border);
}


/* ---------- Sous-sections ---------- */
.rt-subsection {
  border-top: 1px solid var(--rt-color-border);
  margin-top: var(--rt-spacing-lg);
  padding-top: var(--rt-spacing-md);
}


/* ---------- Callouts (astuces / bagage) ---------- */
.rt-callout {
  margin-block: var(--rt-spacing-sm);
  padding: var(--rt-spacing-sm) var(--rt-spacing-md);
  border-left: 4px solid var(--rt-color-accent);
  background: var(--rt-color-callout-tip-bg);
  border-radius: 0 var(--rt-radius-md) var(--rt-radius-md) 0;
  font-size: var(--rt-font-size-small);
  line-height: 1.4;
}

.rt-callout strong {
  color: var(--rt-color-text);
}

.rt-callout-tip {
  background: var(--rt-color-callout-tip-bg);
  border-left-color: var(--rt-color-callout-tip-border);
}

.rt-callout-pack {
  background: var(--rt-color-callout-pack-bg);
  border-left-color: var(--rt-color-callout-pack-border);
}


/* ---------- Checklist (valise) ---------- */
.rt-checklist {
  list-style: none;
  margin: var(--rt-spacing-sm) 0 0 0;
  padding: 0;
  columns: 2;              /* auto multi-col petites listes */
  column-gap: var(--rt-spacing-md);
}

@media (max-width: 600px) {
  .rt-checklist { columns: 1; }
}

.rt-checklist li {
  position: relative;
  margin-bottom: var(--rt-spacing-xs);
  padding-left: 1.5em;
  break-inside: avoid;
}

.rt-checklist li::before {
  content: "✔";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--rt-color-accent-warm);
  font-size: 0.9em;
  line-height: 1.2;
}


/* ---------- Tableaux responsive ---------- */
.rt-table-wrap {
  position: relative;
  width: 100%;
  margin-block: var(--rt-spacing-md);
}

.rt-scroll-x {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.rt-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 480px; /* permet le scroll sur petits écrans */
  font-size: var(--rt-font-size-small);
}

.rt-table caption {
  text-align: left;
  font-weight: 600;
  margin-bottom: var(--rt-spacing-xs);
  color: var(--rt-color-text-muted);
}

.rt-table th,
.rt-table td {
  padding: 0.6em 0.8em;
  border: 1px solid var(--rt-color-border);
  text-align: left;
  vertical-align: top;
}

.rt-table thead th {
  background: var(--rt-color-table-head-bg);
  font-weight: 700;
}

.rt-table tbody tr:nth-child(even) {
  background: var(--rt-color-table-row-alt);
}

/* Accentuer colonnes température dans tableau météo */
.rt-table-meteo td:nth-child(2),
.rt-table-meteo td:nth-child(3) {
  font-weight: 600;
  white-space: nowrap;
}


/* ---------- Utility: Scroll indicator gradient (optional) ---------- */
.rt-scroll-x::after {
  content: "";
  position: sticky;
  right: 0;
  top: 0;
  bottom: 0;
  width: 1.5rem;
  pointer-events: none;
  background: linear-gradient(to right, rgba(255,255,255,0), var(--rt-color-bg) 80%);
}


/* ---------- Accessibility tweaks ---------- */
.rt-section a {
  color: var(--rt-color-accent);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

.rt-section a:hover,
.rt-section a:focus-visible {
  color: var(--rt-color-accent-warm);
  text-decoration-thickness: 2px;
}


/* ---------- Narrow layout fixes in Elementor inner sections ---------- */
.elementor-widget-container .rt-container {
  max-width: 100%;
}

/* Optional: tighten spacing when nested in Elementor columns */
.elementor-column .rt-section {
  margin-top: 0 !important;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-d72b669 *//* =========================================================
   Roadtrip Australie – Melbourne Hiver
   Styles génériques pour blocs HTML livrés (Intro + Chap.1)
   Dépose dans : Apparence > Personnaliser > CSS additionnel
   ou Elementor > Site Settings > Custom CSS
   ========================================================= */

/* ---------- Variables thème (ajuste ici) ---------- */
:root {
  --rt-color-text: #1a1a1a;
  --rt-color-text-muted: #555;
  --rt-color-bg: #ffffff;
  --rt-color-accent: #0077c8;         /* bleu océan */
  --rt-color-accent-warm: #ff6b35;    /* orange chaleureux */
  --rt-color-border: #e0e0e0;
  --rt-color-border-strong: #c8c8c8;
  --rt-color-callout-tip-bg: #eef9ff;
  --rt-color-callout-tip-border: #b5e3ff;
  --rt-color-callout-pack-bg: #fff8e6;
  --rt-color-callout-pack-border: #ffdfa6;
  --rt-color-table-head-bg: #f4f7f9;
  --rt-color-table-row-alt: #fafafa;
  --rt-radius-sm: 4px;
  --rt-radius-md: 8px;
  --rt-radius-lg: 16px;
  --rt-spacing-xs: 0.5rem;
  --rt-spacing-sm: 1rem;
  --rt-spacing-md: 1.5rem;
  --rt-spacing-lg: 2.5rem;
  --rt-spacing-xl: 4rem;
  --rt-max-width: 800px; /* largeur zone texte */
  --rt-font-size-base: 1rem;
  --rt-font-size-h1: clamp(2rem, 4vw, 2.75rem);
  --rt-font-size-h2: clamp(1.75rem, 3.5vw, 2.25rem);
  --rt-font-size-h3: clamp(1.35rem, 2.8vw, 1.75rem);
  --rt-font-size-small: 0.875rem;
}


/* ---------- Conteneur générique ---------- */
.rt-container {
  max-width: var(--rt-max-width);
  margin-inline: auto;
  padding-inline: var(--rt-spacing-sm);
  color: var(--rt-color-text);
}


/* ---------- Espacements utilitaires ---------- */
.rt-padding-xl { padding-block: var(--rt-spacing-xl); }
.rt-padding-lg { padding-block: var(--rt-spacing-lg); }
.rt-padding-md { padding-block: var(--rt-spacing-md); }
.rt-padding-sm { padding-block: var(--rt-spacing-sm); }
.rt-padding-xs { padding-block: var(--rt-spacing-xs); }

.rt-section + .rt-section {
  margin-top: var(--rt-spacing-xl);
}



/* ---------- Paragraphes ---------- */
.rt-section p {
  margin-block: var(--rt-spacing-sm);
  font-size: var(--rt-font-size-base);
  line-height: 1.55;
}

.rt-section p.rt-note {
  font-size: var(--rt-font-size-small);
  color: var(--rt-color-text-muted);
  margin-top: var(--rt-spacing-xs);
}


/* ---------- Divider ---------- */
.rt-divider-lg {
  width: 100%;
  margin-block: var(--rt-spacing-lg);
  border: 0;
  border-top: 2px solid var(--rt-color-border);
}


/* ---------- Sous-sections ---------- */
.rt-subsection {
  border-top: 1px solid var(--rt-color-border);
  margin-top: var(--rt-spacing-lg);
  padding-top: var(--rt-spacing-md);
}


/* ---------- Callouts (astuces / bagage) ---------- */
.rt-callout {
  margin-block: var(--rt-spacing-sm);
  padding: var(--rt-spacing-sm) var(--rt-spacing-md);
  border-left: 4px solid var(--rt-color-accent);
  background: var(--rt-color-callout-tip-bg);
  border-radius: 0 var(--rt-radius-md) var(--rt-radius-md) 0;
  font-size: var(--rt-font-size-small);
  line-height: 1.4;
}

.rt-callout strong {
  color: var(--rt-color-text);
}

.rt-callout-tip {
  background: var(--rt-color-callout-tip-bg);
  border-left-color: var(--rt-color-callout-tip-border);
}

.rt-callout-pack {
  background: var(--rt-color-callout-pack-bg);
  border-left-color: var(--rt-color-callout-pack-border);
}


/* ---------- Checklist (valise) ---------- */
.rt-checklist {
  list-style: none;
  margin: var(--rt-spacing-sm) 0 0 0;
  padding: 0;
  columns: 2;              /* auto multi-col petites listes */
  column-gap: var(--rt-spacing-md);
}

@media (max-width: 600px) {
  .rt-checklist { columns: 1; }
}

.rt-checklist li {
  position: relative;
  margin-bottom: var(--rt-spacing-xs);
  padding-left: 1.5em;
  break-inside: avoid;
}

.rt-checklist li::before {
  content: "✔";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--rt-color-accent-warm);
  font-size: 0.9em;
  line-height: 1.2;
}


/* ---------- Tableaux responsive ---------- */
.rt-table-wrap {
  position: relative;
  width: 100%;
  margin-block: var(--rt-spacing-md);
}

.rt-scroll-x {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.rt-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 480px; /* permet le scroll sur petits écrans */
  font-size: var(--rt-font-size-small);
}

.rt-table caption {
  text-align: left;
  font-weight: 600;
  margin-bottom: var(--rt-spacing-xs);
  color: var(--rt-color-text-muted);
}

.rt-table th,
.rt-table td {
  padding: 0.6em 0.8em;
  border: 1px solid var(--rt-color-border);
  text-align: left;
  vertical-align: top;
}

.rt-table thead th {
  background: var(--rt-color-table-head-bg);
  font-weight: 700;
}

.rt-table tbody tr:nth-child(even) {
  background: var(--rt-color-table-row-alt);
}

/* Accentuer colonnes température dans tableau météo */
.rt-table-meteo td:nth-child(2),
.rt-table-meteo td:nth-child(3) {
  font-weight: 600;
  white-space: nowrap;
}


/* ---------- Utility: Scroll indicator gradient (optional) ---------- */
.rt-scroll-x::after {
  content: "";
  position: sticky;
  right: 0;
  top: 0;
  bottom: 0;
  width: 1.5rem;
  pointer-events: none;
  background: linear-gradient(to right, rgba(255,255,255,0), var(--rt-color-bg) 80%);
}


/* ---------- Accessibility tweaks ---------- */
.rt-section a {
  color: var(--rt-color-accent);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

.rt-section a:hover,
.rt-section a:focus-visible {
  color: var(--rt-color-accent-warm);
  text-decoration-thickness: 2px;
}


/* ---------- Narrow layout fixes in Elementor inner sections ---------- */
.elementor-widget-container .rt-container {
  max-width: 100%;
}

/* Optional: tighten spacing when nested in Elementor columns */
.elementor-column .rt-section {
  margin-top: 0 !important;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-0b51c56 *//* =========================================================
   Roadtrip Australie – Melbourne Hiver
   Styles génériques pour blocs HTML livrés (Intro + Chap.1)
   Dépose dans : Apparence > Personnaliser > CSS additionnel
   ou Elementor > Site Settings > Custom CSS
   ========================================================= */

/* ---------- Variables thème (ajuste ici) ---------- */
:root {
  --rt-color-text: #1a1a1a;
  --rt-color-text-muted: #555;
  --rt-color-bg: #ffffff;
  --rt-color-accent: #0077c8;         /* bleu océan */
  --rt-color-accent-warm: #ff6b35;    /* orange chaleureux */
  --rt-color-border: #e0e0e0;
  --rt-color-border-strong: #c8c8c8;
  --rt-color-callout-tip-bg: #eef9ff;
  --rt-color-callout-tip-border: #b5e3ff;
  --rt-color-callout-pack-bg: #fff8e6;
  --rt-color-callout-pack-border: #ffdfa6;
  --rt-color-table-head-bg: #f4f7f9;
  --rt-color-table-row-alt: #fafafa;
  --rt-radius-sm: 4px;
  --rt-radius-md: 8px;
  --rt-radius-lg: 16px;
  --rt-spacing-xs: 0.5rem;
  --rt-spacing-sm: 1rem;
  --rt-spacing-md: 1.5rem;
  --rt-spacing-lg: 2.5rem;
  --rt-spacing-xl: 4rem;
  --rt-max-width: 800px; /* largeur zone texte */
  --rt-font-size-base: 1rem;
  --rt-font-size-h1: clamp(2rem, 4vw, 2.75rem);
  --rt-font-size-h2: clamp(1.75rem, 3.5vw, 2.25rem);
  --rt-font-size-h3: clamp(1.35rem, 2.8vw, 1.75rem);
  --rt-font-size-small: 0.875rem;
}


/* ---------- Conteneur générique ---------- */
.rt-container {
  max-width: var(--rt-max-width);
  margin-inline: auto;
  padding-inline: var(--rt-spacing-sm);
  color: var(--rt-color-text);
}


/* ---------- Espacements utilitaires ---------- */
.rt-padding-xl { padding-block: var(--rt-spacing-xl); }
.rt-padding-lg { padding-block: var(--rt-spacing-lg); }
.rt-padding-md { padding-block: var(--rt-spacing-md); }
.rt-padding-sm { padding-block: var(--rt-spacing-sm); }
.rt-padding-xs { padding-block: var(--rt-spacing-xs); }

.rt-section + .rt-section {
  margin-top: var(--rt-spacing-xl);
}



/* ---------- Paragraphes ---------- */
.rt-section p {
  margin-block: var(--rt-spacing-sm);
  font-size: var(--rt-font-size-base);
  line-height: 1.55;
}

.rt-section p.rt-note {
  font-size: var(--rt-font-size-small);
  color: var(--rt-color-text-muted);
  margin-top: var(--rt-spacing-xs);
}


/* ---------- Divider ---------- */
.rt-divider-lg {
  width: 100%;
  margin-block: var(--rt-spacing-lg);
  border: 0;
  border-top: 2px solid var(--rt-color-border);
}


/* ---------- Sous-sections ---------- */
.rt-subsection {
  border-top: 1px solid var(--rt-color-border);
  margin-top: var(--rt-spacing-lg);
  padding-top: var(--rt-spacing-md);
}


/* ---------- Callouts (astuces / bagage) ---------- */
.rt-callout {
  margin-block: var(--rt-spacing-sm);
  padding: var(--rt-spacing-sm) var(--rt-spacing-md);
  border-left: 4px solid var(--rt-color-accent);
  background: var(--rt-color-callout-tip-bg);
  border-radius: 0 var(--rt-radius-md) var(--rt-radius-md) 0;
  font-size: var(--rt-font-size-small);
  line-height: 1.4;
}

.rt-callout strong {
  color: var(--rt-color-text);
}

.rt-callout-tip {
  background: var(--rt-color-callout-tip-bg);
  border-left-color: var(--rt-color-callout-tip-border);
}

.rt-callout-pack {
  background: var(--rt-color-callout-pack-bg);
  border-left-color: var(--rt-color-callout-pack-border);
}


/* ---------- Checklist (valise) ---------- */
.rt-checklist {
  list-style: none;
  margin: var(--rt-spacing-sm) 0 0 0;
  padding: 0;
  columns: 2;              /* auto multi-col petites listes */
  column-gap: var(--rt-spacing-md);
}

@media (max-width: 600px) {
  .rt-checklist { columns: 1; }
}

.rt-checklist li {
  position: relative;
  margin-bottom: var(--rt-spacing-xs);
  padding-left: 1.5em;
  break-inside: avoid;
}

.rt-checklist li::before {
  content: "✔";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--rt-color-accent-warm);
  font-size: 0.9em;
  line-height: 1.2;
}


/* ---------- Tableaux responsive ---------- */
.rt-table-wrap {
  position: relative;
  width: 100%;
  margin-block: var(--rt-spacing-md);
}

.rt-scroll-x {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.rt-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 480px; /* permet le scroll sur petits écrans */
  font-size: var(--rt-font-size-small);
}

.rt-table caption {
  text-align: left;
  font-weight: 600;
  margin-bottom: var(--rt-spacing-xs);
  color: var(--rt-color-text-muted);
}

.rt-table th,
.rt-table td {
  padding: 0.6em 0.8em;
  border: 1px solid var(--rt-color-border);
  text-align: left;
  vertical-align: top;
}

.rt-table thead th {
  background: var(--rt-color-table-head-bg);
  font-weight: 700;
}

.rt-table tbody tr:nth-child(even) {
  background: var(--rt-color-table-row-alt);
}

/* Accentuer colonnes température dans tableau météo */
.rt-table-meteo td:nth-child(2),
.rt-table-meteo td:nth-child(3) {
  font-weight: 600;
  white-space: nowrap;
}


/* ---------- Utility: Scroll indicator gradient (optional) ---------- */
.rt-scroll-x::after {
  content: "";
  position: sticky;
  right: 0;
  top: 0;
  bottom: 0;
  width: 1.5rem;
  pointer-events: none;
  background: linear-gradient(to right, rgba(255,255,255,0), var(--rt-color-bg) 80%);
}


/* ---------- Accessibility tweaks ---------- */
.rt-section a {
  color: var(--rt-color-accent);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

.rt-section a:hover,
.rt-section a:focus-visible {
  color: var(--rt-color-accent-warm);
  text-decoration-thickness: 2px;
}


/* ---------- Narrow layout fixes in Elementor inner sections ---------- */
.elementor-widget-container .rt-container {
  max-width: 100%;
}

/* Optional: tighten spacing when nested in Elementor columns */
.elementor-column .rt-section {
  margin-top: 0 !important;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-a861e16 *//* =========================================================
   Roadtrip Australie – Melbourne Hiver
   Styles génériques pour blocs HTML livrés (Intro + Chap.1)
   Dépose dans : Apparence > Personnaliser > CSS additionnel
   ou Elementor > Site Settings > Custom CSS
   ========================================================= */

/* ---------- Variables thème (ajuste ici) ---------- */
:root {
  --rt-color-text: #1a1a1a;
  --rt-color-text-muted: #555;
  --rt-color-bg: #ffffff;
  --rt-color-accent: #0077c8;         /* bleu océan */
  --rt-color-accent-warm: #ff6b35;    /* orange chaleureux */
  --rt-color-border: #e0e0e0;
  --rt-color-border-strong: #c8c8c8;
  --rt-color-callout-tip-bg: #eef9ff;
  --rt-color-callout-tip-border: #b5e3ff;
  --rt-color-callout-pack-bg: #fff8e6;
  --rt-color-callout-pack-border: #ffdfa6;
  --rt-color-table-head-bg: #f4f7f9;
  --rt-color-table-row-alt: #fafafa;
  --rt-radius-sm: 4px;
  --rt-radius-md: 8px;
  --rt-radius-lg: 16px;
  --rt-spacing-xs: 0.5rem;
  --rt-spacing-sm: 1rem;
  --rt-spacing-md: 1.5rem;
  --rt-spacing-lg: 2.5rem;
  --rt-spacing-xl: 4rem;
  --rt-max-width: 800px; /* largeur zone texte */
  --rt-font-size-base: 1rem;
  --rt-font-size-h1: clamp(2rem, 4vw, 2.75rem);
  --rt-font-size-h2: clamp(1.75rem, 3.5vw, 2.25rem);
  --rt-font-size-h3: clamp(1.35rem, 2.8vw, 1.75rem);
  --rt-font-size-small: 0.875rem;
}


/* ---------- Conteneur générique ---------- */
.rt-container {
  max-width: var(--rt-max-width);
  margin-inline: auto;
  padding-inline: var(--rt-spacing-sm);
  color: var(--rt-color-text);
}


/* ---------- Espacements utilitaires ---------- */
.rt-padding-xl { padding-block: var(--rt-spacing-xl); }
.rt-padding-lg { padding-block: var(--rt-spacing-lg); }
.rt-padding-md { padding-block: var(--rt-spacing-md); }
.rt-padding-sm { padding-block: var(--rt-spacing-sm); }
.rt-padding-xs { padding-block: var(--rt-spacing-xs); }

.rt-section + .rt-section {
  margin-top: var(--rt-spacing-xl);
}



/* ---------- Paragraphes ---------- */
.rt-section p {
  margin-block: var(--rt-spacing-sm);
  font-size: var(--rt-font-size-base);
  line-height: 1.55;
}

.rt-section p.rt-note {
  font-size: var(--rt-font-size-small);
  color: var(--rt-color-text-muted);
  margin-top: var(--rt-spacing-xs);
}


/* ---------- Divider ---------- */
.rt-divider-lg {
  width: 100%;
  margin-block: var(--rt-spacing-lg);
  border: 0;
  border-top: 2px solid var(--rt-color-border);
}


/* ---------- Sous-sections ---------- */
.rt-subsection {
  border-top: 1px solid var(--rt-color-border);
  margin-top: var(--rt-spacing-lg);
  padding-top: var(--rt-spacing-md);
}


/* ---------- Callouts (astuces / bagage) ---------- */
.rt-callout {
  margin-block: var(--rt-spacing-sm);
  padding: var(--rt-spacing-sm) var(--rt-spacing-md);
  border-left: 4px solid var(--rt-color-accent);
  background: var(--rt-color-callout-tip-bg);
  border-radius: 0 var(--rt-radius-md) var(--rt-radius-md) 0;
  font-size: var(--rt-font-size-small);
  line-height: 1.4;
}

.rt-callout strong {
  color: var(--rt-color-text);
}

.rt-callout-tip {
  background: var(--rt-color-callout-tip-bg);
  border-left-color: var(--rt-color-callout-tip-border);
}

.rt-callout-pack {
  background: var(--rt-color-callout-pack-bg);
  border-left-color: var(--rt-color-callout-pack-border);
}


/* ---------- Checklist (valise) ---------- */
.rt-checklist {
  list-style: none;
  margin: var(--rt-spacing-sm) 0 0 0;
  padding: 0;
  columns: 2;              /* auto multi-col petites listes */
  column-gap: var(--rt-spacing-md);
}

@media (max-width: 600px) {
  .rt-checklist { columns: 1; }
}

.rt-checklist li {
  position: relative;
  margin-bottom: var(--rt-spacing-xs);
  padding-left: 1.5em;
  break-inside: avoid;
}

.rt-checklist li::before {
  content: "✔";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--rt-color-accent-warm);
  font-size: 0.9em;
  line-height: 1.2;
}


/* ---------- Tableaux responsive ---------- */
.rt-table-wrap {
  position: relative;
  width: 100%;
  margin-block: var(--rt-spacing-md);
}

.rt-scroll-x {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.rt-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 480px; /* permet le scroll sur petits écrans */
  font-size: var(--rt-font-size-small);
}

.rt-table caption {
  text-align: left;
  font-weight: 600;
  margin-bottom: var(--rt-spacing-xs);
  color: var(--rt-color-text-muted);
}

.rt-table th,
.rt-table td {
  padding: 0.6em 0.8em;
  border: 1px solid var(--rt-color-border);
  text-align: left;
  vertical-align: top;
}

.rt-table thead th {
  background: var(--rt-color-table-head-bg);
  font-weight: 700;
}

.rt-table tbody tr:nth-child(even) {
  background: var(--rt-color-table-row-alt);
}

/* Accentuer colonnes température dans tableau météo */
.rt-table-meteo td:nth-child(2),
.rt-table-meteo td:nth-child(3) {
  font-weight: 600;
  white-space: nowrap;
}


/* ---------- Utility: Scroll indicator gradient (optional) ---------- */
.rt-scroll-x::after {
  content: "";
  position: sticky;
  right: 0;
  top: 0;
  bottom: 0;
  width: 1.5rem;
  pointer-events: none;
  background: linear-gradient(to right, rgba(255,255,255,0), var(--rt-color-bg) 80%);
}


/* ---------- Accessibility tweaks ---------- */
.rt-section a {
  color: var(--rt-color-accent);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

.rt-section a:hover,
.rt-section a:focus-visible {
  color: var(--rt-color-accent-warm);
  text-decoration-thickness: 2px;
}


/* ---------- Narrow layout fixes in Elementor inner sections ---------- */
.elementor-widget-container .rt-container {
  max-width: 100%;
}

/* Optional: tighten spacing when nested in Elementor columns */
.elementor-column .rt-section {
  margin-top: 0 !important;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-a0a98e8 *//* =========================================================
   Roadtrip Australie – Melbourne Hiver
   Styles génériques pour blocs HTML livrés (Intro + Chap.1)
   Dépose dans : Apparence > Personnaliser > CSS additionnel
   ou Elementor > Site Settings > Custom CSS
   ========================================================= */

/* ---------- Variables thème (ajuste ici) ---------- */
:root {
  --rt-color-text: #1a1a1a;
  --rt-color-text-muted: #555;
  --rt-color-bg: #ffffff;
  --rt-color-accent: #0077c8;         /* bleu océan */
  --rt-color-accent-warm: #ff6b35;    /* orange chaleureux */
  --rt-color-border: #e0e0e0;
  --rt-color-border-strong: #c8c8c8;
  --rt-color-callout-tip-bg: #eef9ff;
  --rt-color-callout-tip-border: #b5e3ff;
  --rt-color-callout-pack-bg: #fff8e6;
  --rt-color-callout-pack-border: #ffdfa6;
  --rt-color-table-head-bg: #f4f7f9;
  --rt-color-table-row-alt: #fafafa;
  --rt-radius-sm: 4px;
  --rt-radius-md: 8px;
  --rt-radius-lg: 16px;
  --rt-spacing-xs: 0.5rem;
  --rt-spacing-sm: 1rem;
  --rt-spacing-md: 1.5rem;
  --rt-spacing-lg: 2.5rem;
  --rt-spacing-xl: 4rem;
  --rt-max-width: 800px; /* largeur zone texte */
  --rt-font-size-base: 1rem;
  --rt-font-size-h1: clamp(2rem, 4vw, 2.75rem);
  --rt-font-size-h2: clamp(1.75rem, 3.5vw, 2.25rem);
  --rt-font-size-h3: clamp(1.35rem, 2.8vw, 1.75rem);
  --rt-font-size-small: 0.875rem;
}


/* ---------- Conteneur générique ---------- */
.rt-container {
  max-width: var(--rt-max-width);
  margin-inline: auto;
  padding-inline: var(--rt-spacing-sm);
  color: var(--rt-color-text);
}


/* ---------- Espacements utilitaires ---------- */
.rt-padding-xl { padding-block: var(--rt-spacing-xl); }
.rt-padding-lg { padding-block: var(--rt-spacing-lg); }
.rt-padding-md { padding-block: var(--rt-spacing-md); }
.rt-padding-sm { padding-block: var(--rt-spacing-sm); }
.rt-padding-xs { padding-block: var(--rt-spacing-xs); }

.rt-section + .rt-section {
  margin-top: var(--rt-spacing-xl);
}



/* ---------- Paragraphes ---------- */
.rt-section p {
  margin-block: var(--rt-spacing-sm);
  font-size: var(--rt-font-size-base);
  line-height: 1.55;
}

.rt-section p.rt-note {
  font-size: var(--rt-font-size-small);
  color: var(--rt-color-text-muted);
  margin-top: var(--rt-spacing-xs);
}


/* ---------- Divider ---------- */
.rt-divider-lg {
  width: 100%;
  margin-block: var(--rt-spacing-lg);
  border: 0;
  border-top: 2px solid var(--rt-color-border);
}


/* ---------- Sous-sections ---------- */
.rt-subsection {
  border-top: 1px solid var(--rt-color-border);
  margin-top: var(--rt-spacing-lg);
  padding-top: var(--rt-spacing-md);
}


/* ---------- Callouts (astuces / bagage) ---------- */
.rt-callout {
  margin-block: var(--rt-spacing-sm);
  padding: var(--rt-spacing-sm) var(--rt-spacing-md);
  border-left: 4px solid var(--rt-color-accent);
  background: var(--rt-color-callout-tip-bg);
  border-radius: 0 var(--rt-radius-md) var(--rt-radius-md) 0;
  font-size: var(--rt-font-size-small);
  line-height: 1.4;
}

.rt-callout strong {
  color: var(--rt-color-text);
}

.rt-callout-tip {
  background: var(--rt-color-callout-tip-bg);
  border-left-color: var(--rt-color-callout-tip-border);
}

.rt-callout-pack {
  background: var(--rt-color-callout-pack-bg);
  border-left-color: var(--rt-color-callout-pack-border);
}


/* ---------- Checklist (valise) ---------- */
.rt-checklist {
  list-style: none;
  margin: var(--rt-spacing-sm) 0 0 0;
  padding: 0;
  columns: 2;              /* auto multi-col petites listes */
  column-gap: var(--rt-spacing-md);
}

@media (max-width: 600px) {
  .rt-checklist { columns: 1; }
}

.rt-checklist li {
  position: relative;
  margin-bottom: var(--rt-spacing-xs);
  padding-left: 1.5em;
  break-inside: avoid;
}

.rt-checklist li::before {
  content: "✔";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--rt-color-accent-warm);
  font-size: 0.9em;
  line-height: 1.2;
}


/* ---------- Tableaux responsive ---------- */
.rt-table-wrap {
  position: relative;
  width: 100%;
  margin-block: var(--rt-spacing-md);
}

.rt-scroll-x {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.rt-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 480px; /* permet le scroll sur petits écrans */
  font-size: var(--rt-font-size-small);
}

.rt-table caption {
  text-align: left;
  font-weight: 600;
  margin-bottom: var(--rt-spacing-xs);
  color: var(--rt-color-text-muted);
}

.rt-table th,
.rt-table td {
  padding: 0.6em 0.8em;
  border: 1px solid var(--rt-color-border);
  text-align: left;
  vertical-align: top;
}

.rt-table thead th {
  background: var(--rt-color-table-head-bg);
  font-weight: 700;
}

.rt-table tbody tr:nth-child(even) {
  background: var(--rt-color-table-row-alt);
}

/* Accentuer colonnes température dans tableau météo */
.rt-table-meteo td:nth-child(2),
.rt-table-meteo td:nth-child(3) {
  font-weight: 600;
  white-space: nowrap;
}


/* ---------- Utility: Scroll indicator gradient (optional) ---------- */
.rt-scroll-x::after {
  content: "";
  position: sticky;
  right: 0;
  top: 0;
  bottom: 0;
  width: 1.5rem;
  pointer-events: none;
  background: linear-gradient(to right, rgba(255,255,255,0), var(--rt-color-bg) 80%);
}


/* ---------- Accessibility tweaks ---------- */
.rt-section a {
  color: var(--rt-color-accent);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

.rt-section a:hover,
.rt-section a:focus-visible {
  color: var(--rt-color-accent-warm);
  text-decoration-thickness: 2px;
}


/* ---------- Narrow layout fixes in Elementor inner sections ---------- */
.elementor-widget-container .rt-container {
  max-width: 100%;
}

/* Optional: tighten spacing when nested in Elementor columns */
.elementor-column .rt-section {
  margin-top: 0 !important;
}/* End custom CSS */