@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Playfair+Display:ital,wght@0,500;1,500&display=swap');

.tcr-contact{
  --bg:#f5eee5;
  --card:#fffdf9;
  --brown:#b07d49;
  --ink:#292521;
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,58%) minmax(430px,42%)!important;
  width:100vw!important;
  max-width:none!important;
  min-height:760px!important;
  margin:0!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
  padding:72px 5vw!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
  background:var(--bg)!important;
  color:var(--ink)!important;
  font-family:'DM Sans',Arial,sans-serif!important;
}

/* Simplified version: no background image, no gradients, no visual artifacts. */
.tcr-contact:before,
.tcr-contact:after{
  display:none!important;
}

.tcr-contact-left{
  position:relative!important;
  z-index:2!important;
  grid-column:1!important;
  align-self:center!important;
  padding:20px 35px 20px 10%!important;
  box-sizing:border-box!important;
}
.tcr-contact-copy{width:100%!important;max-width:590px!important}

.tcr-script{
  font-family:'Playfair Display',Georgia,serif!important;
  font-style:italic!important;
  font-size:70px!important;
  line-height:1!important;
  letter-spacing:-1.5px!important;
  white-space:nowrap!important;
  margin:0 0 18px!important;
}
.tcr-script span{color:var(--brown)!important;font-size:40px!important;vertical-align:10px!important}
.tcr-line{width:95px!important;height:2px!important;background:var(--brown)!important;margin:0 0 27px!important}
.tcr-intro{max-width:520px!important;margin:0 0 35px!important;font-size:16px!important;line-height:1.7!important}

.tcr-links-title{
  font-family:'Playfair Display',Georgia,serif!important;
  font-style:italic!important;
  font-size:23px!important;
  margin:0 0 14px!important;
}
.tcr-links{display:grid!important;gap:0!important;max-width:510px!important}
.tcr-links a{
  display:flex!important;align-items:center!important;gap:13px!important;
  min-height:58px!important;padding:7px 8px!important;
  border-bottom:1px solid rgba(50,35,23,.12)!important;
  background:transparent!important;
  color:var(--ink)!important;text-decoration:none!important;
}
.tcr-links b{
  width:37px!important;height:37px!important;flex:none!important;
  display:grid!important;place-items:center!important;border-radius:50%!important;
  background:var(--brown)!important;color:#fff!important;
}
.tcr-links strong,.tcr-links small{display:block!important}
.tcr-links strong{font-size:14px!important}
.tcr-links small{font-size:12px!important;opacity:.72!important;margin-top:2px!important;line-height:1.35!important}

.tcr-form-card{
  position:relative!important;
  z-index:3!important;
  grid-column:2!important;
  align-self:center!important;
  margin:0 0 0 25px!important;
  max-width:590px!important;
  padding:43px 45px 41px!important;
  box-sizing:border-box!important;
  background:rgba(255,253,249,.98)!important;
  border:1px solid rgba(50,35,23,.07)!important;
  border-radius:20px!important;
  box-shadow:0 18px 48px rgba(70,48,29,.09)!important;
}
.tcr-form-card h2{
  font-family:'Playfair Display',Georgia,serif!important;
  font-size:35px!important;line-height:1.12!important;font-weight:500!important;
  margin:0 0 10px!important;
}
.tcr-form-intro{margin:0 0 24px!important;font-size:14px!important;line-height:1.55!important;color:#5b524b!important}
.tcr-form-card label{display:block!important;margin:16px 0 6px!important;font-size:14px!important;font-weight:600!important}
.tcr-form-card em{color:#a42c22!important;font-style:normal!important}
.tcr-form-card input,.tcr-form-card textarea{
  width:100%!important;box-sizing:border-box!important;border:1px solid #d7d0c8!important;
  border-radius:7px!important;background:#fff!important;padding:13px 14px!important;
  font:inherit!important;color:var(--ink)!important;
}
.tcr-form-card textarea{min-height:145px!important;resize:vertical!important}
.tcr-form-card button{
  margin-top:21px!important;border:0!important;border-radius:8px!important;
  background:var(--brown)!important;color:#fff!important;padding:14px 28px!important;
  font:600 15px 'DM Sans',sans-serif!important;cursor:pointer!important;
}

@media(max-width:1050px){
  .tcr-contact{grid-template-columns:1fr!important;padding:50px 28px!important}
  .tcr-contact-left{grid-column:1!important;padding:60px 10px 25px!important}
  .tcr-form-card{grid-column:1!important;margin:10px auto 0!important;width:min(640px,100%)!important}
}
@media(max-width:650px){
  .tcr-script{font-size:52px!important;white-space:normal!important}
  .tcr-contact{padding-left:20px!important;padding-right:20px!important}
  .tcr-contact-left{padding-left:5px!important}
  .tcr-form-card{padding:29px 22px!important}
}

.tcr-after-form{
  margin-top:18px;
  padding-top:14px;
  border-top:1px solid rgba(50,35,23,.10);
  text-align:center;
  color:#665b53;
  font-size:13px;
  line-height:1.45;
}
.tcr-after-form strong{
  display:block;
  color:#3c342e;
  font-family:'Playfair Display',Georgia,serif;
  font-style:italic;
  font-size:16px;
  font-weight:500;
}
.tcr-after-form p{margin:3px 0 0}
.tcr-success{margin-top:12px}

.tcr-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
.tcr-turnstile{margin-top:18px!important;min-height:65px!important}
.tcr-error{margin:0 0 18px!important;padding:12px 14px!important;border-radius:8px!important;background:#fff1ef!important;color:#8d2d23!important;font-size:13px!important;line-height:1.45!important}


/* ==========================================
   CORRECTION : le menu Astra doit passer
   au-dessus du formulaire de contact
   ========================================== */
#masthead,
#masthead .main-header-bar,
#masthead .ast-primary-header-bar,
#masthead .ast-header-navigation,
#masthead .main-header-menu,
#masthead .main-header-menu .sub-menu{
  position:relative!important;
  z-index:999999!important;
}

/* Le formulaire reste derrière le header */
.tcr-contact{
  z-index:1!important;
}

.tcr-form-card{
  z-index:2!important;
}
