*{margin:0;padding:0;box-sizing:border-box}
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;line-height:1.7;color:#111;background:#fff}
.Section_block__PdQkt{max-width:900px;margin:0 auto;padding:0 28px}
.Header_body__PosKR{background:#111;color:#fff;padding:64px 0;margin-bottom:48px}
.Header_body__PosKR h1{font-size:42px;font-weight:800;letter-spacing:-1px;margin-bottom:8px}
.Header_body__PosKR p{font-size:18px;opacity:.7}
.Header_body__PosKR a{color:#fff;text-decoration:none;font-size:22px;font-weight:800}
.Sidebar_head__jViF2{padding:0}
.Header_section__sfTCj{padding:32px 0;border-left:4px solid #111;padding-left:24px;margin-bottom:28px}
.Header_section__sfTCj h2{font-size:24px;font-weight:700;margin-bottom:6px}
.Header_section__sfTCj h2 a{color:#111;text-decoration:none}
.Header_section__sfTCj h2 a:hover{text-decoration:underline}
.Header_section__sfTCj .Wrapper_body__fDRAa{font-size:12px;font-weight:600;text-transform:uppercase;color:#888;letter-spacing:1px;margin-bottom:8px}
.Header_section__sfTCj p{font-size:15px;color:#444;margin-bottom:10px}
.Page_content__tHlzd{display:inline-block;background:#111;color:#fff;padding:8px 20px;font-size:13px;font-weight:700;text-decoration:none;text-transform:uppercase;letter-spacing:1px}
.Page_content__tHlzd:hover{background:#333}
.Section_content__JFtmt{padding-bottom:60px}
.Section_content__JFtmt h1{font-size:38px;font-weight:800;letter-spacing:-1px;margin-bottom:10px}
.Section_content__JFtmt time{font-size:12px;font-weight:600;text-transform:uppercase;color:#888;letter-spacing:1px;display:block;margin-bottom:28px}
.Section_content__JFtmt h2{font-size:26px;font-weight:700;margin:40px 0 14px}
.Section_content__JFtmt h3{font-size:20px;font-weight:700;margin:32px 0 10px}
.Section_content__JFtmt p{margin-bottom:18px;font-size:17px}
.Section_content__JFtmt ul,.Section_content__JFtmt ol{margin:0 0 18px 24px}
.Section_content__JFtmt a{color:#111;font-weight:600;text-decoration:underline}
.Section_content__JFtmt img{max-width:100%;height:auto;margin:20px 0}
.Layout_head__i4mr4{background:#111;color:#888;padding:28px 0;margin-top:48px;text-align:center;font-size:12px}
.Layout_head__i4mr4 a{color:#888;text-decoration:none}
.Content_wrapper__ZAj8f{background:#222;color:#aaa;padding:14px 20px;margin-bottom:24px;font-size:13px;font-style:italic}
.Wrapper_wrapper__jXKCt{background:#1a1a1a;color:#888;padding:14px 20px;margin-top:32px;font-size:12px;border-top:3px solid #444}
.Section_content__jIeDx{font-size:12px;font-weight:600;text-transform:uppercase;color:#666;letter-spacing:1px;margin:-20px 0 28px;padding-left:12px;border-left:2px solid #ccc}
.Header_inner__iJDBK{margin:0 0 24px}
.Header_area__UDP6j{width:100%;height:auto;border-radius:0}
.Page_body__c4BXU{margin:20px 0}
.Sidebar_text__mwLtK{width:100%;height:auto;border-radius:0}
.Module_body__VdpyR{border-left:4px solid #111;padding-left:24px;margin-top:48px}
.Module_body__VdpyR h3{font-size:18px;font-weight:700;text-transform:uppercase;letter-spacing:1px;margin-bottom:12px}
.Module_body__VdpyR ul{list-style:none;padding:0}
.Module_body__VdpyR li{padding:6px 0}
.Module_body__VdpyR a{color:#111;text-decoration:underline;font-weight:600}
/* === Theme === */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Lexend:wght@400;700&display=swap');
body{font-family:'Inter',sans-serif;color:#0F172A;background:#F8FAFC}
.Header_body__PosKR{background:#1E293B;color:#fff}
.Header_body__PosKR h1{font-family:'Lexend',serif;color:#fff}
.Header_body__PosKR p{color:rgba(255,255,255,.75)}
.Header_body__PosKR a{color:#fff;text-decoration:none}
.card h2{font-family:'Lexend',serif}
.card h2 a{color:#1E293B}
.card h2 a:hover{color:#F59E0B}
.read-more{color:#F59E0B}
.article-content h1{font-family:'Lexend',serif}
.article-content h2{font-family:'Lexend',serif}
.article-content a{color:#F59E0B}
.article-content img{border-radius:8px}
.affiliate-disclosure{border-radius:8px}
.ymyl-disclaimer{border-radius:8px}
/* === Custom === */
/* lg-langue-fr — custom.css
   Template : bold
   Palette  : slate-navy #1F3548 + amber-ochre #C07B22 on warm cream #F6F3EE
   Fonts    : Oswald (headings) + PT Serif (body)
   Persona  : Antoine Lefort — self-taught English, logistics coordinator, no-nonsense
   Distinct from an-anglais-fr (vert-botanique/Fraunces) and ar-argent-fr (terracotta/Lora)
*/

@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@400;500;600;700&family=PT+Serif:ital,wght@0,400;0,700;1,400&display=swap');

/* ─── Design tokens ──────────────────────────────────────────────────────── */
:root {
  --color-bg:            #F6F3EE;
  --color-bg-alt:        #EDE9E2;
  --color-text:          #201E1A;
  --color-text-muted:    #6B6058;
  --color-heading:       #1A1714;
  --color-primary:       #1F3548;
  --color-primary-hover: #162637;
  --color-accent:        #C07B22;
  --color-accent-hover:  #A0661A;
  --color-border:        #D6D0C6;
  --color-card-bg:       #FFFFFF;
  --color-hero-bg:       #1F3548;
  --color-hero-text:     #FFFFFF;
  --color-footer-bg:     #141E28;
  --color-footer-text:   #C8CDD4;

  --font-heading:        'Oswald', system-ui, sans-serif;
  --font-body:           'PT Serif', Georgia, serif;

  --font-size-base:      17px;
  --font-size-lg:        19px;
  --font-size-sm:        15px;
  --font-size-h1:        2.6rem;
  --font-size-h2:        1.9rem;
  --font-size-h3:        1.4rem;

  --line-height-base:    1.74;
  --line-height-heading: 1.15;

  --paragraph-max-width: 68ch;
  --border-radius:       4px;
  --border-radius-lg:    6px;
  --spacing:             8px;
  --container-max-width: 960px;
}

/* ─── Reset ──────────────────────────────────────────────────────────────── */
*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

/* ─── Base ───────────────────────────────────────────────────────────────── */
html {
  font-size: var(--font-size-base);
  scroll-behavior: smooth;
}

body {
  background-color: var(--color-bg);
  color: var(--color-text);
  font-family: var(--font-body);
  font-size: var(--font-size-base);
  line-height: var(--line-height-base);
  -webkit-font-smoothing: antialiased;
}

/* ─── Layout container ───────────────────────────────────────────────────── */
:root .container,
:root .entry-content,
:root .post-content,
:root .article-body,
:root .article-content {
  max-width: var(--container-max-width);
  margin-inline: auto;
  padding-inline: calc(var(--spacing) * 2.5);
}

/* ─── Headings ───────────────────────────────────────────────────────────── */
:root h1,
:root h2,
:root h3,
:root h4,
:root h5,
:root h6 {
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: var(--line-height-heading);
  color: var(--color-heading);
  letter-spacing: 0.01em;
  text-transform: uppercase;
}

:root h1 {
  font-size: var(--font-size-h1);
  font-weight: 700;
  letter-spacing: 0.02em;
  margin-bottom: calc(var(--spacing) * 2.5);
}

:root h2 {
  font-size: var(--font-size-h2);
  margin-top: calc(var(--spacing) * 5);
  margin-bottom: calc(var(--spacing) * 1.5);
  padding-bottom: calc(var(--spacing) * 0.75);
  border-bottom: 3px solid var(--color-accent);
}

:root h3 {
  font-size: var(--font-size-h3);
  font-weight: 600;
  color: var(--color-primary);
  margin-top: calc(var(--spacing) * 3.5);
  margin-bottom: var(--spacing);
}

:root h4 {
  font-size: 1.1rem;
  font-weight: 500;
  color: var(--color-accent-hover);
  margin-top: calc(var(--spacing) * 2.5);
  margin-bottom: calc(var(--spacing) * 0.75);
}

/* ─── Body text ──────────────────────────────────────────────────────────── */
:root p {
  max-width: var(--paragraph-max-width);
  margin-bottom: calc(var(--spacing) * 2);
  line-height: var(--line-height-base);
}

/* ─── Links ──────────────────────────────────────────────────────────────── */
:root a {
  color: var(--color-accent);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
  transition: color 0.15s ease;
}

:root a:hover {
  color: var(--color-accent-hover);
  text-decoration-thickness: 2px;
}

/* ─── Lists ──────────────────────────────────────────────────────────────── */
:root ul,
:root ol {
  max-width: var(--paragraph-max-width);
  padding-left: calc(var(--spacing) * 3);
  margin-bottom: calc(var(--spacing) * 2);
}

:root li {
  margin-bottom: calc(var(--spacing) * 0.75);
  line-height: var(--line-height-base);
}

:root ul li::marker {
  color: var(--color-accent);
  font-size: 1.1em;
}

:root ol li::marker {
  color: var(--color-primary);
  font-family: var(--font-heading);
  font-weight: 600;
}

/* ─── Blockquote ─────────────────────────────────────────────────────────── */
:root blockquote {
  max-width: var(--paragraph-max-width);
  margin-block: calc(var(--spacing) * 3.5);
  padding: calc(var(--spacing) * 2) calc(var(--spacing) * 3);
  border-left: 5px solid var(--color-accent);
  background-color: var(--color-bg-alt);
  border-radius: 0 var(--border-radius) var(--border-radius) 0;
  font-style: italic;
}

:root blockquote p {
  margin-bottom: 0;
  color: var(--color-text-muted);
  font-size: var(--font-size-lg);
}

:root blockquote cite {
  display: block;
  margin-top: var(--spacing);
  font-style: normal;
  font-family: var(--font-heading);
  font-size: 0.9rem;
  font-weight: 500;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: var(--color-accent-hover);
}

/* ─── Inline text ────────────────────────────────────────────────────────── */
:root strong,
:root b {
  font-weight: 700;
  color: var(--color-heading);
}

:root em,
:root i {
  font-style: italic;
}

/* ─── Code ───────────────────────────────────────────────────────────────── */
:root code {
  font-size: 0.88em;
  background-color: var(--color-bg-alt);
  border: 1px solid var(--color-border);
  border-radius: var(--border-radius);
  padding: 0.1em 0.4em;
}

:root pre {
  background-color: var(--color-primary);
  color: var(--color-hero-text);
  border-radius: var(--border-radius-lg);
  padding: calc(var(--spacing) * 2.5);
  overflow-x: auto;
  margin-bottom: calc(var(--spacing) * 2);
}

:root pre code {
  background: none;
  border: none;
  padding: 0;
  color: inherit;
}

/* ─── Media ──────────────────────────────────────────────────────────────── */
:root img {
  max-width: 100%;
  height: auto;
  border-radius: var(--border-radius);
}

:root figure {
  margin-block: calc(var(--spacing) * 3);
}

:root figcaption {
  font-family: var(--font-heading);
  font-size: var(--font-size-sm);
  font-weight: 400;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: var(--color-text-muted);
  margin-top: var(--spacing);
}

/* ─── Divider ────────────────────────────────────────────────────────────── */
:root hr {
  border: none;
  border-top: 2px solid var(--color-border);
  margin-block: calc(var(--spacing) * 5);
}

/* ─── Bold template — hero block ─────────────────────────────────────────── */
:root .Header_body__PosKR {
  background-color: var(--color-hero-bg);
  color: var(--color-hero-text);
  padding-block: calc(var(--spacing) * 8);
}

:root .Header_body__PosKR h1 {
  color: var(--color-hero-text);
  font-size: clamp(1.8rem, 4vw, var(--font-size-h1));
  margin-bottom: calc(var(--spacing) * 1.5);
}

:root .Header_body__PosKR p {
  color: rgba(255, 255, 255, 0.78);
  font-size: var(--font-size-lg);
  max-width: 60ch;
}

:root .Header_body__PosKR a {
  color: var(--color-accent);
  text-decoration: none;
  font-family: var(--font-heading);
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

:root .Header_body__PosKR a:hover {
  color: #D9A050;
}

/* ─── Bold template — cards ──────────────────────────────────────────────── */
:root .bld-card,
:root .card {
  background-color: var(--color-card-bg);
  border: 1px solid var(--color-border);
  border-radius: var(--border-radius-lg);
  padding: calc(var(--spacing) * 2.5);
}

:root .bld-card h2,
:root .card h2 {
  font-size: 1.25rem;
  margin-top: 0;
  border-bottom: none;
  padding-bottom: 0;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

:root .bld-card h2 a,
:root .card h2 a {
  color: var(--color-primary);
  text-decoration: none;
}

:root .bld-card h2 a:hover,
:root .card h2 a:hover {
  color: var(--color-accent);
}

:root .read-more {
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 0.9rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--color-accent);
  text-decoration: none;
}

:root .read-more:hover {
  color: var(--color-accent-hover);
}

/* ─── Site header ────────────────────────────────────────────────────────── */
:root .site-header {
  background-color: var(--color-primary);
  border-bottom: 4px solid var(--color-accent);
  padding-block: calc(var(--spacing) * 1.5);
}

:root .site-title,
:root .site-header .site-title a {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: 1.5rem;
  color: var(--color-hero-text);
  text-decoration: none;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

:root .site-header .site-title a:hover {
  color: var(--color-accent);
}

/* ─── Site navigation ────────────────────────────────────────────────────── */
:root .site-nav a {
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: 0.9rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.82);
  text-decoration: none;
  padding: calc(var(--spacing) * 0.5) var(--spacing);
  transition: color 0.15s ease;
}

:root .site-nav a:hover {
  color: var(--color-accent);
}

/* ─── Alternate section background ──────────────────────────────────────── */
:root .section-alt {
  background-color: var(--color-bg-alt);
  padding-block: calc(var(--spacing) * 5);
}

/* ─── Site footer ────────────────────────────────────────────────────────── */
:root .site-footer {
  background-color: var(--color-footer-bg);
  color: var(--color-footer-text);
  font-family: var(--font-heading);
  font-size: 0.9rem;
  letter-spacing: 0.02em;
  padding-block: calc(var(--spacing) * 5);
  margin-top: calc(var(--spacing) * 8);
}

:root .site-footer a {
  color: var(--color-accent);
  text-decoration: none;
}

:root .site-footer a:hover {
  color: #D9A050;
}

/* ─── Responsive ─────────────────────────────────────────────────────────── */
@media (max-width: 680px) {
  :root {
    --font-size-base: 16px;
    --font-size-h1:   2rem;
    --font-size-h2:   1.55rem;
    --font-size-h3:   1.25rem;
  }

  :root blockquote {
    padding-inline: calc(var(--spacing) * 1.5);
  }

  :root .Header_body__PosKR {
    padding-block: calc(var(--spacing) * 5);
  }
}
