/* ==========================================================================
   Algo Data · charte Éditeur v1.1 · ad-contact.css
   La page Contact (/contact), première version du 09/10/2026 : les coordonnées, sans formulaire
   (le formulaire attend trois envois de test reçus, copiés et entrés au CRM : arbo_cible v1 §2.6).
   Se charge après ad-4d.css, dont elle reprend l'ouverture. Ne sert qu'à cette page.
   Requêtes écrites en max-width : aucun « < » dans la feuille.
   ========================================================================== */

/* 1. Ouverture : le titre et le chapeau côte à côte, alignés en tête (l'objet de la demande s'ajoute sous le chapeau) */
.ad-ct-tete { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: var(--ad-e-6) clamp(32px, 5vw, 80px); align-items: start; }
.ad-ct-h1 { max-width: 12em; text-wrap: balance; }
.ad-ct-intro { display: grid; gap: var(--ad-e-5); justify-items: start; padding-top: clamp(6px, .8vw, 14px); }
.ad-ct-intro .ad-chapeau { margin: 0; text-wrap: pretty; }

/* l'objet de la demande, posé par le script quand on arrive d'un bouton du site ; la planète en pastille,
   comme l'encart de Mail-ADNS (le soleil n'est jamais un filet sur fond clair, DESIGN §1.2, passe Impeccable du 09/10) */
.ad-ct-demande { position: relative; display: grid; gap: 2px; margin: 0; padding: var(--ad-e-3) var(--ad-e-5) var(--ad-e-3) calc(var(--ad-e-4) + 18px);
                 border-radius: var(--ad-r-2); background: var(--ad-surface); box-shadow: inset 0 0 0 1px var(--ad-filet); }
.ad-ct-demande::before { content: ""; position: absolute; left: var(--ad-e-4); top: calc(var(--ad-e-3) + .55em); width: 10px; height: 10px;
                         border-radius: 50%; background: var(--ad-planete); }
.ad-ct-demande__rubrique { font-size: var(--ad-t-legende); color: var(--ad-texte-doux); }
.ad-ct-demande strong { font-weight: 600; color: var(--ad-texte); }

/* 2. Trois moyens : un registre ouvert sous filet (grammaire des situations de l'Ingénierie) --- */
.ad-ct-ouverture { padding-bottom: clamp(40px, 3vw + 24px, 72px); }
.ad-ct-coordonnees { padding-bottom: clamp(64px, 6vw + 24px, 128px); }
.ad-ct-moyens { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--ad-e-8) clamp(24px, 3vw, 48px); }
.ad-ct-moyen { display: grid; align-content: start; gap: var(--ad-e-3); padding-top: var(--ad-e-5); border-top: 1px solid var(--ad-filet-fort); }
.ad-ct-rubrique { margin: 0; font-family: var(--ad-police-texte); font-size: var(--ad-t-petit); font-weight: 560; line-height: 1.4;
                  letter-spacing: 0; color: var(--ad-texte-doux); }
.ad-ct-valeur { margin: 0; font-family: var(--ad-police-titre); font-size: var(--ad-t-titre-3); font-weight: 600; line-height: 1.2;
                letter-spacing: -0.01em; overflow-wrap: anywhere; }
.ad-ct-valeur a { color: var(--ad-texte); text-decoration-thickness: 1px; text-underline-offset: .2em; }
.ad-ct-moyen .ad-petit { margin: 0; }
.ad-ct-adresse { display: grid; font-style: normal; font-size: var(--ad-t-texte); line-height: 1.5; color: var(--ad-texte); }
.ad-ct-adresse > span:first-child { font-weight: 600; }

/* 2 bis. [2026-10-09] R&D : le formulaire gnetresa en iframe ; hauteur posée par le script de la page
   (message de la page profil), 640 px tant qu'elle n'est pas arrivée */
.ad-ct-coordonnees:has(+ .ad-ct-formulaire) { padding-bottom: clamp(32px, 3vw + 16px, 64px); }
.ad-ct-formulaire { padding-bottom: clamp(64px, 6vw + 24px, 128px); }
.ad-ct-iframe { display: block; width: 100%; height: 640px; border: 0; border-radius: var(--ad-r-2);
                background: var(--ad-surface); box-shadow: inset 0 0 0 1px var(--ad-filet); }

/* 3. Survols (≤ 150 ms, couleur seulement) ---------------------------------------------------- */
@media (hover: hover) {
  .ad-ct-moyen { transition: border-color .12s ease; }
  .ad-ct-moyen:hover { border-top-color: var(--ad-texte); }
  .ad-ct-valeur a { transition: text-decoration-color .12s ease; }
  .ad-ct-valeur a:hover { text-decoration-color: currentColor; }
}

/* 4. Tablette et téléphone --------------------------------------------------------------------- */
@media (max-width: 960px) {
  .ad-ct-tete { grid-template-columns: minmax(0, 1fr); align-items: start; }
  .ad-ct-intro { padding-top: 0; }
}
@media (max-width: 760px) {
  .ad-ct-moyens { grid-template-columns: minmax(0, 1fr); gap: var(--ad-e-6); }
}
