.tmfb-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px;align-items:stretch}
.tmfb-card{--w:330px;perspective:1200px;width:var(--w);margin-inline:auto;}
.tmfb-card__inner{position:relative;transform-style:preserve-3d;transition:transform .6s;min-height:100%;height:100%;box-shadow: 4px 3px 30px #00000029;}
.tmfb-card:hover .tmfb-card__inner,.tmfb-card:focus-within .tmfb-card__inner{transform:rotateY(180deg)}
.tmfb-face{position:relative;backface-visibility:hidden;overflow:hidden;min-height:100%;height:100%;display:flex;flex-direction:column}
.face-euromines img {background:#005069;}
.tmfb-face--front{transform:rotateY(0)}
.tmfb-face--back{transform:rotateY(180deg);position:absolute;inset:0}
.tmfb-img{width:100%;object-fit:cover;display:block}
.tmfb-img--exec{height:364px}
.tmfb-img--euro{height:288px}
.tmfb-body{background:#fff;padding:24px;display:flex;flex-direction:column;gap:8px;position:relative;font-family: "Raleway", Sans-serif !important;flex: 1;}
.tmfb-title{font-weight:700;font-size:22px !important;margin:0;color:#005069 !important;font-family: "Raleway", Sans-serif !important;}
.tmfb-role,.tmfb-position,.tmfb-email{font-family: "Raleway", Sans-serif !important;}
.tmfb-role {color: #0084C8 !important;font-size:20px;font-style: italic;font-weight: 700;}
.tmfb-position {color: #005069 !important; font-size:18px; line-height: 24px; font-weight: 400;}
.tmfb-email {color: #005069 !important; font-size: 18px; line-height: 22px; font-weight: 400;}
.tmfb-cta{margin-top:auto;display:flex;align-items:flex-start;gap:8px;font-weight:700;font-family: "Raleway", Sans-serif !important;}
.tmfb-cta__label{font-family: "Raleway", Sans-serif !important; font-size:16px !important;font-weight: 700;color:#0084C8 !important;}
.tmfb-email{display: flex;flex-direction: row;flex-wrap: nowrap;align-content: center;justify-content: flex-start;align-items: center;gap: 10px;}
.tmfb-back{background:#005069;color:#fff;display:flex;flex-direction:column;font-family: "Raleway", Sans-serif !important;}
.tmfb-back__bg{position:absolute;inset:0;background-repeat:no-repeat;background-position:right bottom;background-size:auto;pointer-events:none;opacity:1}
.tmfb-front__bg{position:absolute;inset:0;background-repeat:no-repeat;background-position:right bottom;background-size:auto;pointer-events:none;opacity:1}
.tmfb-desc{color: #fff !important;position:relative;padding:24px;font-size:16px !important;line-height:20px !important;overflow:auto;font-family: "Raleway", Sans-serif !important;}
.tmfb-desc :where(p,ul,ol){margin:0 0 .8em 0; font-family: "Raleway", Sans-serif !important;}
.tmfb-card a{color:inherit;text-decoration:none; font-family: "Raleway", Sans-serif !important;}
.tmfb-card:focus-within{outline:2px solid #005069;outline-offset:4px;border-radius:12px}

/* ========== Type-specific minimum heights (whole card, both faces) ========== */
.tmfb-card--executive .tmfb-card__inner,
.tmfb-card--executive .tmfb-face{ min-height:610px; height:auto; }

.tmfb-card--euromines .tmfb-card__inner,
.tmfb-card--euromines .tmfb-face{ min-height:535px; height:auto; }

/* Ensure back face fills the same height as the inner */
.tmfb-card__inner{ position:relative; }
.tmfb-face--back{ position:absolute; inset:0; }

/* ========== Responsive scaling (do not change your base values) ========== */

/* Smaller desktops / large laptops */
@media (max-width: 1400px){
  .tmfb-grid{ gap: 36px; }
  .tmfb-body{ padding: 20px; }
  .tmfb-title{ font-size: 20px !important; }
  .tmfb-role{ font-size: 18px; }
  .tmfb-position, .tmfb-email{ font-size: 16px; line-height: 20px; }
  .tmfb-desc{ font-size: 15px !important; line-height: 20px !important; }
  .tmfb-img--exec{ height: 340px; }
  .tmfb-img--euro{ height: 270px; }
}

/* Laptops / tablets landscape */
@media (max-width: 1200px){
  .tmfb-grid{ gap: 32px; }
  .tmfb-body{ padding: 18px; }
  .tmfb-title{ font-size: 19px !important; }
  .tmfb-role{ font-size: 17px; }
  .tmfb-position, .tmfb-email{ font-size: 15px; line-height: 20px; }
  .tmfb-desc{ font-size: 14.5px !important; line-height: 20px !important; }
  .tmfb-img--exec{ height: 320px; }
  .tmfb-img--euro{ height: 256px; }
}
@media (max-width: 1024px){
  .tmfb-grid{ grid-template-columns: repeat(2, minmax(0,1fr)); gap: 28px; }
}
/* Tablets (keep 2 columns—your CSS already switches to 2 @ ≤991.98px) */
@media (max-width: 992px){
  .tmfb-grid{ grid-template-columns: repeat(2, minmax(0,1fr)); gap: 28px; }
  .tmfb-body{ padding: 16px; }
  .tmfb-title{ font-size: 18px !important; }
  .tmfb-role{ font-size: 16px; }
  .tmfb-position, .tmfb-email{ font-size: 14px; line-height: 18px; }
  .tmfb-desc{ font-size: 14px !important; line-height: 18px !important; }
  .tmfb-img--exec{ height: 300px; }
  .tmfb-img--euro{ height: 240px; }
}

/* Large phones / small tablets (your CSS already switches to 1 column @ ≤678px) */
@media (max-width: 678px){
  .tmfb-grid{ grid-template-columns: 1fr; gap: 24px; }
  .tmfb-body{ padding: 14px; }
  .tmfb-title{ font-size: 17px !important; }
  .tmfb-role{ font-size: 15px; }
  .tmfb-position, .tmfb-email{ font-size: 13.5px; line-height: 18px; }
  .tmfb-desc{ font-size: 13.5px !important; line-height: 18px !important; }
  .tmfb-img--exec{ height: 272px; }
  .tmfb-img--euro{ height: 218px; }
}

/* Small phones */
@media (max-width: 480px){
  .tmfb-grid{ gap: 20px; }
  .tmfb-body{ padding: 12px; }
  .tmfb-title{ font-size: 16px !important; }
  .tmfb-role{ font-size: 14px; }
  .tmfb-position, .tmfb-email{ font-size: 13px; line-height: 17px; }
  .tmfb-desc{ font-size: 13px !important; line-height: 17px !important; }
  .tmfb-img--exec{ height: 250px; }
  .tmfb-img--euro{ height: 205px; }
}
