
  :root {
    --ivory:      #FAF8F5;
    --cream:      #F5F0E8;
    --blush:      #E8D8D0;
    --rose:       #C9A89A;
    --mauve:      #B59CA8;
    --sage:       #9FB5A8;
    --dusty-blue: #8FA8BC;
    --gold:       #C4A882;
    --gold-light: #D9C4A8;
    --charcoal:   #2C2C2C;
    --mid:        #5C5450;
    --soft:       #8C8580;
    --border:     rgba(196,168,130,0.25);
    --shadow:     rgba(44,44,44,0.08);
  }

  * { margin:0; padding:0; box-sizing:border-box; }

  html { scroll-behavior:smooth; }

  body {
    font-family: 'Jost', sans-serif;
    background: var(--ivory);
    color: var(--charcoal);
    overflow-x: hidden;
  }

  /* ─── SCROLLBAR ─── */
  ::-webkit-scrollbar { width:4px; }
  ::-webkit-scrollbar-track { background: var(--ivory); }
  ::-webkit-scrollbar-thumb { background: var(--gold); border-radius:2px; }

  /* ─── NAV ─── */
  nav {
    position: fixed; top:0; left:0; right:0; z-index:100;
    display: flex; align-items:center; justify-content:space-between;
    padding: 0 48px;
    height: 80px;
    background: rgba(250,248,245,0.92);
    backdrop-filter: blur(12px);
    border-bottom: 1px solid var(--border);
    transition: box-shadow .3s;
  }
  nav.scrolled { box-shadow: 0 4px 32px var(--shadow); }

  .logo {
    display:flex; align-items:center; gap:14px;
    text-decoration:none;
  }
  .logo-mark {
    width:54px; height:54px;
    display:flex; align-items:center; justify-content:center;
    position:relative;
  }
  .logo-mark img {
    width:100%; height:100%; object-fit:contain;
  }
  .logo-text {
    display:flex; flex-direction:column; line-height:1;
  }
  .logo-name {
    font-family: 'Cormorant Garamond', serif;
    font-size:20px; font-weight:500; letter-spacing:2px;
    color: var(--charcoal);
  }
  .logo-sub {
    font-size:8px; font-weight:300; letter-spacing:4px;
    color: var(--soft); text-transform:uppercase; margin-top:3px;
  }

  .nav-links {
    display:flex; align-items:center; gap:40px;
    list-style:none;
  }
  .nav-links a {
    font-size:11px; font-weight:400; letter-spacing:3px;
    text-transform:uppercase; text-decoration:none;
    color: var(--mid); position:relative;
    transition: color .3s;
  }
  .nav-links a::after {
    content:''; position:absolute; bottom:-4px; left:0; right:0;
    height:1px; background:var(--gold);
    transform:scaleX(0); transition:transform .3s;
  }
  .nav-links a:hover { color:var(--charcoal); }
  .nav-links a:hover::after { transform:scaleX(1); }

  /* ─── HERO ─── */
  #home {
    height: 100vh; min-height:700px;
    display:flex; align-items:stretch;
    position:relative; overflow:hidden;
  }
  .hero-image-half {
    width:58%; position:relative; overflow:hidden;
  }
  .hero-image-half img {
    width:100%; height:100%; object-fit:cover;
    filter: saturate(0.85) brightness(0.96);
    transition: transform 8s ease;
  }
  #home:hover .hero-image-half img { transform:scale(1.03); }

  .hero-overlay {
    position:absolute; inset:0;
    background: linear-gradient(to right, transparent 60%, var(--ivory) 100%),
                linear-gradient(to bottom, transparent 70%, rgba(250,248,245,0.3) 100%);
  }

  .hero-content {
    width:42%; display:flex; flex-direction:column;
    justify-content:center; padding: 80px 60px 80px 48px;
    position:relative;
  }

  .hero-eyebrow {
    font-size:9px; letter-spacing:5px; text-transform:uppercase;
    color: var(--gold); margin-bottom:24px;
    display:flex; align-items:center; gap:12px;
    position:relative;
  }
  .hero-eyebrow::before {
    content:''; display:inline-block;
    width:32px; height:1px; background:var(--gold);
  }

  .hero-title {
    font-family: 'Cormorant Garamond', serif;
    font-size:clamp(38px,4vw,58px);
    font-weight:300; line-height:1.1;
    letter-spacing:1px; color:var(--charcoal);
    margin-bottom:8px;
  }
  .hero-title em {
    font-style:italic; color:var(--rose);
  }

  .hero-subtitle {
    font-family: 'Cormorant Garamond', serif;
    font-size:clamp(20px,2vw,28px); font-weight:300;
    font-style:italic; color:var(--soft);
    letter-spacing:2px; margin-bottom:32px;
  }

  .hero-divider {
    width:48px; height:1px; background:var(--gold);
    margin-bottom:32px;
  }

  .hero-desc {
    font-size:13px; font-weight:300; line-height:1.9;
    color:var(--mid); max-width:360px; margin-bottom:48px;
    letter-spacing:0.3px;
  }

  .hero-cta {
    display:inline-flex; align-items:center; gap:12px;
    font-size:10px; letter-spacing:4px; text-transform:uppercase;
    color:var(--charcoal); text-decoration:none;
    padding:14px 32px;
    border: 1px solid var(--gold);
    position:relative; overflow:hidden;
    transition: color .4s;
  }
  .hero-cta::before {
    content:''; position:absolute; inset:0;
    background:var(--gold); transform:translateX(-100%);
    transition:transform .4s cubic-bezier(.4,0,.2,1);
  }
  .hero-cta:hover { color:var(--ivory); }
  .hero-cta:hover::before { transform:translateX(0); }
  .hero-cta span { position:relative; z-index:1; }
  .hero-cta svg { position:relative; z-index:1; }

  .hero-badge {
    position:absolute; bottom:48px; right:0;
    width:120px; height:120px;
    border:1px solid var(--border);
    border-radius:50%;
    display:flex; flex-direction:column; align-items:center;
    justify-content:center; text-align:center;
    background: var(--ivory);
  }
  .hero-badge-num {
    font-family:'Cormorant Garamond',serif;
    font-size:36px; font-weight:300; color:var(--gold);
    line-height:1;
  }
  .hero-badge-text {
    font-size:7px; letter-spacing:2px; text-transform:uppercase;
    color:var(--soft); margin-top:4px;
  }

  /* ─── BADGE ACCRÉDITATION UEMS-EACCME ─── */
  .uems-badge {
    position:absolute; z-index:20; cursor:pointer;
  }
  .uems-badge img {
    width:100%; height:100%; object-fit:contain; display:block;
    filter: drop-shadow(0 3px 10px var(--shadow));
    transition: transform .35s;
  }
  .uems-badge:hover img { transform:scale(1.05); }

  /* grand format — page de garde, ancré sur l'eyebrow "www.amazf.org" */
  .uems-badge--hero {
    top:0; right:0;
    width:110px; height:110px;
    cursor:default;
  }
  /* format section — aligné avec l'eyebrow (haut) et la grille de contenu (droite) */
  .uems-badge--section {
    top:0; right:48px;
    width:108px; height:108px;
  }

  /* ─── ENCADRÉ "PREMIÈRE ACADÉMIE ACCRÉDITÉE" (page de garde) ─── */
  .uems-credential {
    position:absolute; top:calc(100% + 14px); right:0;
    width:190px;
    padding:16px 16px 14px;
    border-top:1px solid var(--border);
    border-bottom:1px solid var(--border);
    border-right:2px solid var(--gold);
    text-align:right;
  }
  .uems-credential-label {
    font-size:9px; letter-spacing:0.6px; line-height:1.7;
    color:var(--mid); font-weight:300; text-transform:uppercase;
    margin-bottom:12px;
  }
  .uems-credential-label .reg { font-size:0.7em; }
  .uems-credential-points {
    display:flex; align-items:baseline; justify-content:flex-end; gap:7px;
  }
  .uems-credential-num {
    font-family:'Cormorant Garamond',serif; font-size:32px; font-weight:400;
    color:var(--gold); line-height:1;
  }
  .uems-credential-unit {
    font-size:9px; letter-spacing:1px; text-transform:uppercase;
    color:var(--soft); font-weight:300; line-height:1.4;
  }
  @media(max-width:900px) {
    .uems-credential { width:150px; padding:12px 12px 10px; top:calc(100% + 10px); }
    .uems-credential-label { font-size:8px; line-height:1.55; margin-bottom:8px; }
    .uems-credential-num { font-size:24px; }
    .uems-credential-unit { font-size:8px; }
  }
  @media(max-width:480px) {
    .uems-credential { width:128px; padding:10px 10px 8px; }
    .uems-credential-label { font-size:7px; line-height:1.5; margin-bottom:6px; letter-spacing:0.3px; }
    .uems-credential-num { font-size:20px; }
    .uems-credential-unit { font-size:7px; }
  }

  .uems-badge-pop {
    position:absolute; top:calc(100% + 12px); right:0;
    width:222px; background:var(--ivory);
    border:1px solid var(--border); box-shadow:0 14px 40px var(--shadow);
    padding:16px 18px; text-align:left;
    opacity:0; visibility:hidden; transform:translateY(-6px);
    transition:opacity .25s, transform .25s, visibility .25s;
    pointer-events:none;
  }
  .uems-badge:hover .uems-badge-pop,
  .uems-badge.open .uems-badge-pop {
    opacity:1; visibility:visible; transform:translateY(0); pointer-events:auto;
  }
  .uems-badge-pop-title {
    font-family:'Cormorant Garamond',serif; font-weight:500;
    font-size:14px; color:var(--charcoal); line-height:1.35; margin-bottom:6px;
  }
  .uems-badge-pop-sub {
    font-size:10px; letter-spacing:0.4px; color:var(--mid);
    line-height:1.7; font-weight:300; text-transform:uppercase;
  }
  .uems-badge-pop-sub .reg { font-size:0.65em; vertical-align:super; }

  /* ─── SECTIONS GENERAL ─── */
  section { padding: 100px 0; }

  .container {
    max-width:1200px; margin:0 auto;
    padding:0 48px;
    position:relative;
  }

  .section-eyebrow {
    font-size:9px; letter-spacing:5px; text-transform:uppercase;
    color:var(--gold); margin-bottom:16px;
    display:flex; align-items:center; gap:12px;
  }
  .section-eyebrow::before {
    content:''; display:inline-block;
    width:24px; height:1px; background:var(--gold);
  }

  .section-title {
    font-family:'Cormorant Garamond',serif;
    font-size:clamp(32px,3vw,48px); font-weight:300;
    line-height:1.15; letter-spacing:1px;
    color:var(--charcoal); margin-bottom:20px;
  }
  .section-title em { font-style:italic; color:var(--rose); }

  .section-lead {
    font-size:14px; font-weight:300; line-height:1.85;
    color:var(--mid); max-width:600px;
  }

  /* ─── FORMATION ─── */
  #formation { background:var(--cream); }

  .formation-grid {
    display:grid; grid-template-columns:1fr 1fr;
    gap:48px; margin-top:64px;
  }

  .day-schedule {
    font-size:10px; letter-spacing:1px; color:var(--gold);
    text-transform:uppercase; margin-bottom:12px;
    font-weight:400;
  }

  .day-card {
    background:var(--ivory);
    border:1px solid var(--border);
    padding:40px 36px;
    position:relative; overflow:hidden;
    transition: transform .3s, box-shadow .3s;
    scroll-margin-top: 110px;
  }
  .day-card:hover {
    transform:translateY(-4px);
    box-shadow:0 16px 48px var(--shadow);
  }
  .day-card::before {
    content:''; position:absolute;
    top:0; left:0; width:3px; height:100%;
    background:var(--gold);
  }

  .day-num {
    font-family:'Cormorant Garamond',serif;
    font-size:64px; font-weight:300;
    color:rgba(196,168,130,0.15);
    position:absolute; top:16px; right:24px;
    line-height:1;
  }

  .day-label {
    font-size:9px; letter-spacing:4px; text-transform:uppercase;
    color:var(--gold); margin-bottom:12px;
  }
  .day-title {
    font-family:'Cormorant Garamond',serif;
    font-size:22px; font-weight:400; color:var(--charcoal);
    margin-bottom:20px; line-height:1.3;
  }
  .day-modules {
    list-style:none;
  }
  .day-modules li {
    font-size:12px; font-weight:300; color:var(--mid);
    padding:6px 0; border-bottom:1px solid var(--border);
    letter-spacing:0.3px; line-height:1.6;
    display:flex; gap:10px; align-items:flex-start;
  }
  .day-modules li::before {
    content:'◆'; font-size:5px; color:var(--gold);
    margin-top:6px; flex-shrink:0;
  }

  .certificate-banner {
    margin-top:48px;
    background:linear-gradient(135deg, var(--charcoal) 0%, #3a3530 100%);
    padding:48px 56px;
    display:flex; align-items:center; justify-content:space-between;
    gap:32px;
  }
  .cert-text h3 {
    font-family:'Cormorant Garamond',serif;
    font-size:28px; font-weight:300; color:var(--gold-light);
    margin-bottom:8px;
  }
  .cert-text p {
    font-size:12px; font-weight:300; color:rgba(255,255,255,0.6);
    letter-spacing:0.3px; line-height:1.7; max-width:480px;
  }
  .cert-badge {
    width:100px; height:100px; border:1px solid rgba(196,168,130,0.4);
    border-radius:50%; flex-shrink:0;
    display:flex; flex-direction:column; align-items:center;
    justify-content:center; text-align:center;
  }
  .cert-badge span:first-child {
    font-family:'Cormorant Garamond',serif;
    font-size:11px; color:var(--gold); letter-spacing:1px; font-style:italic;
  }
  .cert-badge span:last-child {
    font-size:7px; letter-spacing:2px; text-transform:uppercase;
    color:rgba(255,255,255,0.4); margin-top:4px;
  }

  .accreditations {
    margin-top:64px;
  }
  .acc-title {
    font-size:10px; letter-spacing:4px; text-transform:uppercase;
    color:var(--soft); margin-bottom:24px; text-align:center;
  }
  .acc-grid {
    display:flex; gap:24px; flex-wrap:wrap; justify-content:center;
  }
  .acc-item {
    background:var(--ivory); border:1px solid var(--border);
    padding:20px 32px;
    font-size:11px; letter-spacing:2px; text-transform:uppercase;
    color:var(--mid); font-weight:300;
  }

  .sponsors { margin-top:64px; }
  .sponsor-grid {
    display:flex; gap:32px; flex-wrap:wrap; align-items:center;
    justify-content:center; margin-top:24px;
  }
  .sponsor-item {
    width:120px; height:48px; border:1px solid var(--border);
    background:var(--ivory);
    display:flex; align-items:center; justify-content:center;
    font-size:11px; letter-spacing:1px; color:var(--soft); font-weight:300;
  }

  .dates-section { margin-top:64px; }
  .dates-grid {
    display:grid; grid-template-columns:repeat(3,1fr); gap:20px;
    margin-top:24px;
  }
  .date-card {
    border:1px solid var(--border); padding:24px 28px;
    text-align:center; background:var(--ivory);
    transition:border-color .3s;
    cursor:default;
  }
  .date-card:hover { border-color:var(--gold); }
  .date-month {
    font-size:8px; letter-spacing:4px; text-transform:uppercase;
    color:var(--gold); margin-bottom:8px;
  }
  .date-day {
    font-family:'Cormorant Garamond',serif;
    font-size:42px; font-weight:300; color:var(--charcoal);
    line-height:1;
  }
  .date-year {
    font-size:10px; color:var(--soft); font-weight:300;
    letter-spacing:2px; margin-top:4px;
  }
  .date-desc {
    font-size:10px; color:var(--mid); font-weight:300;
    margin-top:12px; letter-spacing:0.3px;
    border-top:1px solid var(--border); padding-top:12px;
    line-height:1.6;
  }

  /* ─── NEWS ─── */
  #news { background:var(--ivory); }

  .news-grid {
    display:grid; grid-template-columns:1fr 1fr 1fr;
    gap:32px; margin-top:64px;
  }
  .news-card {
    border:1px solid var(--border);
    overflow:hidden; background:var(--cream);
    transition:transform .3s, box-shadow .3s;
  }
  .news-card:hover {
    transform:translateY(-4px);
    box-shadow:0 12px 40px var(--shadow);
  }
  .news-img {
    height:200px; overflow:hidden;
    background:linear-gradient(135deg, var(--blush), var(--mauve));
    display:flex; align-items:center; justify-content:center;
    position:relative;
  }
  .news-img img {
    position:absolute; top:0; left:0;
    width:100%; height:100%;
    object-fit:cover;
  }
  .news-img-placeholder {
    font-family:'Cormorant Garamond',serif;
    font-size:14px; font-style:italic; color:rgba(255,255,255,0.7);
    letter-spacing:2px; text-align:center; padding:20px;
  }
  .news-tag {
    position:absolute; top:16px; left:16px;
    background:rgba(250,248,245,0.9);
    font-size:8px; letter-spacing:3px; text-transform:uppercase;
    color:var(--gold); padding:5px 10px;
  }
  .news-body { padding:28px 28px 32px; }
  .news-date {
    font-size:9px; letter-spacing:3px; text-transform:uppercase;
    color:var(--soft); margin-bottom:10px;
  }
  .news-title {
    font-family:'Cormorant Garamond',serif;
    font-size:18px; font-weight:400; color:var(--charcoal);
    line-height:1.4; margin-bottom:12px;
  }
  .news-excerpt {
    font-size:12px; font-weight:300; color:var(--mid);
    line-height:1.8;
  }
  .news-link {
    display:inline-flex; align-items:center; gap:8px;
    font-size:9px; letter-spacing:3px; text-transform:uppercase;
    color:var(--gold); text-decoration:none; margin-top:20px;
    transition:gap .3s;
  }
  .news-link:hover { gap:12px; }

  .news-cta {
    text-align:center; margin-top:48px;
    font-size:9px; letter-spacing:4px; text-transform:uppercase;
    color:var(--soft);
  }

  /* ─── FORMATEURS ─── */
  #formateurs { background:var(--cream); }

  .trainers-intro {
    display:grid; grid-template-columns:1fr 1fr;
    gap:80px; margin-top:64px; align-items:start;
  }

  .trainer-card {
    position:relative;
  }
  .trainer-photo-wrap {
    position:relative; overflow:hidden; margin-bottom:32px;
  }
  .trainer-photo-wrap::after {
    content:''; position:absolute; inset:0;
    border:1px solid var(--gold);
    transform:translate(12px,12px);
    pointer-events:none;
  }
  .trainer-photo {
    width:100%; aspect-ratio:3/4; object-fit:cover;
    filter:saturate(0.8);
    display:block;
  }
  .trainer-photo-placeholder {
    width:100%; aspect-ratio:3/4;
    background:linear-gradient(160deg, var(--blush) 0%, var(--mauve) 50%, var(--dusty-blue) 100%);
    display:flex; align-items:center; justify-content:center;
  }
  .trainer-photo-placeholder svg {
    opacity:0.3;
  }

  .trainer-badge {
    position:absolute; bottom:-1px; left:0;
    background:var(--charcoal); padding:14px 24px;
    display:inline-block;
  }
  .trainer-badge-role {
    font-size:8px; letter-spacing:3px; text-transform:uppercase;
    color:var(--gold); display:block; margin-bottom:4px;
  }
  .trainer-badge-name {
    font-family:'Cormorant Garamond',serif;
    font-size:17px; font-weight:400; color:var(--ivory);
  }

  .trainer-name {
    font-family:'Cormorant Garamond',serif;
    font-size:28px; font-weight:300; color:var(--charcoal);
    margin-bottom:4px;
  }
  .trainer-role {
    font-size:10px; letter-spacing:3px; text-transform:uppercase;
    color:var(--gold); margin-bottom:20px;
  }
  .trainer-divider {
    width:32px; height:1px; background:var(--gold); margin-bottom:20px;
  }
  .trainer-bio {
    font-size:13px; font-weight:300; line-height:1.9;
    color:var(--mid);
  }
  .trainer-tags {
    display:flex; flex-wrap:wrap; gap:8px; margin-top:24px;
  }
  .trainer-tag {
    font-size:9px; letter-spacing:2px; text-transform:uppercase;
    color:var(--soft); border:1px solid var(--border);
    padding:5px 12px;
  }

  .add-trainer {
    margin-top:64px;
    border:1px dashed var(--border); padding:40px;
    text-align:center;
    transition:border-color .3s, background .3s;
    cursor:pointer;
  }
  .add-trainer:hover {
    border-color:var(--gold);
    background:rgba(196,168,130,0.04);
  }
  .add-trainer-icon {
    width:40px; height:40px; border:1px solid var(--border);
    border-radius:50%; display:flex; align-items:center;
    justify-content:center; margin:0 auto 12px;
    font-size:20px; color:var(--gold); font-weight:300;
  }
  .add-trainer p {
    font-size:11px; letter-spacing:2px; text-transform:uppercase;
    color:var(--soft); font-weight:300;
  }

  /* ─── CONTACT ─── */
  #contact { background:var(--ivory); }

  .contact-grid {
    display:grid; grid-template-columns:1fr 1fr;
    gap:80px; margin-top:64px;
  }

  .contact-info-block { margin-bottom:40px; }
  .contact-info-label {
    font-size:9px; letter-spacing:4px; text-transform:uppercase;
    color:var(--gold); margin-bottom:12px;
  }
  .contact-info-val {
    font-family:'Cormorant Garamond',serif;
    font-size:18px; font-weight:300; color:var(--charcoal);
    line-height:1.6;
  }
  .contact-info-val a {
    color:var(--charcoal); text-decoration:none;
    transition:color .3s;
  }
  .contact-info-val a:hover { color:var(--gold); }

  .map-placeholder {
    width:100%; height:280px; margin-top:32px;
    background:linear-gradient(135deg, var(--cream), var(--blush));
    border:1px solid var(--border);
    display:flex; flex-direction:column;
    align-items:center; justify-content:center; gap:12px;
    position:relative; overflow:hidden;
  }
  .map-placeholder iframe {
    width:100%; height:100%; border:none;
  }
  .map-overlay {
    position:absolute; inset:0;
    display:flex; align-items:center; justify-content:center;
    flex-direction:column; gap:8px;
    background:linear-gradient(135deg, var(--cream), var(--blush));
  }
  .map-pin {
    width:32px; height:32px; border:1px solid var(--gold);
    border-radius:50%; display:flex; align-items:center;
    justify-content:center; color:var(--gold); font-size:14px;
  }
  .map-label {
    font-size:10px; letter-spacing:3px; text-transform:uppercase;
    color:var(--soft);
  }

  /* FORM */
  .contact-form-title {
    font-family:'Cormorant Garamond',serif;
    font-size:28px; font-weight:300; color:var(--charcoal);
    margin-bottom:32px;
  }

  .form-group { margin-bottom:20px; }
  .form-label {
    display:block;
    font-size:9px; letter-spacing:3px; text-transform:uppercase;
    color:var(--soft); margin-bottom:8px;
  }
  .form-control {
    width:100%; padding:14px 0;
    background:transparent;
    border:none; border-bottom:1px solid var(--border);
    font-family:'Jost',sans-serif;
    font-size:13px; font-weight:300; color:var(--charcoal);
    outline:none; transition:border-color .3s;
    -webkit-appearance:none;
  }
  .form-control::placeholder { color:rgba(140,133,128,0.5); }
  .form-control:focus { border-color:var(--gold); }
  textarea.form-control {
    resize:none; height:100px; padding-top:14px;
  }

  .form-row { display:grid; grid-template-columns:1fr 1fr; gap:20px; }

  .form-submit {
    display:inline-flex; align-items:center; gap:12px;
    background:var(--charcoal); color:var(--ivory);
    border:none; padding:16px 40px; cursor:pointer;
    font-family:'Jost',sans-serif;
    font-size:10px; letter-spacing:4px; text-transform:uppercase;
    margin-top:12px;
    transition:background .3s;
  }
  .form-submit:hover { background:var(--gold); }

  .form-notice {
    font-size:10px; font-weight:300; color:var(--soft);
    margin-top:16px; letter-spacing:0.3px;
  }

  /* ─── FOOTER ─── */
  footer {
    background:var(--charcoal);
    padding:56px 48px 32px;
  }
  .footer-inner {
    max-width:1200px; margin:0 auto;
    display:flex; justify-content:space-between; align-items:flex-start;
    gap:48px; flex-wrap:wrap;
    padding-bottom:40px;
    border-bottom:1px solid rgba(255,255,255,0.08);
  }
  .footer-brand {}
  .footer-logo-name {
    font-family:'Cormorant Garamond',serif;
    font-size:22px; font-weight:300; color:var(--gold-light);
    letter-spacing:3px;
  }
  .footer-logo-sub {
    font-size:8px; letter-spacing:4px; text-transform:uppercase;
    color:rgba(255,255,255,0.3); margin-top:4px;
  }
  .footer-tagline {
    font-size:11px; font-style:italic; color:rgba(255,255,255,0.4);
    margin-top:16px; font-family:'Cormorant Garamond',serif;
    max-width:240px; line-height:1.7;
  }
  .footer-links h4 {
    font-size:8px; letter-spacing:4px; text-transform:uppercase;
    color:var(--gold); margin-bottom:16px;
  }
  .footer-links ul { list-style:none; }
  .footer-links li { margin-bottom:8px; }
  .footer-links a {
    font-size:12px; font-weight:300; color:rgba(255,255,255,0.5);
    text-decoration:none; letter-spacing:0.3px;
    transition:color .3s;
  }
  .footer-links a:hover { color:var(--gold-light); }
  .footer-contact h4 {
    font-size:8px; letter-spacing:4px; text-transform:uppercase;
    color:var(--gold); margin-bottom:16px;
  }
  .footer-contact p {
    font-size:12px; font-weight:300; color:rgba(255,255,255,0.5);
    line-height:1.8; margin-bottom:4px;
  }
  .footer-contact a {
    color:rgba(255,255,255,0.5); text-decoration:none;
    transition:color .3s;
  }
  .footer-contact a:hover { color:var(--gold-light); }
  .footer-bottom {
    max-width:1200px; margin:0 auto;
    padding-top:24px;
    display:flex; justify-content:space-between; align-items:center;
    flex-wrap:wrap; gap:16px;
  }
  .footer-copy {
    font-size:10px; font-weight:300; color:rgba(255,255,255,0.25);
    letter-spacing:0.3px;
  }
  .footer-url {
    font-size:10px; color:rgba(196,168,130,0.4);
    letter-spacing:1px;
  }

  /* ─── DECORATIVE ─── */
  .ornament {
    display:flex; align-items:center; gap:16px;
    margin:40px 0; opacity:0.3;
  }
  .ornament::before, .ornament::after {
    content:''; flex:1; height:1px; background:var(--gold);
  }
  .ornament span {
    font-family:'Cormorant Garamond',serif;
    font-size:16px; color:var(--gold);
  }

  .sponsor-item--named {
    display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px;
    text-align:center;
  }
  .sponsor-name {
    font-family:'Cormorant Garamond',serif;
    font-size:22px; font-weight:500; color:var(--charcoal); letter-spacing:1px;
    text-align:center;
  }
  .sponsor-item--placeholder {
    display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px;
    border:1px dashed var(--border); text-align:center;
  }
  .sponsor-item--logo {
    padding:6px 14px;
  }
  .sponsor-item--square {
    width:104px; height:104px; padding:5px;
  }
  .sponsor-logo {
    max-width:100%; max-height:100%;
    object-fit:contain; display:block;
    margin:0 auto;
  }

  .cv-section { margin-bottom:32px; }
  .cv-section-title {
    font-family:'Cormorant Garamond',serif; font-size:18px; font-weight:400;
    color:var(--charcoal); margin-bottom:14px;
    padding-bottom:8px; border-bottom:1px solid var(--border);
    letter-spacing:0.5px;
  }
  .cv-list { list-style:none; padding:0; }
  .cv-list li {
    font-size:12px; color:var(--mid); line-height:1.75;
    padding:6px 0 6px 16px; border-bottom:1px solid rgba(196,168,130,0.1);
    position:relative;
  }
  .cv-list li::before {
    content:'◆'; position:absolute; left:0; top:8px;
    font-size:5px; color:var(--gold);
  }
  .cv-list--pubs li { font-size:11.5px; }

  .cv-btn {
    display:inline-flex; align-items:center; gap:8px;
    margin-top:20px; background:none;
    border:1px solid var(--gold); padding:10px 24px;
    font-size:10px; letter-spacing:2px; text-transform:uppercase;
    color:var(--charcoal); cursor:pointer; font-family:'Jost',sans-serif;
    transition:all .3s; width:100%; justify-content:center;
  }
  .cv-btn:hover { background:var(--gold); color:var(--ivory); }

  /* ─── BANNIÈRE THÉORIE/PRATIQUE ─── */
  .theory-banner {
    display:flex; align-items:center; gap:40px;
    background:var(--ivory); border:1px solid var(--border);
    padding:32px 40px; margin:40px 0 56px;
    border-left:3px solid var(--gold);
  }
  .theory-item { display:flex; align-items:flex-start; gap:16px; flex:1; }
  .theory-icon { font-size:28px; flex-shrink:0; }
  .theory-label { font-size:9px; letter-spacing:3px; text-transform:uppercase; color:var(--gold); margin-bottom:4px; }
  .theory-val { font-family:'Cormorant Garamond',serif; font-size:20px; font-weight:500; color:var(--charcoal); }
  .theory-sub { font-size:11px; color:var(--soft); margin-top:4px; font-weight:300; }
  .theory-sep { width:1px; height:80px; background:var(--border); flex-shrink:0; }

  /* ─── JOURNÉE BONUS ─── */
  .bonus-day-section { margin:56px 0 0; }
  .bonus-day-card {
    background:linear-gradient(135deg, var(--charcoal) 0%, #3a3530 100%);
    color:var(--ivory); padding:40px 48px;
    border:1px solid rgba(196,168,130,0.3); position:relative;
  }
  .bonus-day-card::before {
    content:''; position:absolute; top:0; left:0; right:0; height:2px;
    background:linear-gradient(90deg, var(--gold), var(--gold-light), var(--gold));
  }
  .bonus-label {
    font-size:9px; letter-spacing:4px; text-transform:uppercase;
    color:var(--gold); margin-bottom:8px;
    display:inline-block; border:1px solid rgba(196,168,130,0.4); padding:4px 12px;
  }
  .bonus-date { font-size:13px; color:var(--gold-light); margin-bottom:12px; letter-spacing:1px; }
  .bonus-title { font-family:'Cormorant Garamond',serif; font-size:32px; font-weight:300; margin-bottom:8px; }
  .bonus-price { font-family:'Cormorant Garamond',serif; font-size:28px; color:var(--gold); margin-bottom:24px; }
  .bonus-day-card .day-modules { color:#FFFFFF; }
  .bonus-day-card .day-modules li { color:#FFFFFF; border-bottom-color:rgba(255,255,255,0.15); }
  .bonus-day-card .day-modules li::before { background:var(--gold); color:var(--gold); }

  /* ─── INSCRIPTION ─── */
  .inscription-grid { display:grid; grid-template-columns:1fr 1fr; gap:32px; margin:56px 0 56px; max-width:800px; margin-left:auto; margin-right:auto; }
  .inscription-card {
    background:var(--ivory); border:1px solid var(--border);
    padding:40px 32px; text-align:center;
    transition:transform .3s, box-shadow .3s;
  }
  .inscription-card:hover { transform:translateY(-4px); box-shadow:0 16px 48px var(--shadow); }
  .inscription-card--featured {
    background:var(--charcoal); color:var(--ivory);
    border-color:var(--gold); position:relative;
  }
  .inscription-card--featured::before {
    content:''; position:absolute; top:0; left:0; right:0; height:2px;
    background:linear-gradient(90deg, var(--gold), var(--gold-light), var(--gold));
  }
  .insc-eyebrow { font-size:9px; letter-spacing:3px; text-transform:uppercase; color:var(--gold); margin-bottom:12px; }
  .insc-title { font-family:'Cormorant Garamond',serif; font-size:26px; font-weight:300; margin-bottom:16px; }
  .inscription-card--featured .insc-title { color:var(--ivory); }
  .insc-price { font-family:'Cormorant Garamond',serif; font-size:48px; font-weight:300; color:var(--gold); line-height:1; margin-bottom:4px; }
  .insc-price span { font-size:24px; }
  .insc-desc { font-size:12px; color:var(--soft); line-height:1.75; margin:16px 0 28px; font-weight:300; }
  .inscription-card--featured .insc-desc { color:rgba(245,240,232,0.7); }
  .insc-btn {
    display:inline-block; padding:12px 28px;
    font-size:10px; letter-spacing:3px; text-transform:uppercase;
    text-decoration:none; color:var(--charcoal);
    border:1px solid var(--gold); transition:all .3s;
  }
  .insc-btn:hover { background:var(--gold); color:var(--ivory); }
  .insc-btn--gold { background:var(--gold); color:var(--ivory); }
  .insc-btn--gold:hover { background:var(--gold-light); }

  /* ─── PAIEMENT ─── */
  .payment-block { background:var(--ivory); border:1px solid var(--border); padding:40px 48px; margin-bottom:56px; }
  .payment-grid { display:grid; grid-template-columns:1fr 1fr 1fr 1fr; gap:24px; margin-top:16px; }
  .payment-label { font-size:9px; letter-spacing:2px; text-transform:uppercase; color:var(--soft); margin-bottom:6px; }
  .payment-val { font-family:'Cormorant Garamond',serif; font-size:18px; color:var(--charcoal); }

  /* ─── WORKSHOP ─── */
  .workshop-block {
    background:linear-gradient(135deg, #f0ebe3, #e8e0d5);
    border:1px solid var(--border); border-left:3px solid var(--gold); padding:48px;
  }
  .workshop-title { font-family:'Cormorant Garamond',serif; font-size:36px; font-weight:300; margin:8px 0 24px; }
  .workshop-title em { font-style:italic; color:var(--rose); }
  .workshop-desc { font-size:13px; line-height:1.9; color:var(--mid); max-width:680px; margin-bottom:32px; }
  .workshop-btn {
    display:inline-flex; align-items:center; gap:10px;
    font-size:10px; letter-spacing:3px; text-transform:uppercase;
    text-decoration:none; color:var(--charcoal);
    padding:14px 32px; border:1px solid var(--gold); transition:all .3s;
  }
  .workshop-btn:hover { background:var(--gold); color:var(--ivory); }


  /* ─── SÉLECTEUR DE LANGUE ─── */
  .lang-selector {
    display:flex; align-items:center; gap:8px; margin-left:32px;
  }
  .lang-btn {
    display:flex; align-items:center; gap:5px;
    background:none; border:1px solid transparent;
    padding:4px 8px; cursor:pointer;
    font-size:10px; letter-spacing:2px; text-transform:uppercase;
    color:var(--soft); font-family:'Jost',sans-serif;
    transition:all .3s; border-radius:2px;
  }
  .lang-btn:hover { border-color:var(--gold); color:var(--charcoal); }
  .lang-btn.active { border-color:var(--gold); color:var(--gold); }
  .lang-flag { font-size:16px; line-height:1; }

  /* ─── ANIMATIONS ─── */
  .fade-in {
    opacity:0; transform:translateY(20px);
    transition:opacity .8s, transform .8s;
  }
  .fade-in.visible { opacity:1; transform:none; }

  /* ─── MOBILE ─── */
  @media(max-width:900px) {
    nav { padding:0 24px; }
    .nav-links { gap:20px; }
    .nav-links a { font-size:9px; letter-spacing:2px; }

    #home { flex-direction:column; height:auto; }
    .hero-image-half { width:100%; height:55vh; }
    .hero-content { width:100%; padding:40px 24px 60px; }
    .uems-badge--hero { top:0; right:0; width:70px; height:70px; }
    .uems-badge--section { right:24px; width:76px; height:76px; }

    .formation-grid,
    .trainers-intro,
    .contact-grid { grid-template-columns:1fr; gap:40px; }

    .dates-grid { grid-template-columns:1fr 1fr; }
    .news-grid { grid-template-columns:1fr; }

    .certificate-banner { flex-direction:column; padding:32px; }
    .container { padding:0 24px; }
    section { padding:64px 0; }
    .form-row { grid-template-columns:1fr; }

    .inscription-grid { grid-template-columns:1fr; }
    .payment-grid { grid-template-columns:1fr 1fr; }
    .theory-banner { flex-direction:column; }
    .theory-sep { width:80px; height:1px; }
    footer { padding:40px 24px 24px; }
    .footer-inner { flex-direction:column; gap:32px; }
  }

  /* ─── SMARTPHONE (max 480px) ─── */
  @media(max-width:480px) {
    /* Navigation */
    nav {
      padding:0 16px;
      height:56px;
    }
    .nav-links { display:none; }
    .lang-selector { margin-left:0; }
    .lang-btn { padding:4px 6px; font-size:9px; }
    .lang-flag { font-size:14px; }

    /* Menu hamburger */
    .nav-hamburger {
      display:flex; flex-direction:column; gap:5px;
      cursor:pointer; padding:8px; background:none; border:none;
    }
    .nav-hamburger span {
      display:block; width:22px; height:1px; background:var(--charcoal);
      transition:all .3s;
    }
    .nav-links.open {
      display:flex; flex-direction:column;
      position:fixed; top:56px; left:0; right:0;
      background:var(--ivory); border-bottom:1px solid var(--border);
      padding:24px 24px 32px; gap:20px; z-index:999;
      box-shadow:0 8px 32px rgba(0,0,0,0.1);
    }
    .nav-links.open a { font-size:12px; letter-spacing:3px; }

    /* Hero */
    .hero-image-half { height:45vh; }
    .hero-content { padding:32px 20px 48px; }
    .hero-title { font-size:clamp(36px, 10vw, 56px); }
    .hero-subtitle { font-size:14px; }
    .hero-desc { font-size:12px; }
    .hero-badge { width:80px; height:80px; bottom:20px; right:20px; }
    .hero-badge-num { font-size:28px; }
    .hero-badge-text { font-size:7px; }
    .uems-badge--hero { width:48px; height:48px; top:0; right:0; }
    .uems-badge--section { width:58px; height:58px; right:16px; }
    .uems-badge-pop { width:180px; right:-8px; padding:12px 14px; }

    /* Sections */
    section { padding:48px 0; }
    .container { padding:0 16px; }
    .section-title { font-size:clamp(28px, 8vw, 40px); }
    .section-lead { font-size:12px; }

    /* Formation */
    .formation-grid { grid-template-columns:1fr; gap:24px; }
    .day-card { padding:24px 20px; }
    .day-num { font-size:36px; }
    .day-title { font-size:18px; }
    .theory-banner { padding:20px; gap:24px; }

    /* Bonus day */
    .bonus-day-card { padding:28px 20px; }
    .bonus-title { font-size:24px; }

    /* Dates */
    .dates-grid { grid-template-columns:1fr 1fr; gap:12px; }
    .date-day { font-size:32px; }

    /* News */
    .news-grid { grid-template-columns:1fr; gap:24px; }

    /* Formateurs */
    .trainer-card { padding:32px 20px; }
    .trainer-photo { width:100px; height:100px; }
    .trainer-badge { display:none; }

    /* Inscription */
    .inscription-grid { grid-template-columns:1fr; gap:16px; }
    .insc-price { font-size:36px; }
    .payment-grid { grid-template-columns:1fr; gap:16px; }
    .payment-block { padding:24px 20px; }
    .workshop-block { padding:28px 20px; }
    .workshop-title { font-size:26px; }

    /* Contact */
    .contact-grid { grid-template-columns:1fr; }
    .contact-form-title { font-size:24px; }

    /* Footer */
    footer { padding:32px 16px 20px; }
    .footer-inner { flex-direction:column; gap:24px; }
    .footer-logo-name { font-size:22px; }

    /* Modals */
    #modal-congres > div,
    #modal-amazf > div,
    #modal-formateurs > div,
    #modal-publications > div,
    #modal-cv-fellah > div,
    #modal-cv-zirak > div,
    #modal-cv-ozkan > div,
    #modal-cv-biondi > div,
    #modal-cv-heudens > div,
    #modal-cv-descamps > div {
      max-height:95vh;
      margin:0;
    }
    #modal-congres > div > div,
    #modal-amazf > div > div,
    #modal-formateurs > div > div,
    #modal-publications > div > div,
    #modal-cv-fellah > div > div,
    #modal-cv-zirak > div > div,
    #modal-cv-ozkan > div > div,
    #modal-cv-biondi > div > div,
    #modal-cv-heudens > div > div,
    #modal-cv-descamps > div > div {
      padding:24px 16px;
    }

    /* Popup workshop */
    #popup-workshop { bottom:16px; right:16px; left:16px; max-width:none; }

    /* Sponsors */
    .sponsor-grid { grid-template-columns:1fr 1fr; gap:16px; }
  }

.am-content{max-width:1120px;margin:35px auto;padding:24px}.am-block{padding:30px 0;scroll-margin-top:30px}.am-block h2{font:36px Georgia,serif;line-height:1.2;margin:0 0 20px}.am-block .am-block h2{font-size:26px}.am-block .am-block{margin-top:25px}.am-card{border:1px solid #ded8c9;border-radius:10px;padding:30px;margin:25px 0;background:#fbfaf6}.am-date{font-size:12px;color:#96784f;letter-spacing:1px;margin-bottom:12px}.am-summary{font-size:18px;line-height:1.7;color:#657165}.am-body p{font:16px/1.9 Arial,sans-serif;margin:14px 0;white-space:normal;overflow-wrap:anywhere}.am-gallery{display:grid;grid-template-columns:repeat(var(--columns),minmax(0,1fr));gap:18px;margin-top:24px}.am-gallery img{width:100%;height:auto;max-height:480px;object-fit:contain;background:#f0eee7;border-radius:6px}.am-gallery figure{margin:0}.am-gallery figcaption{font:12px/1.6 Arial,sans-serif;margin-top:9px;color:#697167;white-space:pre-line}.am-news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:25px 0}.am-news-card{border:1px solid #e2ddcf;padding:20px;border-radius:8px;background:#fbfaf6}.am-news-card img{width:100%;height:190px;object-fit:cover}.am-news-card h3{font:24px/1.3 Georgia,serif;margin:16px 0}.am-news-card p{font:14px/1.7 Arial,sans-serif}.am-preview-link{pointer-events:auto!important;color:#45603d;text-decoration:underline;font:13px Arial,sans-serif;display:inline-block;margin-top:10px}.am-preview-nav{display:flex;flex-wrap:wrap;gap:20px;border-bottom:1px solid #ded8c9;padding:15px 0}.am-empty{font:16px/1.8 Arial,sans-serif;color:#73786c;padding:50px 20px;text-align:center}@media(max-width:650px){.am-gallery,.am-news-grid{grid-template-columns:1fr}.am-content{padding:18px}.am-block h2{font-size:28px}.am-card{padding:20px}}[hidden]{display:none!important}.fade-in{opacity:1!important;transform:none!important}.seo-page{padding-top:125px;min-height:70vh}.seo-page .container{max-width:1120px}.seo-page h1{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;font-size:clamp(32px,4vw,54px);line-height:1.15;margin:20px 0 30px}.seo-page p,.seo-page li{font-size:16px;line-height:1.8}.seo-page .day-card{max-width:900px;margin:24px 0}.seo-detail-link{display:inline-block;color:var(--gold);font-size:15px;margin-top:18px;text-decoration:underline}.seo-home-link,.seo-home-link:visited{color:var(--gold)!important}.seo-breadcrumb{font-size:14px;color:var(--soft);margin-bottom:22px}.seo-cta{display:inline-block;padding:12px 20px;background:#f6f1e7;color:#65502f;border:1px solid #d3c19c;border-radius:8px;margin:22px 0;text-decoration:none;font-weight:500}.seo-cta:hover{background:#eee5d5}.seo-cta:focus-visible{outline:2px solid #65502f;outline-offset:3px}.seo-context{padding:20px;border:1px solid var(--border);margin-top:24px}.lang-selector a{color:inherit;text-decoration:none}#home{height:auto;min-height:100vh;overflow:visible}#home .hero-content{min-width:0;padding-top:130px;padding-bottom:48px}#home .hero-eyebrow{flex-wrap:wrap;gap:20px;margin-bottom:28px}#home .uems-badge--hero{position:static;display:flex;align-items:center;gap:16px;width:100%;height:auto}#home .uems-badge--hero>img{width:76px;height:76px;object-fit:contain;flex-shrink:0}#home .uems-credential{position:static;width:auto;min-width:0;flex:1;padding:12px;text-align:left}#home .hero-title{font-size:clamp(34px,3.3vw,54px)!important;line-height:1.12;margin:0;overflow-wrap:normal}#home .hero-badge{position:static;align-self:flex-end;margin-top:24px;flex-shrink:0}@media(max-width:900px){#home .hero-content{padding-top:32px}#home .hero-title{font-size:clamp(34px,7vw,48px)!important}}.seo-brief{margin-top:20px;max-width:600px}.seo-brief p{font-size:15px;line-height:1.6;margin-top:8px}.seo-faq-section{padding:64px 0}.seo-faq details{padding:18px 0;border-bottom:1px solid var(--border)}.seo-faq summary{cursor:pointer;font-size:18px}.seo-footer-legal{text-align:center;padding:20px}.seo-footer-legal a{font-size:14px;margin:0 8px}.seo-course-copy{max-width:900px}.seo-form-privacy{font-size:13px;line-height:1.6}.seo-preview-note{position:fixed;bottom:0;left:0;right:0;z-index:9999;background:#243a2d;color:white;padding:10px 20px;text-align:center;font:14px Arial,sans-serif}body.seo-preview{padding-bottom:45px}.seo-page .am-gallery img{width:100%;height:auto}.trainer-card .trainer-photo-wrap{width:180px;max-width:100%;aspect-ratio:3/4;margin-left:auto;margin-right:auto}.trainer-card .trainer-photo{width:100%;height:100%;aspect-ratio:3/4;object-fit:cover;object-position:center top}.trainer-card .trainer-badge{padding:6px 10px;max-width:100%}.trainer-card .trainer-badge-role{font-size:7px;letter-spacing:1px;line-height:1.3;margin-bottom:2px}.trainer-card .trainer-badge-name{font-size:12px;line-height:1.2}.trainer-card--ozkan .trainer-photo{object-position:center 65%;transform:scale(1.12);transform-origin:50% 60%}.seo-page .cv-section{margin:24px 0}.seo-page .inscription-grid{margin-top:30px}body:has(.seo-page) .nav-links a{font-size:13px}@media(max-width:900px){.nav-links.open{display:flex!important;position:absolute;top:100%;left:0;right:0;background:var(--ivory);padding:24px;flex-direction:column}.nav-hamburger{display:block!important}.seo-page{padding-top:105px}.seo-page .container{padding:0 20px}.seo-page .contact-grid{grid-template-columns:1fr}}