/*
Theme Name: MDES Theme
Theme URI: https://mdes.sirevo.fr/
Author: MDES
Description: Thème WordPress du Mouvement de Décolonisation et d’Émancipation Sociale — V0.5.1, socle éditorial complet.
Version: 0.5.1
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: mdes
*/

:root{
  --mdes-black:#080808;
  --mdes-red:#B00000;
  --mdes-yellow:#FFD21C;
  --mdes-green:#006B35;
  --mdes-cream:#F4F0E8;
  --mdes-white:#FFFFFF;
  --mdes-gray:#202020;
  --mdes-muted:#666666;
  --mdes-border:rgba(8,8,8,.12);
  --mdes-radius:8px;
  --mdes-shadow:0 16px 40px rgba(0,0,0,.18);
}

*{box-sizing:border-box}
body{margin:0;background:var(--mdes-cream);color:var(--mdes-black);font-family:Inter,Arial,sans-serif;line-height:1.65;font-size:16px}
a{color:var(--mdes-red);text-decoration:none}a:hover{text-decoration:underline}
img{max-width:100%;height:auto}
.mdes-container{width:min(1180px,92vw);margin-inline:auto}
.mdes-skip-link{position:absolute;left:-9999px}.mdes-skip-link:focus{left:1rem;top:1rem;background:#fff;padding:.75rem;z-index:9999}
.mdes-site-header{background:var(--mdes-black);color:#fff;position:sticky;top:0;z-index:1000;border-bottom:3px solid var(--mdes-red)}
.mdes-header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:86px}
.mdes-brand{display:flex;align-items:center;gap:14px;color:#fff;font-weight:900;letter-spacing:.03em;text-transform:uppercase}.mdes-brand:hover{text-decoration:none}
.mdes-brand img{max-height:72px;width:auto}.mdes-brand-text{font-size:1.1rem}.mdes-brand-sub{display:block;font-size:.68rem;color:var(--mdes-yellow);font-weight:700;letter-spacing:.1em}
.mdes-main-nav ul{display:flex;align-items:center;gap:18px;margin:0;padding:0;list-style:none}.mdes-main-nav a{color:#fff;font-weight:800;font-size:.93rem}.mdes-main-nav a:hover{color:var(--mdes-yellow);text-decoration:none}
.mdes-menu-toggle{display:none;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.3);padding:.6rem .8rem;border-radius:4px;font-weight:800}
.mdes-btn,.wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:13px 22px;border-radius:4px;font-weight:900;text-transform:none;border:2px solid transparent;line-height:1.2;cursor:pointer;text-decoration:none}.mdes-btn:hover{text-decoration:none;filter:brightness(.96)}
.mdes-btn-primary{background:var(--mdes-red);color:#fff}.mdes-btn-secondary{background:var(--mdes-yellow);color:var(--mdes-black)}.mdes-btn-outline{background:transparent;color:#fff;border-color:#fff}.mdes-btn-dark{background:var(--mdes-black);color:#fff}
.mdes-hero{position:relative;background:linear-gradient(135deg,#080808 0%,#1f0505 58%,#00391d 100%);color:#fff;padding:88px 0;overflow:hidden}.mdes-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(255,210,28,.16),transparent 28%),linear-gradient(90deg,rgba(0,0,0,.82),rgba(0,0,0,.52));pointer-events:none}.mdes-hero .mdes-container{position:relative;z-index:2}.mdes-eyebrow{display:inline-block;background:var(--mdes-red);color:#fff;font-weight:900;padding:.35rem .65rem;border-radius:3px;margin-bottom:1rem;text-transform:uppercase;font-size:.82rem;letter-spacing:.06em}.mdes-hero h1{font-family:Montserrat,Inter,Arial,sans-serif;font-size:clamp(2.3rem,6vw,5rem);line-height:.95;margin:0 0 1.2rem;font-weight:900;max-width:900px}.mdes-hero p{font-size:clamp(1.05rem,2vw,1.35rem);max-width:760px;color:rgba(255,255,255,.9);margin:0 0 1.8rem}.mdes-hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.mdes-section{padding:64px 0}.mdes-section-dark{background:var(--mdes-black);color:#fff}.mdes-section-green{background:var(--mdes-green);color:#fff}.mdes-section-light{background:var(--mdes-cream)}.mdes-section-white{background:#fff}.mdes-section-title{font-size:clamp(1.8rem,3vw,2.8rem);line-height:1.05;margin:0 0 1rem;font-weight:900}.mdes-section-title .accent{color:var(--mdes-red)}.mdes-intro{font-size:1.12rem;max-width:840px;color:inherit;opacity:.9}.mdes-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.mdes-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.mdes-card{background:#fff;color:var(--mdes-black);border-radius:var(--mdes-radius);padding:24px;border-top:5px solid var(--mdes-red);box-shadow:0 8px 22px rgba(0,0,0,.08)}.mdes-card h3{margin-top:0;font-size:1.25rem;line-height:1.2}.mdes-card p{color:#333}.mdes-card .mdes-meta{color:var(--mdes-muted);font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.04em}.mdes-card-dark{background:#151515;color:#fff;border-color:var(--mdes-yellow)}.mdes-card-dark p{color:rgba(255,255,255,.82)}
.mdes-page-main{padding:48px 0}.mdes-content{background:#fff;border-radius:var(--mdes-radius);padding:min(48px,6vw);box-shadow:0 10px 35px rgba(0,0,0,.08)}.mdes-content h2{font-size:clamp(1.55rem,2.3vw,2.25rem);line-height:1.1;margin-top:2rem;color:var(--mdes-red)}.mdes-content h3{font-size:1.25rem}.mdes-content ul{padding-left:1.2rem}.mdes-content blockquote{border-left:5px solid var(--mdes-red);margin:1.5rem 0;padding:1rem 1.2rem;background:var(--mdes-cream);font-weight:700}
.mdes-breadcrumbs{font-size:.9rem;margin:0 0 1.3rem;color:#666}.mdes-breadcrumbs a{color:#666}.mdes-cta-band{background:var(--mdes-black);color:#fff;border-radius:var(--mdes-radius);padding:32px;margin:36px 0}.mdes-cta-band h2,.mdes-cta-band h3{color:#fff;margin-top:0}.mdes-tag{display:inline-block;background:var(--mdes-yellow);color:#080808;font-weight:900;border-radius:3px;padding:.25rem .55rem;margin:.15rem;font-size:.8rem}.mdes-filter-bar{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}.mdes-filter-bar input,.mdes-filter-bar select{padding:12px;border:1px solid var(--mdes-border);border-radius:4px;min-width:190px}.mdes-form{background:#fff;border-radius:var(--mdes-radius);padding:28px;box-shadow:0 10px 30px rgba(0,0,0,.08)}.mdes-form-row{margin-bottom:18px}.mdes-form label{font-weight:900;display:block;margin-bottom:6px}.mdes-form input,.mdes-form select,.mdes-form textarea{width:100%;padding:12px;border:1px solid var(--mdes-border);border-radius:4px;font:inherit}.mdes-form textarea{min-height:150px}.mdes-help{font-size:.9rem;color:#666}.mdes-alert{padding:14px 16px;border-radius:4px;margin:0 0 20px;font-weight:800}.mdes-alert-success{background:#e8f5ec;color:#0a5828}.mdes-alert-error{background:#fdeaea;color:#8b0000}.mdes-required{color:var(--mdes-red)}
.mdes-site-footer{background:var(--mdes-black);color:#fff;padding:46px 0 24px;border-top:5px solid var(--mdes-red)}.mdes-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:26px}.mdes-site-footer a{color:#fff}.mdes-footer-title{font-weight:900;color:var(--mdes-yellow);margin-bottom:.8rem}.mdes-footer-bottom{border-top:1px solid rgba(255,255,255,.15);margin-top:32px;padding-top:18px;font-size:.9rem;color:rgba(255,255,255,.72)}
@media(max-width:900px){.mdes-menu-toggle{display:block}.mdes-main-nav{display:none;position:absolute;top:86px;left:0;right:0;background:#080808;padding:18px 4vw;border-top:1px solid rgba(255,255,255,.12)}.mdes-main-nav.is-open{display:block}.mdes-main-nav ul{display:block}.mdes-main-nav li{margin:12px 0}.mdes-grid,.mdes-grid-2,.mdes-footer-grid{grid-template-columns:1fr}.mdes-hero{padding:64px 0}.mdes-header-inner{min-height:76px}.mdes-brand img{max-height:58px}.mdes-main-nav{top:76px}}

/* =========================================================
   MDES — Homepage CSS
   Version: V0.5.2
   File target: style.css
   ========================================================= */

/* ---------- Homepage variables ---------- */

:root {
  --mdes-black: #050505;
  --mdes-black-soft: #111111;
  --mdes-red: #c8102e;
  --mdes-red-dark: #8f0b20;
  --mdes-yellow: #f2c230;
  --mdes-green: #1f5b3a;
  --mdes-green-dark: #123725;
  --mdes-cream: #f7f1e3;
  --mdes-white: #ffffff;
  --mdes-grey: #666666;
  --mdes-border: rgba(255, 255, 255, 0.14);
  --mdes-shadow: 0 20px 50px rgba(0, 0, 0, 0.22);
}

/* ---------- Global homepage layout ---------- */

.mdes-home {
  background: var(--mdes-cream);
  color: var(--mdes-black);
  overflow: hidden;
}

.mdes-home-container {
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto;
}

.mdes-home-section {
  padding: 92px 0;
  position: relative;
}

.mdes-home-section--light {
  background: var(--mdes-cream);
  color: var(--mdes-black);
}

.mdes-home-section--dark {
  background: var(--mdes-black-soft);
  color: var(--mdes-white);
}

.mdes-home-section--black {
  background: var(--mdes-black);
  color: var(--mdes-white);
}

.mdes-home-section--green {
  background: linear-gradient(135deg, var(--mdes-green-dark), var(--mdes-green));
  color: var(--mdes-white);
}

.mdes-home-section-label,
.mdes-home-kicker {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 18px;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--mdes-red);
}

.mdes-home-section--dark .mdes-home-section-label,
.mdes-home-section--black .mdes-home-section-label,
.mdes-home-section--green .mdes-home-section-label,
.mdes-home-kicker {
  color: var(--mdes-yellow);
}

.mdes-home-section-title {
  margin: 0 0 22px;
  font-size: clamp(2rem, 4vw, 3.6rem);
  line-height: 1.02;
  font-weight: 900;
  letter-spacing: -0.04em;
}

.mdes-home p {
  font-size: 1.06rem;
  line-height: 1.75;
}

.mdes-home-section-head {
  max-width: 780px;
  margin-bottom: 42px;
}

.mdes-home-section-head p {
  margin: 0;
  color: inherit;
  opacity: 0.82;
}

.mdes-home-section-head--row {
  max-width: none;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 36px;
}

.mdes-home-center {
  display: flex;
  justify-content: center;
  margin-top: 42px;
}

/* ---------- Buttons ---------- */

.mdes-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 14px 22px;
  border-radius: 999px;
  font-weight: 800;
  font-size: 0.95rem;
  line-height: 1;
  text-decoration: none;
  transition: transform 0.2s ease, background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
  border: 2px solid transparent;
}

.mdes-btn:hover,
.mdes-btn:focus {
  transform: translateY(-2px);
  text-decoration: none;
}

.mdes-btn--primary {
  background: var(--mdes-red);
  color: var(--mdes-white);
  box-shadow: 0 14px 30px rgba(200, 16, 46, 0.28);
}

.mdes-btn--primary:hover,
.mdes-btn--primary:focus {
  background: var(--mdes-red-dark);
  color: var(--mdes-white);
}

.mdes-btn--secondary {
  background: var(--mdes-yellow);
  color: var(--mdes-black);
}

.mdes-btn--secondary:hover,
.mdes-btn--secondary:focus {
  background: #ffd75f;
  color: var(--mdes-black);
}

.mdes-btn--outline {
  background: transparent;
  color: var(--mdes-white);
  border-color: rgba(255, 255, 255, 0.42);
}

.mdes-btn--outline:hover,
.mdes-btn--outline:focus {
  background: var(--mdes-white);
  color: var(--mdes-black);
  border-color: var(--mdes-white);
}

.mdes-btn--outline-dark {
  background: transparent;
  color: var(--mdes-black);
  border-color: rgba(0, 0, 0, 0.28);
}

.mdes-btn--outline-dark:hover,
.mdes-btn--outline-dark:focus {
  background: var(--mdes-black);
  color: var(--mdes-white);
  border-color: var(--mdes-black);
}

.mdes-home-actions {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
}

.mdes-link-arrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 16px;
  color: var(--mdes-red);
  font-weight: 900;
  text-decoration: none;
}

.mdes-link-arrow::after {
  content: "→";
  font-size: 1.1em;
  transition: transform 0.2s ease;
}

.mdes-link-arrow:hover::after,
.mdes-link-arrow:focus::after {
  transform: translateX(4px);
}

.mdes-link-arrow--light {
  color: var(--mdes-yellow);
}

/* ---------- Hero ---------- */

.mdes-home-hero {
  position: relative;
  min-height: 78vh;
  display: flex;
  align-items: center;
  background:
    radial-gradient(circle at 78% 22%, rgba(242, 194, 48, 0.18), transparent 26%),
    linear-gradient(110deg, rgba(0, 0, 0, 0.92) 0%, rgba(0, 0, 0, 0.78) 48%, rgba(18, 55, 37, 0.72) 100%),
    url("assets/img/placeholders/home-hero.jpg");
  background-size: cover;
  background-position: center;
  color: var(--mdes-white);
  padding: 120px 0 100px;
}

.mdes-home-hero__overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(0, 0, 0, 0.26), rgba(0, 0, 0, 0.72)),
    linear-gradient(90deg, rgba(0, 0, 0, 0.84), rgba(0, 0, 0, 0.15));
  pointer-events: none;
}

.mdes-home-hero__content {
  position: relative;
  z-index: 2;
  max-width: 820px;
  margin-left: auto;
  margin-right: auto;
  text-align: left;
}

.mdes-home-hero__title {
  margin: 0 0 26px;
  font-size: clamp(3rem, 7vw, 6.8rem);
  line-height: 0.92;
  font-weight: 950;
  letter-spacing: -0.07em;
  color: var(--mdes-white);
}

.mdes-home-hero__text {
  max-width: 720px;
  margin: 0 0 34px;
  font-size: clamp(1.08rem, 2vw, 1.35rem);
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.86);
}

/* ---------- Split sections ---------- */

.mdes-home-split {
  display: grid;
  grid-template-columns: minmax(0, 1.04fr) minmax(320px, 0.96fr);
  gap: 60px;
  align-items: center;
}

.mdes-home-split--reverse {
  grid-template-columns: minmax(320px, 0.96fr) minmax(0, 1.04fr);
}

.mdes-home-split--reverse .mdes-home-split__content {
  order: 2;
}

.mdes-home-split--reverse .mdes-home-split__visual {
  order: 1;
}

.mdes-home-split__content p {
  margin: 0 0 18px;
  color: inherit;
  opacity: 0.88;
}

.mdes-home-split__visual {
  min-height: 360px;
}

.mdes-home-image-placeholder {
  min-height: 420px;
  border-radius: 28px;
  overflow: hidden;
  background:
    linear-gradient(135deg, rgba(200, 16, 46, 0.76), rgba(18, 55, 37, 0.82)),
    repeating-linear-gradient(45deg, rgba(255, 255, 255, 0.08) 0 12px, rgba(255, 255, 255, 0.02) 12px 24px);
  box-shadow: var(--mdes-shadow);
  display: flex;
  align-items: flex-end;
  padding: 28px;
  color: var(--mdes-white);
  font-weight: 900;
}

.mdes-home-image-placeholder span {
  display: inline-flex;
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.46);
  backdrop-filter: blur(8px);
}

.mdes-home-image-placeholder--territory {
  background:
    linear-gradient(135deg, rgba(18, 55, 37, 0.88), rgba(242, 194, 48, 0.38)),
    repeating-linear-gradient(-45deg, rgba(255, 255, 255, 0.08) 0 14px, rgba(255, 255, 255, 0.02) 14px 28px);
}

/* ---------- Action cards ---------- */

.mdes-home-action-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.mdes-home-action-card {
  min-height: 280px;
  padding: 30px;
  border-radius: 28px;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid var(--mdes-border);
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.22);
  position: relative;
  overflow: hidden;
}

.mdes-home-action-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 88% 12%, rgba(242, 194, 48, 0.17), transparent 28%);
  pointer-events: none;
}

