/* =====================================================================
   CBS ATELIER — Page Contact / Devis. Préfixe .cbs-ct- (contact).
   Layout 2 colonnes formulaire + coordonnées. Sections engagements et FAQ.
   ===================================================================== */

/* ---- Hero contact ----------------------------------------------- */
.cbs-ct-hero{position:relative;overflow:hidden;color:#fff;
  background:linear-gradient(135deg,var(--navy-deep) 0%,var(--navy) 55%,var(--navy-2) 100%);
  padding:clamp(60px,7vw,100px) 0 clamp(48px,5.5vw,80px)}
.cbs-ct-hero::before{content:"";position:absolute;inset:0;opacity:.4;pointer-events:none;
  background-image:radial-gradient(rgba(255,255,255,.10) 1.4px,transparent 1.4px);background-size:26px 26px;
  -webkit-mask:radial-gradient(120% 100% at 85% 0%,#000,transparent 70%);
  mask:radial-gradient(120% 100% at 85% 0%,#000,transparent 70%)}
.cbs-ct-hero__in{position:relative;max-width:780px}
.cbs-ct-hero h1{font-size:clamp(2rem,1.3rem + 2.5vw,3.2rem);color:#fff;
  margin:.35em 0 .55em;letter-spacing:-.025em;line-height:1.08}
.cbs-ct-hero p{font-size:clamp(1.05rem,.95rem + .4vw,1.18rem);color:#c6d2e6;
  max-width:60ch;line-height:1.6;margin:0 0 1.4rem}
.cbs-ct-hero__quick{display:flex;flex-wrap:wrap;gap:14px;margin-top:1.4rem}
.cbs-ct-hero__quick a{display:inline-flex;align-items:center;gap:10px;padding:11px 18px;
  background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.22);border-radius:999px;
  font-weight:600;font-size:.94rem;color:#fff;transition:.2s var(--ease);backdrop-filter:blur(6px)}
.cbs-ct-hero__quick a:hover{background:var(--accent);border-color:var(--accent)}
.cbs-ct-hero__quick svg{width:17px;height:17px}

/* ---- Section formulaire + coordonnées -------------------------- */
.cbs-ct-main{padding:clamp(50px,6vw,90px) 0 clamp(64px,8vw,116px);background:var(--paper)}
.cbs-ct-main__in{display:grid;grid-template-columns:1.5fr 1fr;gap:clamp(38px,5vw,72px);align-items:start}
.cbs-ct-formwrap{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);
  padding:clamp(28px,4vw,46px);box-shadow:var(--sh-sm)}
.cbs-ct-formwrap h2{font-size:clamp(1.5rem,1.1rem + 1.2vw,1.95rem);color:var(--navy);margin:0 0 .5rem}
.cbs-ct-formwrap>p{color:var(--body);font-size:1rem;margin:0 0 1.6rem;line-height:1.55}
/* Surcharge sobre du formulaire existant pour mieux respirer ici */
.cbs-ct-formwrap .cbs-form-front{background:transparent;border:0;padding:0;box-shadow:none;max-width:none;margin:0}
.cbs-ct-formwrap .cbs-form-front button{background:var(--accent);color:#fff;border:0;
  padding:14px 26px;border-radius:var(--r);font-weight:700;font-size:1rem;cursor:pointer;
  transition:.2s var(--ease);margin-top:6px}
.cbs-ct-formwrap .cbs-form-front button:hover{background:var(--accent-700);transform:translateY(-2px);
  box-shadow:0 16px 30px -14px rgba(232,71,47,.6)}

.cbs-ct-side{display:grid;gap:18px;position:sticky;top:90px}
.cbs-ct-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);
  padding:28px 28px 26px;transition:border-color .25s,box-shadow .25s}
.cbs-ct-card:hover{border-color:transparent;box-shadow:var(--sh-sm)}
.cbs-ct-card__ico{display:inline-flex;width:42px;height:42px;border-radius:12px;
  align-items:center;justify-content:center;background:var(--tint);color:var(--accent);margin-bottom:14px}
.cbs-ct-card__ico svg{width:20px;height:20px}
.cbs-ct-card h3{font-size:.84rem;text-transform:uppercase;letter-spacing:.14em;font-weight:700;
  color:var(--muted);margin:0 0 8px}
.cbs-ct-card__val{font-family:var(--ff-display);font-size:1.22rem;font-weight:700;color:var(--navy);
  display:block;line-height:1.3;margin-bottom:6px;letter-spacing:.01em}
