/* =========================================================
   ÉCLORYA — CONTACT PREMIUM · 2026-09-18
   ========================================================= */

body.eclorya-contact-template {
  --ec-contact-ivory:#f6f1e7;
  --ec-contact-paper:#fbf8f2;
  --ec-contact-ink:#171510;
  --ec-contact-soft:#6d665f;
  --ec-contact-gold:#b39055;
  --ec-contact-gold-soft:#dfcda7;
  --ec-contact-clay:#a45e43;
  --ec-contact-line:rgba(39,31,22,.14);
  --ec-contact-shadow:0 24px 64px rgba(54,40,25,.10);
  background:var(--ec-contact-ivory);
}

body.eclorya-contact-template .content-area,
body.eclorya-contact-template .site-main,
body.eclorya-contact-template .entry-content {
  margin:0;
  padding:0;
}

.eclorya-contact {
  position:relative;
  overflow:hidden;
  color:var(--ec-contact-ink);
  background:
    radial-gradient(circle at 78% 22%, rgba(223,205,167,.18), transparent 27rem),
    linear-gradient(180deg,#f8f4eb 0%,#f5f0e7 100%);
  font-family:"Work Sans",Arial,sans-serif;
}

.eclorya-contact * { box-sizing:border-box; }
.eclorya-contact__shell { width:min(1120px,calc(100% - 48px)); margin:0 auto; position:relative; z-index:2; }
.eclorya-contact h1,.eclorya-contact h2,.eclorya-contact h3 { margin:0; color:var(--ec-contact-ink); font-family:"Bodoni Moda",Georgia,serif; font-weight:400; }
.eclorya-contact p { color:var(--ec-contact-soft); }
.eclorya-contact a { color:inherit; }
.eclorya-contact__gold-line { display:block; width:50px; height:1px; margin:18px auto 0; background:var(--ec-contact-gold); }
.eclorya-contact__gold-line--left { width:38px; margin:12px 0 0; }
.eclorya-contact__handnote { margin:0; color:var(--ec-contact-clay)!important; font-family:"La Belle Aurore",cursive; }

.eclorya-contact__flower { position:absolute; z-index:1; pointer-events:none; }
.eclorya-contact__flower img { display:block; width:100%; height:auto; }
.eclorya-contact__flower--top { left:-135px; top:-36px; width:390px; transform:rotate(-7deg); opacity:.92; }
.eclorya-contact__flower--bottom { right:-95px; bottom:18px; width:390px; opacity:.90; }

.eclorya-contact__hero { padding:72px 0 44px; text-align:center; }
.eclorya-contact__eyebrow { margin:0!important; color:#71747a!important; font-size:10px; font-weight:500; letter-spacing:.36em; text-transform:uppercase; }
.eclorya-contact__hero h1 { margin-top:24px; font-size:clamp(46px,5.4vw,76px); line-height:1.02; letter-spacing:-.035em; }
.eclorya-contact__lead { margin:18px auto 0; max-width:660px; font-size:15px; line-height:1.7; }
.eclorya-contact__hero-note { position:absolute; right:0; top:38px; width:240px; text-align:left; font-size:25px; line-height:1.15; transform:rotate(-4deg); }

.eclorya-contact__main { padding:26px 0 26px; }
.eclorya-contact__grid { display:grid; grid-template-columns:minmax(330px,.86fr) minmax(460px,1.14fr); gap:82px; align-items:start; }
.eclorya-contact__info { position:relative; min-height:720px; padding:18px 0 0 68px; }
.eclorya-contact__vertical-words { position:absolute; left:0; top:5px; margin:0!important; color:#9b948b!important; font-size:10px; line-height:2.15; letter-spacing:.34em; }
.eclorya-contact__vertical-words::after { content:""; display:block; width:1px; height:24px; margin-top:10px; background:var(--ec-contact-gold); }
.eclorya-contact__info h2 { font-size:42px; line-height:1.05; }
.eclorya-contact__intro { margin:22px 0 30px; font-size:14px; line-height:1.7; }

.eclorya-contact__details { display:grid; gap:26px; }
.eclorya-contact__detail { display:grid; grid-template-columns:48px minmax(0,1fr); gap:18px; align-items:start; }
.eclorya-contact__icon { width:48px; height:48px; display:grid; place-items:center; border-radius:50%; background:#e9ddc5; color:var(--ec-contact-ink); }
.eclorya-contact__icon svg { width:23px; height:23px; fill:none; stroke:currentColor; stroke-width:1.45; stroke-linecap:round; stroke-linejoin:round; }
.eclorya-contact__detail h3 { font-size:22px; line-height:1.15; }
.eclorya-contact__detail p { margin:5px 0 0; font-size:13px; line-height:1.45; }
.eclorya-contact__detail a { display:inline-block; margin-top:5px; color:var(--ec-contact-gold); font-size:15px; text-decoration:none; }
.eclorya-contact__detail a:hover { text-decoration:underline; text-underline-offset:3px; }

.eclorya-contact__before { margin-top:34px; padding-top:22px; border-top:1px solid var(--ec-contact-gold); }
.eclorya-contact__before h3 { font-size:25px; }
.eclorya-contact__before > p { margin:6px 0 8px; font-size:12px; line-height:1.6; }
.eclorya-contact__before nav { display:grid; }
.eclorya-contact__before nav a { display:flex; align-items:center; justify-content:space-between; min-height:42px; border-bottom:1px solid rgba(179,144,85,.35); text-decoration:none; font-family:"Bodoni Moda",Georgia,serif; font-size:18px; }
.eclorya-contact__before nav a span { color:var(--ec-contact-gold); font-family:Arial,sans-serif; font-size:26px; }
.eclorya-contact__medical { display:flex; gap:11px; margin:22px 0 0; max-width:360px; font-size:11px; line-height:1.55; }
.eclorya-contact__medical span { flex:0 0 auto; color:var(--ec-contact-gold); font-size:27px; line-height:1; }

.eclorya-contact__form-card { position:relative; z-index:3; padding:38px 42px 36px; border:1px solid rgba(255,255,255,.82); border-radius:20px; background:rgba(255,255,255,.77); box-shadow:var(--ec-contact-shadow); backdrop-filter:blur(3px); }
.eclorya-contact__form-card h2 { font-size:39px; line-height:1.05; }
.eclorya-contact__form-content { margin-top:26px; }
.eclorya-contact__form-missing { padding:20px; border:1px dashed rgba(164,94,67,.35); background:#fffaf3; font-size:13px; line-height:1.6; }

/* WPForms — on garde la logique du formulaire existant et on ne change que son habillage. */
.eclorya-contact__form-card .wpforms-container { margin:0!important; }
.eclorya-contact__form-card .wpforms-title,
.eclorya-contact__form-card .wpforms-description { display:none!important; }
.eclorya-contact__form-card .wpforms-field { padding:0 0 18px!important; }
.eclorya-contact__form-card .wpforms-field-label { margin:0 0 7px!important; color:#30343c!important; font-family:"Work Sans",Arial,sans-serif!important; font-size:12px!important; font-weight:500!important; line-height:1.35!important; }
.eclorya-contact__form-card .wpforms-required-label { color:#a44f3a!important; }
.eclorya-contact__form-card input[type="text"],
.eclorya-contact__form-card input[type="email"],
.eclorya-contact__form-card input[type="tel"],
.eclorya-contact__form-card input[type="url"],
.eclorya-contact__form-card select,
.eclorya-contact__form-card textarea { width:100%!important; max-width:none!important; min-height:44px!important; padding:10px 12px!important; border:1px solid #ccd0d5!important; border-radius:2px!important; background:rgba(255,255,255,.84)!important; color:#252a32!important; box-shadow:none!important; font-family:"Work Sans",Arial,sans-serif!important; font-size:13px!important; }
.eclorya-contact__form-card textarea { min-height:118px!important; resize:vertical!important; }
.eclorya-contact__form-card input:focus,
.eclorya-contact__form-card select:focus,
.eclorya-contact__form-card textarea:focus { border-color:var(--ec-contact-gold)!important; outline:none!important; box-shadow:0 0 0 1px var(--ec-contact-gold)!important; }
.eclorya-contact__form-card .wpforms-field-checkbox ul,
.eclorya-contact__form-card .wpforms-field-gdpr-checkbox ul { margin:0!important; padding:0!important; }
.eclorya-contact__form-card .wpforms-field-checkbox li,
.eclorya-contact__form-card .wpforms-field-gdpr-checkbox li { display:flex!important; gap:9px!important; align-items:flex-start!important; margin:0!important; }
.eclorya-contact__form-card .wpforms-field-checkbox input,
.eclorya-contact__form-card .wpforms-field-gdpr-checkbox input { margin-top:3px!important; accent-color:var(--ec-contact-gold); }
.eclorya-contact__form-card .wpforms-field-checkbox label,
.eclorya-contact__form-card .wpforms-field-gdpr-checkbox label { color:#6d665f!important; font-size:11px!important; line-height:1.55!important; }
.eclorya-contact__form-card .wpforms-submit-container { margin:2px 0 0!important; padding:0!important; }
.eclorya-contact__form-card button[type="submit"],
.eclorya-contact__form-card .wpforms-submit { width:100%!important; min-height:50px!important; border:1px solid #111!important; border-radius:2px!important; background:#0c0c0c!important; color:#fff!important; box-shadow:none!important; font-family:"Work Sans",Arial,sans-serif!important; font-size:14px!important; font-weight:400!important; letter-spacing:.01em!important; transition:.2s ease!important; }
.eclorya-contact__form-card button[type="submit"]:hover,
.eclorya-contact__form-card .wpforms-submit:hover { border-color:var(--ec-contact-clay)!important; background:var(--ec-contact-clay)!important; }
.eclorya-contact__form-card .wpforms-error { color:#9f4637!important; font-size:11px!important; }
.eclorya-contact__form-card em.wpforms-error { margin-top:4px!important; }

.eclorya-contact__form-signature { display:grid; justify-items:center; gap:7px; margin-top:24px; color:var(--ec-contact-gold); text-align:center; }
.eclorya-contact__form-signature span { font-size:27px; }
.eclorya-contact__form-signature p { margin:0!important; color:#8b8580!important; font-size:8px; letter-spacing:.30em; text-transform:uppercase; }

.eclorya-contact__story { padding:24px 0 10px; }
.eclorya-contact__story-grid { display:flex; align-items:flex-end; gap:24px; min-height:300px; }
.eclorya-contact__story-visual { position:relative; width:520px; max-width:58%; }
.eclorya-contact__story-visual img { display:block; width:390px; max-width:100%; height:auto; margin:0 auto; filter:sepia(.16) saturate(.72); }
.eclorya-contact__story-visual .eclorya-contact__handnote { position:absolute; left:-18px; top:0; width:190px; font-size:23px; line-height:1.18; transform:rotate(-5deg); }
.eclorya-contact__story-words { margin-bottom:76px; color:#8b837b; font-size:9px; line-height:2; letter-spacing:.32em; }

.eclorya-contact__social { position:relative; z-index:4; padding:18px 0 46px; }
.eclorya-contact__social-title { display:grid; grid-template-columns:minmax(80px,1fr) auto minmax(80px,1fr); gap:18px; align-items:center; max-width:620px; margin:0 auto; }
.eclorya-contact__social-title span { height:1px; background:rgba(179,144,85,.55); }
.eclorya-contact__social-title p { margin:0!important; font-family:"Bodoni Moda",Georgia,serif; font-size:15px; font-style:italic; }
.eclorya-contact__social-links { display:flex; flex-wrap:wrap; justify-content:center; gap:28px; margin-top:15px; color:#504941; font-family:"Bodoni Moda",Georgia,serif; font-size:14px; }
.eclorya-contact__social-links span::before { content:"•"; margin-right:8px; color:var(--ec-contact-gold); }

@media (max-width:980px) {
  .eclorya-contact__hero-note { position:relative; right:auto; top:auto; width:auto; margin:26px auto 0; text-align:center; transform:rotate(-2deg); }
  .eclorya-contact__grid { grid-template-columns:1fr; gap:44px; }
  .eclorya-contact__info { min-height:0; padding-left:64px; }
  .eclorya-contact__form-card { max-width:720px; width:100%; margin:0 auto; }
  .eclorya-contact__flower--top { width:300px; left:-120px; opacity:.70; }
  .eclorya-contact__flower--bottom { width:330px; right:-135px; opacity:.65; }
}

@media (max-width:680px) {
  .eclorya-contact__shell { width:min(100% - 24px,1120px); }
  .eclorya-contact__flower--top { width:190px; left:-96px; top:32px; opacity:.50; }
  .eclorya-contact__flower--bottom { width:215px; right:-100px; bottom:72px; opacity:.42; }
  .eclorya-contact__hero { padding:52px 0 24px; }
  .eclorya-contact__hero h1 { margin-top:20px; font-size:44px; }
  .eclorya-contact__lead { font-size:14px; }
  .eclorya-contact__hero-note { font-size:22px; }
  .eclorya-contact__main { padding-top:8px; }
  .eclorya-contact__info { padding:0; }
  .eclorya-contact__vertical-words { display:none; }
  .eclorya-contact__info h2 { font-size:36px; }
  .eclorya-contact__detail { grid-template-columns:44px minmax(0,1fr); gap:14px; }
  .eclorya-contact__icon { width:44px; height:44px; }
  .eclorya-contact__form-card { padding:28px 20px 26px; border-radius:15px; }
  .eclorya-contact__form-card h2 { font-size:34px; }
  .eclorya-contact__story { padding-top:18px; }
  .eclorya-contact__story-grid { min-height:0; display:block; }
  .eclorya-contact__story-visual { width:100%; max-width:none; padding-top:90px; }
  .eclorya-contact__story-visual img { width:min(100%,370px); }
  .eclorya-contact__story-visual .eclorya-contact__handnote { left:4px; top:8px; width:200px; font-size:22px; }
  .eclorya-contact__story-words { display:none; }
  .eclorya-contact__social { padding-bottom:38px; }
  .eclorya-contact__social-title { grid-template-columns:44px auto 44px; gap:10px; }
  .eclorya-contact__social-title p { font-size:13px; }
  .eclorya-contact__social-links { gap:16px; font-size:13px; }
}


/* =========================================================
   ÉCLORYA — CONTACT · CORRECTIF V3 · 2026-09-18
   Hero + formulaire robuste (WPForms ou secours natif).
   ========================================================= */

.eclorya-contact__hero h1 {
  max-width:850px;
  margin-left:auto;
  margin-right:auto;
}

/* Formulaire natif de secours : reprend exactement l'habillage WPForms. */
.eclorya-contact-native { display:grid; gap:18px; }
.eclorya-contact-native__field { display:grid; gap:7px; color:#30343c; font-size:12px; font-weight:500; }
.eclorya-contact-native__field b { color:#a44f3a; font-weight:600; }
.eclorya-contact-native__field input,
.eclorya-contact-native__field textarea {
  width:100%; max-width:none; min-height:44px; padding:10px 12px;
  border:1px solid #ccd0d5; border-radius:2px; background:rgba(255,255,255,.84);
  color:#252a32; box-shadow:none; font-family:"Work Sans",Arial,sans-serif; font-size:13px;
}
.eclorya-contact-native__field textarea { min-height:118px; resize:vertical; }
.eclorya-contact-native__field input:focus,
.eclorya-contact-native__field textarea:focus { border-color:var(--ec-contact-gold); outline:none; box-shadow:0 0 0 1px var(--ec-contact-gold); }
.eclorya-contact-native__consent { display:flex; gap:10px; align-items:flex-start; color:#6d665f; font-size:11px; line-height:1.55; }
.eclorya-contact-native__consent input { margin-top:3px; accent-color:var(--ec-contact-gold); }
.eclorya-contact-native__consent a { color:var(--ec-contact-gold); text-underline-offset:2px; }
.eclorya-contact-native__submit { width:100%; min-height:50px; border:1px solid #111; border-radius:2px; background:#0c0c0c; color:#fff; cursor:pointer; font-size:14px; transition:.2s ease; }
.eclorya-contact-native__submit:hover { border-color:var(--ec-contact-clay); background:var(--ec-contact-clay); }
.eclorya-contact-native__submit span { margin-left:12px; }
.eclorya-contact-native__hp { position:absolute!important; width:1px!important; height:1px!important; overflow:hidden!important; clip:rect(0 0 0 0)!important; white-space:nowrap!important; }
.eclorya-contact-native__notice { margin:0 0 18px; padding:12px 14px; border:1px solid var(--ec-contact-line); font-size:12px; line-height:1.55; }
.eclorya-contact-native__notice--success { border-color:rgba(92,119,75,.35); background:rgba(92,119,75,.08); color:#415338; }
.eclorya-contact-native__notice--error { border-color:rgba(164,94,67,.35); background:rgba(164,94,67,.07); color:#7b3f30; }

@media (min-width:1201px) {
  .eclorya-contact__hero-note {
    right:-128px;
    top:20px;
    width:205px;
    font-size:23px;
  }
}

@media (min-width:981px) {
  .eclorya-contact__info { min-height:0; }
  .eclorya-contact__story { padding-top:4px; }
  .eclorya-contact__story-grid { min-height:250px; }
}

@media (min-width:981px) and (max-width:1200px) {
  .eclorya-contact__hero h1 { max-width:760px; }
  .eclorya-contact__hero-note {
    position:relative;
    right:auto;
    top:auto;
    width:auto;
    max-width:330px;
    margin:24px auto 0;
    text-align:center;
    transform:rotate(-2deg);
  }
}

@media (max-width:980px) {
  .eclorya-contact__hero h1 { max-width:720px; }
}

@media (max-width:680px) {
  .eclorya-contact__hero h1 { max-width:100%; }
  .eclorya-contact-native { gap:15px; }
}