.mdes-home-action-card__number {
  display: inline-flex;
  margin-bottom: 46px;
  font-size: 0.84rem;
  font-weight: 900;
  color: var(--mdes-yellow);
  letter-spacing: 0.08em;
}

.mdes-home-action-card h3 {
  position: relative;
  margin: 0 0 14px;
  color: var(--mdes-white);
  font-size: 1.42rem;
  line-height: 1.18;
}

.mdes-home-action-card p {
  position: relative;
  margin: 0;
  color: rgba(255, 255, 255, 0.76);
  font-size: 1rem;
}

/* ---------- Defense list ---------- */

.mdes-home-list {
  margin: 26px 0 30px;
  padding: 0;
  list-style: none;
}

.mdes-home-list li {
  position: relative;
  padding: 16px 0 16px 38px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.16);
  font-weight: 700;
  line-height: 1.45;
}

.mdes-home-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 19px;
  width: 17px;
  height: 17px;
  border-radius: 50%;
  background: var(--mdes-yellow);
  box-shadow: 0 0 0 6px rgba(242, 194, 48, 0.14);
}

/* ---------- Dynamic content cards ---------- */

.mdes-home-card-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.mdes-home-card {
  min-height: 260px;
  padding: 28px;
  border-radius: 26px;
  background: var(--mdes-white);
  border: 1px solid rgba(0, 0, 0, 0.08);
  box-shadow: 0 15px 38px rgba(0, 0, 0, 0.08);
  display: flex;
  flex-direction: column;
}

