/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v8.4.14,
* Autoprefixer: v10.4.7
* Browsers: last 4 version
*/

:root {
  --color-primary: #FF6634;
  --color-secondary: #ffb703;
  --color-bg: #0b1020;
  --color-text: #FFFFFF;
}
/* Petit style local (à déplacer si vous préférez) */
    .form-wrap { max-width: 880px; margin: 0 auto; padding: 1.2rem; }
    .form-grid { display: -ms-grid; display: grid; -ms-grid-columns: 1fr 1rem 1fr; grid-template-columns: 1fr 1fr; gap: 1rem; }
    .form-row { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; gap: 0.35rem; }
    .form-row.full { grid-column: 1 / -1; }
    label { font-weight: 600; }
    input[type="text"], input[type="email"], input[type="tel"], select, textarea {
      width: 100%;
      padding: 0.7rem;
      border: 1px solid #cfcfcf;
      border-radius: 8px;
      font-size: 1rem;
    }
    textarea { min-height: 140px; resize: vertical; }
    .hint { font-size: 0.95rem; opacity: .85; }
    .required { color: #b00020; }
    .alert { border-radius: 10px; padding: 0.85rem 1rem; margin: 1rem 0; }
    .alert.error { border: 1px solid #e6b3b3; background: #fff1f1; }
    .alert.success { border: 1px solid #bde3bd; background: #f2fff2; }
    .actions { display:-webkit-box; display:-ms-flexbox; display:flex; gap: 0.8rem; -webkit-box-align:center; -ms-flex-align:center; align-items:center; -ms-flex-wrap: wrap; flex-wrap: wrap; }
    .btn {
      display:-webkit-inline-box;
      display:-ms-inline-flexbox;
      display:inline-flex; -webkit-box-align:center; -ms-flex-align:center; align-items:center; -webkit-box-pack:center; -ms-flex-pack:center; justify-content:center;
      padding: 0.75rem 1.1rem; border-radius: 10px; border: 0;
      cursor: pointer; font-weight: 700;
    }
    .btn.primary { background: #0b6b3a; color: white; }
    .btn.secondary { background: #eaeaea; color: #111; }
    .checkbox { display:-webkit-box; display:-ms-flexbox; display:flex; gap:.6rem; -webkit-box-align:start; -ms-flex-align:start; align-items:flex-start; }
    .checkbox input { margin-top: 0.25rem; }
    .sr-only { position:absolute; left:-10000px; top:auto; width:1px; height:1px; overflow:hidden; }

    .t-wrap{max-width:1100px;margin:0 auto;padding:1.25rem;}
    .t-hero{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:.55rem;margin:1rem 0 1.2rem;}
    .t-hero h1{font-size:clamp(1.6rem,2.3vw,2.1rem);line-height:1.15;margin:0;}
    .t-hero p{margin:.15rem 0 0;opacity:.9;max-width:75ch;}
    .t-actions{display:-webkit-box;display:-ms-flexbox;display:flex;gap:.75rem;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-top:.4rem;}
    .t-btn{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:.5rem;padding:.72rem 1rem;border-radius:999px;border:1px solid #d7d7d7;background:#fff;font-weight:700;text-decoration:none;}
    .t-btn.primary{background:#0b6b3a;color:#fff;border-color:#0b6b3a;}
    .t-btn:hover{-webkit-filter:brightness(.98);filter:brightness(.98);}

    .t-filters{position:sticky;top:0;background:#fff;z-index:20;border:1px solid #ececec;border-radius:16px;padding:.9rem;margin:0 0 1.2rem;-webkit-box-shadow:0 6px 18px rgba(0,0,0,.06);box-shadow:0 6px 18px rgba(0,0,0,.06);}
    .t-filters form{display:-ms-grid;display:grid;-ms-grid-columns:1.3fr .6rem 1.8fr .6rem .9fr .6rem 1.4fr .6rem auto;grid-template-columns:1.3fr 1.8fr .9fr 1.4fr auto;gap:.6rem;-webkit-box-align:end;-ms-flex-align:end;align-items:end;}
    .t-filters label{font-size:.92rem;font-weight:700;}
    .t-filters input[type="text"], .t-filters select{
      width:100%;padding:.65rem .7rem;border:1px solid #cfcfcf;border-radius:12px;font-size:1rem;
    }
    .t-filters .t-filter-actions{display:-webkit-box;display:-ms-flexbox;display:flex;gap:.5rem;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}
    .t-submit{padding:.7rem 1rem;border:0;border-radius:12px;background:#0b6b3a;color:#fff;font-weight:800;cursor:pointer;}
    .t-reset{padding:.7rem 1rem;border:1px solid #d7d7d7;border-radius:12px;background:#fff;text-decoration:none;font-weight:800;color:#111;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:.45rem;}
    .t-count{margin:.3rem 0 1rem;opacity:.85;}

    .t-grid{display:-ms-grid;display:grid;-ms-grid-columns:1fr 1rem 1fr 1rem 1fr;grid-template-columns:repeat(3,1fr);gap:1rem;}
    .t-card{
      border:1px solid #ececec;border-radius:18px;background:#fff;
      -webkit-box-shadow:0 8px 22px rgba(0,0,0,.06);
              box-shadow:0 8px 22px rgba(0,0,0,.06);overflow:hidden;
    }
    .t-card-head{padding:1rem 1rem .75rem;border-left:8px solid var(--accent,#0b6b3a);}
    .t-meta-top{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;gap:.75rem;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;}
    .t-name{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:.1rem;}
    .t-name strong{font-size:1.07rem;}
    .t-badges{display:-webkit-box;display:-ms-flexbox;display:flex;gap:.4rem;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;}
    .t-badge{
      display:-webkit-inline-box;
      display:-ms-inline-flexbox;
      display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:.35rem;
      padding:.25rem .55rem;border-radius:999px;background:#f3f3f3;font-size:.9rem;
    }
    .t-sub{margin:.55rem 0 0;opacity:.9;}
    .t-card-body{padding:0 1rem 1rem;}
    .t-quote{margin:.7rem 0 .2rem;padding:.7rem .8rem;border-radius:14px;background:#fafafa;border:1px solid #efefef;}
    .t-quote i{opacity:.6;margin-right:.35rem;}
    details.t-details{margin-top:.55rem;border-top:1px solid #efefef;padding-top:.65rem;}
    details.t-details summary{cursor:pointer;font-weight:800;list-style:none;}
    details.t-details summary::-webkit-details-marker{display:none;}
    .t-section{margin:.65rem 0;}
    .t-section h3{font-size:1.02rem;margin:0 0 .25rem;}
    .t-kv{display:-webkit-box;display:-ms-flexbox;display:flex;gap:.6rem;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-top:.65rem;}
    .t-kv span{font-size:.92rem;background:#f3f3f3;border-radius:999px;padding:.25rem .55rem;}
    .t-link{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:.45rem;margin-top:.4rem;text-decoration:none;font-weight:800;}
    .t-empty{padding:1.1rem;border:1px dashed #cfcfcf;border-radius:18px;background:#fff;}
    .t-note{font-size:.95rem;opacity:.85;margin-top:.4rem;}
    .t-db-error{margin:1rem 0;padding:.85rem 1rem;border-radius:14px;border:1px solid #f0c2c2;background:#fff2f2;}
.t-photo{
  width: 100%;
  aspect-ratio: 4 / 3;      /* ou 16/9, ou 1/1 selon ton design */
  overflow: hidden;
  border-radius: 14px;
  border: 1px solid #efefef;
  background: #f6f6f6;      /* joli pendant le chargement */
}

.t-photo img{
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;        /* recadre sans déformer */
  -o-object-position: center;
     object-position: center;  /* centre par défaut */
  display: block;
}
@media (max-width: 980px){ .t-grid{-ms-grid-columns:(1fr)[2];grid-template-columns:repeat(2,1fr);} .t-filters form{-ms-grid-columns:1fr 1fr 1fr;grid-template-columns:1fr 1fr 1fr; } }
@media (max-width: 640px){ .t-grid{-ms-grid-columns:1fr;grid-template-columns:1fr;} .t-filters{position:static;} .t-filters form{-ms-grid-columns:1fr;grid-template-columns:1fr;} .t-filter-actions{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;} }

@media (max-width: 760px) { .form-grid { -ms-grid-columns: 1fr; grid-template-columns: 1fr; } }