/* ============================================================
   Contact — Baptiste & Magali  (raccord avec la home)
============================================================ */
:root{
  --gold:#E54B8D; --gold-lt:#F291B9;
  --navy:#043D64; --blue-2:#085C95; --blue-0:#02273F; --soft:#B9CFE0;
  --serif:'Besley', Georgia, 'Times New Roman', serif;
  --sans:'Roboto','Helvetica Neue', Arial, sans-serif;
  --jost:'Jost','Futura','Avenir Next','Trebuchet MS',system-ui,sans-serif;
  --fr:14px;
}
@media(max-width:760px){ :root{ --fr:9px } }

*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body.bm-contact{
  font-family:var(--sans);
  color:#fff;
  background:radial-gradient(120% 120% at 50% 0%, var(--blue-2) 0%, var(--navy) 42%, var(--blue-0) 100%);
  min-height:100vh;
  -webkit-font-smoothing:antialiased;
}
.bm-contact a{color:inherit;text-decoration:none;}

.cframe{
  min-height:100vh;
  padding:clamp(22px,4vw,54px) clamp(20px,5vw,70px);
  display:flex;flex-direction:column;gap:clamp(30px,5vw,64px);
}


/* main */
.cmain{max-width:1120px;width:100%;margin:0 auto;flex:1;}
.cintro{max-width:720px;margin-bottom:clamp(26px,4vw,44px);}
.ceyebrow{display:inline-block;font-family:var(--jost);font-weight:600;letter-spacing:.22em;font-size:12px;color:var(--gold-lt);margin-bottom:16px;}
.cintro h1{font-family:var(--serif);font-weight:500;line-height:1.04;font-size:clamp(34px,6vw,64px);letter-spacing:-.5px;}
.cintro h1 em{font-style:normal;color:var(--gold);}
.cintro p{margin-top:18px;font-size:clamp(15px,1.5vw,18px);line-height:1.6;color:var(--soft);max-width:600px;}

/* notes */
.cnote{border-radius:12px;padding:14px 18px;font-size:15px;margin-bottom:22px;max-width:720px;}
.cnote--ok{background:rgba(255,255,255,.12);border:1px solid var(--gold-lt);}
.cnote--err{background:rgba(229,75,141,.14);border:1px solid var(--gold);}

/* grid */
.cgrid{display:grid;grid-template-columns:1.35fr .9fr;gap:clamp(28px,4vw,60px);align-items:start;}
@media(max-width:860px){ .cgrid{grid-template-columns:1fr;} }

/* form */
.ccard{display:flex;flex-direction:column;gap:18px;}
.crow{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
@media(max-width:520px){ .crow{grid-template-columns:1fr;} }
.cfield{display:flex;flex-direction:column;gap:8px;}
.cfield label{font-family:var(--jost);font-weight:500;font-size:13px;letter-spacing:.05em;color:var(--soft);}
.cfield input,.cfield textarea{
  width:100%;font-family:var(--sans);font-size:16px;color:#fff;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(185,207,224,.35);
  border-radius:12px;padding:14px 16px;transition:border-color .25s, background .25s;
}
.cfield textarea{resize:vertical;min-height:150px;}
.cfield input::placeholder,.cfield textarea::placeholder{color:rgba(185,207,224,.6);}
.cfield input:focus,.cfield textarea:focus{outline:none;border-color:var(--gold);background:rgba(255,255,255,.10);}
.cbtn{
  align-self:flex-start;margin-top:6px;cursor:pointer;
  font-family:var(--jost);font-weight:600;letter-spacing:.04em;font-size:16px;color:#fff;
  background:var(--gold);border:none;border-radius:999px;padding:15px 34px;
  transition:transform .25s var(--fr,ease), background .25s, box-shadow .25s;
  box-shadow:0 10px 30px -12px rgba(229,75,141,.7);
}
.cbtn:hover{background:var(--gold-lt);transform:translateY(-2px);}

/* info */
.cinfo{display:flex;flex-direction:column;gap:26px;padding-top:6px;}
.cblock .clabel{display:block;font-family:var(--jost);font-weight:600;letter-spacing:.14em;font-size:11px;text-transform:uppercase;color:var(--gold-lt);margin-bottom:8px;}
.cblock p{font-size:16px;line-height:1.55;color:#fff;}
.cblock a{border-bottom:1px solid rgba(242,145,185,.5);transition:border-color .25s;}
.cblock a:hover{border-color:var(--gold);}
.cinfo .amp{color:var(--gold);}

/* footer */
.cfoot{margin-top:auto;padding-top:24px;font-size:13px;letter-spacing:.04em;color:var(--soft);text-align:center;border-top:1px solid rgba(185,207,224,.2);}
.cfoot .amp{color:var(--gold);}

/* liens légaux du footer */
.cfoot{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;}
.cfoot-links{display:flex;gap:18px;align-items:center;}
.cfoot-links a,.cfoot-links button{
  font-family:var(--sans);font-size:13px;color:var(--soft);
  background:none;border:none;padding:0;cursor:pointer;transition:color .25s;
}
.cfoot-links a:hover,.cfoot-links button:hover{color:var(--gold-lt);}