.mdes-home-section--black .mdes-home-card,
.mdes-home-section--dark .mdes-home-card {
  background: rgba(255, 255, 255, 0.07);
  border-color: var(--mdes-border);
  color: var(--mdes-white);
}

.mdes-home-card__label {
  display: inline-flex;
  align-self: flex-start;
  margin-bottom: 18px;
  padding: 7px 10px;
  border-radius: 999px;
  background: rgba(200, 16, 46, 0.1);
  color: var(--mdes-red);
  font-size: 0.76rem;
  font-weight: 900;
  letter-spacing: 0.04em;
}

.mdes-home-section--black .mdes-home-card__label,
.mdes-home-section--dark .mdes-home-card__label {
  background: rgba(242, 194, 48, 0.12);
  color: var(--mdes-yellow);
}

.mdes-home-card__title {
  margin: 0 0 14px;
  font-size: 1.32rem;
  line-height: 1.18;
}

.mdes-home-card__title a {
  color: inherit;
  text-decoration: none;
}

.mdes-home-card__title a:hover,
.mdes-home-card__title a:focus {
  color: var(--mdes-red);
}

.mdes-home-section--black .mdes-home-card__title a:hover,
.mdes-home-section--black .mdes-home-card__title a:focus,
.mdes-home-section--dark .mdes-home-card__title a:hover,
.mdes-home-section--dark .mdes-home-card__title a:focus {
  color: var(--mdes-yellow);
}

