/* Public contact page */
.contactPage{min-height:100svh;padding:150px 7vw 90px;background:
radial-gradient(circle at 13% 18%,rgba(39,137,180,.18),transparent 31%),
radial-gradient(circle at 86% 78%,rgba(173,132,58,.12),transparent 28%),#020a14;color:#eef7fb;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);gap:42px;align-items:start}
.contactIntro{padding-top:24px}.contactIntro h1{max-width:900px;margin:22px 0 28px;font:400 clamp(58px,7vw,112px)/.89 Georgia,serif;letter-spacing:-.052em}.contactIntro h1 em{color:#6ac4eb;font-style:italic}.contactIntro>p:not(.anSectionNo){max-width:720px;color:#9fb5c4;font-size:20px;line-height:1.7}
.contactDirect{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:760px;margin-top:42px}.contactDirect a{display:grid;grid-template-columns:1fr auto;gap:6px 16px;padding:18px 20px;border:1px solid #263f53;border-radius:16px;background:rgba(6,20,34,.56);color:#fff;text-decoration:none;transition:.2s ease}.contactDirect a:hover{border-color:#55c9eb;transform:translateY(-2px)}.contactDirect span{grid-column:1/-1;color:#6ac4eb;font-size:.7rem;font-weight:800;letter-spacing:.16em}.contactDirect strong{font-size:1rem;overflow-wrap:anywhere}.contactDirect b{color:#6ac4eb}
.contactPanel,.contactExchange{border:1px solid #264158;border-radius:26px;background:rgba(5,20,34,.8);backdrop-filter:blur(12px)}.contactPanel{padding:34px}.contactPanel h2,.contactExchange h2{margin:10px 0 16px;font:400 clamp(34px,4vw,54px)/1 Georgia,serif;letter-spacing:-.035em}.contactPanel>p:not(.anSectionNo),.contactExchange>p:not(.anSectionNo){color:#9fb5c4;line-height:1.7}
.contactForm{display:grid;gap:16px;margin-top:28px}.contactForm label{display:grid;gap:7px;color:#c8d7df;font-size:.86rem}.contactForm label small{display:inline;color:#758c9d;font-size:.75rem}.contactForm input,.contactForm textarea{box-sizing:border-box;width:100%;padding:14px 15px;border:1px solid #385269;border-radius:11px;background:#061422;color:#fff;font:inherit;resize:vertical}.contactForm input:focus,.contactForm textarea:focus{outline:2px solid #4dc4eb;outline-offset:1px;border-color:transparent}.contactFormTwo{display:grid;grid-template-columns:1fr 1fr;gap:14px}.contactPrivacy{margin:0;color:#7890a1;font-size:.8rem;line-height:1.55}.contactForm button{padding:15px 20px;background:#4dc4eb;color:#031120;font-weight:800}.contactSuccess{padding:14px 16px;border:1px solid #286f66;border-radius:12px;background:#0d322e;color:#c8f4e9!important}
.contactActions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.contactActions a,.contactExchange>a{display:inline-flex;align-items:center;justify-content:center;padding:13px 18px;border:1px solid #4dc4eb;border-radius:999px;color:#fff;text-decoration:none}.contactActions .contactPrimary,.contactExchange>a{background:#4dc4eb;color:#031120;font-weight:800}

/* Carte numerique: placement explicite pour eviter que le CTA tombe dans la colonne du logo */
.contactExchange{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:76px minmax(230px,.75fr) minmax(280px,1.25fr) max-content;
  grid-template-areas:
    "mark label copy action"
    "mark title copy action";
  column-gap:28px;
  row-gap:8px;
  align-items:center;
  padding:28px 30px;
  margin-top:4px;
  overflow:hidden
}
.contactExchangeMark{grid-area:mark;width:66px;height:66px;border:1px solid #4dc4eb;border-radius:50%;display:grid;place-items:center;color:#4dc4eb;font-weight:900;letter-spacing:.08em}
.contactExchange .anSectionNo{grid-area:label;margin:0;align-self:end}
.contactExchange h2{grid-area:title;margin:0;font-size:clamp(30px,3vw,44px);align-self:start}
.contactExchange>p:not(.anSectionNo){grid-area:copy;margin:0;min-width:0;overflow-wrap:anywhere}
.contactExchange>a{grid-area:action;justify-self:end;width:max-content;max-width:100%;box-sizing:border-box;white-space:nowrap}
.siteHeader nav a[aria-current="page"]{color:#55c9eb}

@media(max-width:1180px){
  .contactExchange{
    grid-template-columns:76px minmax(0,1fr) max-content;
    grid-template-areas:
      "mark label action"
      "mark title action"
      "mark copy action"
  }
}
@media(max-width:980px){
  .contactPage{grid-template-columns:1fr;padding-top:125px}
  .contactPanel{order:2}
  .contactExchange{
    order:3;
    grid-template-columns:72px minmax(0,1fr);
    grid-template-areas:
      "mark label"
      "mark title"
      ". copy"
      ". action"
  }
  .contactExchange>a{justify-self:start}
  .contactDirect{grid-template-columns:1fr}
}
@media(max-width:620px){
  .contactPage{padding:110px 22px 70px}
  .contactIntro h1{font-size:50px}
  .contactIntro>p:not(.anSectionNo){font-size:17px}
  .contactPanel{padding:24px 18px}
  .contactFormTwo{grid-template-columns:1fr}
  .contactExchange{
    grid-template-columns:1fr;
    grid-template-areas:
      "mark"
      "label"
      "title"
      "copy"
      "action";
    padding:24px 20px
  }
  .contactExchange>a{white-space:normal}
}