.cbs-ct-card a.cbs-ct-card__val:hover{color:var(--accent)}
.cbs-ct-card__sub{color:var(--body);font-size:.92rem;line-height:1.5;margin:0}
.cbs-ct-card--hi{background:var(--navy);color:#e7ecf6;border-color:transparent}
.cbs-ct-card--hi h3{color:#aebed9}
.cbs-ct-card--hi .cbs-ct-card__val{color:#fff}
.cbs-ct-card--hi a.cbs-ct-card__val:hover{color:#7fd8e6}
.cbs-ct-card--hi .cbs-ct-card__sub{color:#aebed9}
.cbs-ct-card--hi .cbs-ct-card__ico{background:rgba(255,255,255,.12);color:#fff}

/* ---- Section engagements --------------------------------------- */
.cbs-ct-pledge{padding:clamp(60px,7vw,100px) 0;background:var(--tint)}
.cbs-ct-pledge__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.cbs-ct-pledge__item{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);
  padding:30px 26px 28px}
.cbs-ct-pledge__n{font-family:var(--ff-display);font-size:1.4rem;font-weight:800;color:var(--accent);
  display:block;margin-bottom:8px;line-height:1}
.cbs-ct-pledge__item h3{font-size:1.06rem;color:var(--navy);margin:0 0 .4rem}
.cbs-ct-pledge__item p{color:var(--body);font-size:.93rem;line-height:1.5;margin:0}

/* ---- Section FAQ contact (réutilise cbs-acc) ------------------- */
.cbs-ct-faq{padding:clamp(64px,8vw,116px) 0;background:var(--paper)}
.cbs-ct-faq__in{max-width:920px;margin:0 auto}

/* ---- Section plan d'accès -------------------------------------- */
.cbs-ct-place{padding:clamp(60px,7vw,100px) 0;background:var(--tint)}
.cbs-ct-place__in{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(38px,5vw,72px);align-items:center}
.cbs-ct-place__copy h2{font-size:clamp(1.7rem,1.2rem + 1.6vw,2.3rem);color:var(--navy);margin:0 0 1rem;line-height:1.15}
.cbs-ct-place__copy p{color:var(--body);font-size:1.04rem;line-height:1.65;margin:0 0 1rem}
.cbs-ct-place__bullets{margin:1.6rem 0 0;display:grid;gap:12px}
.cbs-ct-place__bullets li{display:flex;align-items:flex-start;gap:12px;color:var(--body);font-size:.97rem}
.cbs-ct-place__bullets svg{width:20px;height:20px;color:var(--accent);flex:0 0 20px;margin-top:2px}
.cbs-ct-place__map{position:relative;background:var(--paper);border:1px solid var(--line);
  border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-sm)}
.cbs-ct-place__map iframe{display:block;width:100%;height:420px;border:0}

/* ---- Section CTA téléphone direct ------------------------------ */
.cbs-ct-phone{padding:clamp(56px,6vw,90px) 0;background:#fff}
.cbs-ct-phone__card{background:linear-gradient(135deg,var(--navy-deep),var(--navy));color:#fff;
  border-radius:var(--r-lg);padding:clamp(38px,5vw,68px);display:grid;
  grid-template-columns:auto 1fr auto;gap:clamp(20px,3vw,40px);align-items:center;box-shadow:var(--sh)}
.cbs-ct-phone__ico{width:64px;height:64px;border-radius:50%;background:var(--accent);
  display:grid;place-items:center;flex:0 0 64px;color:#fff}
.cbs-ct-phone__ico svg{width:30px;height:30px}
.cbs-ct-phone__copy h2{margin:0 0 6px;font-size:clamp(1.35rem,1.05rem + 1vw,1.85rem);color:#fff;line-height:1.2}
.cbs-ct-phone__copy p{margin:0;color:#c4cfe4;font-size:1rem}
.cbs-ct-phone__num{font-family:var(--ff-display);font-size:clamp(1.4rem,1.1rem + 1vw,1.8rem);
  font-weight:800;color:#fff;letter-spacing:.01em;white-space:nowrap}
.cbs-ct-phone__num:hover{color:#7fd8e6}

/* ====================================================================
   RESPONSIVE
   ==================================================================== */
@media (max-width:1024px){
  .cbs-ct-main__in,.cbs-ct-place__in{grid-template-columns:1fr;gap:30px}
  .cbs-ct-side{position:static;order:-1}
  .cbs-ct-pledge__grid{grid-template-columns:repeat(2,1fr)}
  .cbs-ct-phone__card{grid-template-columns:1fr;text-align:center;gap:18px}
  .cbs-ct-phone__ico{margin:0 auto}
}
@media (max-width:680px){
  .cbs-ct-pledge__grid{grid-template-columns:1fr}
  .cbs-ct-place__map iframe{height:300px}
}