.mdes-home-card__excerpt {
  margin: 0 0 22px;
  color: var(--mdes-grey);
  font-size: 0.98rem;
  line-height: 1.65;
}

.mdes-home-section--black .mdes-home-card__excerpt,
.mdes-home-section--dark .mdes-home-card__excerpt {
  color: rgba(255, 255, 255, 0.72);
}

.mdes-home-card__link {
  margin-top: auto;
  color: var(--mdes-red);
  font-weight: 900;
  text-decoration: none;
}

.mdes-home-section--black .mdes-home-card__link,
.mdes-home-section--dark .mdes-home-card__link {
  color: var(--mdes-yellow);
}

.mdes-home-card__link:hover,
.mdes-home-card__link:focus {
  text-decoration: underline;
}

.mdes-home-empty {
  grid-column: 1 / -1;
  padding: 26px;
  border-radius: 22px;
  background: rgba(0, 0, 0, 0.05);
  color: var(--mdes-black);
}

.mdes-home-empty p {
  margin: 0;
}

.mdes-home-empty--dark {
  background: rgba(255, 255, 255, 0.08);
  color: rgba(255, 255, 255, 0.78);
}

/* ---------- Join section ---------- */

.mdes-home-join {
  background:
    radial-gradient(circle at 86% 18%, rgba(242, 194, 48, 0.26), transparent 28%),
    linear-gradient(135deg, var(--mdes-cream), #ffffff);
  color: var(--mdes-black);
  padding: 96px 0;
}

.mdes-home-join__inner {
  max-width: 900px;
  text-align: center;
}

.mdes-home-join h2 {
  margin: 0 0 22px;
  font-size: clamp(2.3rem, 5vw, 5rem);
  line-height: 0.98;
  font-weight: 950;
  letter-spacing: -0.06em;
}

.mdes-home-join p {
  max-width: 720px;
  margin: 0 auto 32px;
  color: rgba(0, 0, 0, 0.72);
  font-size: 1.15rem;
}

.mdes-home-join .mdes-home-actions {
  justify-content: center;
}

/* ---------- Responsive ---------- */

@media (max-width: 1024px) {
  .mdes-home-section {
    padding: 76px 0;
  }

  .mdes-home-split,
  .mdes-home-split--reverse {
    grid-template-columns: 1fr;
    gap: 42px;
  }

  .mdes-home-split--reverse .mdes-home-split__content,
  .mdes-home-split--reverse .mdes-home-split__visual {
    order: initial;
  }

  .mdes-home-action-grid,
  .mdes-home-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mdes-home-section-head--row {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (max-width: 760px) {
  .mdes-home-container {
    width: min(100% - 28px, 1180px);
  }

  .mdes-home-hero {
    min-height: auto;
    padding: 96px 0 76px;
  }

  .mdes-home-hero__title {
    font-size: clamp(2.65rem, 16vw, 4rem);
  }

  .mdes-home-hero__text {
    font-size: 1.02rem;
  }

  .mdes-home-section {
    padding: 62px 0;
  }

  .mdes-home-section-title {
    font-size: clamp(2rem, 11vw, 3rem);
  }

  .mdes-home-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .mdes-btn {
    width: 100%;
  }

  .mdes-home-action-grid,
  .mdes-home-card-grid {
    grid-template-columns: 1fr;
  }

  .mdes-home-action-card,
  .mdes-home-card {
    padding: 24px;
  }

  .mdes-home-image-placeholder {
    min-height: 280px;
    border-radius: 22px;
  }

  .mdes-home-split__visual {
    min-height: auto;
  }

  .mdes-home-join {
    padding: 70px 0;
  }

  .mdes-home-join h2 {
    font-size: clamp(2.2rem, 13vw, 3.4rem);
  }

  .mdes-home-join p {
    font-size: 1.02rem;
  }
}

@media (max-width: 420px) {
  .mdes-home-container {
    width: min(100% - 22px, 1180px);
  }

  .mdes-home-hero {
    padding: 82px 0 64px;
  }

  .mdes-home-kicker,
  .mdes-home-section-label {
    font-size: 0.7rem;
  }

  .mdes-home-action-card__number {
    margin-bottom: 30px;
  }
}