/* ===================================================================
   FLOWTRIG — contact.css   (Contact page; reuses global + bd-* styles)
   =================================================================== */
.ct-page section{ padding:clamp(34px,4.5vw,60px) 0; }
.ct-hero{ text-align:center; padding:clamp(40px,5vw,66px) 0 0; }
.ct-hero .sec-kicker{ justify-content:center; }
.ct-hero h1{ font-family:var(--font-d); font-weight:600; letter-spacing:-.03em; font-size:clamp(32px,5vw,58px); line-height:1.05; margin:16px 0 0; }
.ct-hero .sub{ margin:16px auto 0; max-width:56ch; }

.ct-grid{ display:grid; grid-template-columns:1.15fr .85fr; gap:clamp(20px,3vw,34px); align-items:start; margin-top:clamp(26px,3.5vw,42px); }
@media(max-width:860px){ .ct-grid{ grid-template-columns:1fr; } }

/* form card (reuses .bd-* field styles) */
.ct-form-card{ border:1px solid var(--line); border-radius:22px; background:var(--surface); padding:clamp(20px,2.6vw,30px); box-shadow:var(--shadow-card); }
.ct-form-card h2{ font-family:var(--font-d); font-weight:600; font-size:21px; letter-spacing:-.02em; }
.ct-form-card .ch{ font-size:13px; color:var(--tx-mute); margin:6px 0 16px; }
.ct-form{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
@media(max-width:520px){ .ct-form{ grid-template-columns:1fr; } }

/* right rail */
.ct-side{ display:flex; flex-direction:column; gap:14px; }
.ct-cheeky{ position:relative; overflow:hidden; border:1px solid rgba(43,232,129,.28); border-radius:18px; padding:20px;
  background:radial-gradient(130% 100% at 100% 0%, color-mix(in oklab,var(--neon) 14%, var(--surface)), var(--surface) 65%); }
.ct-cheeky .k{ font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--neon); }
.ct-cheeky p{ font-family:var(--font-d); font-weight:500; font-size:18px; line-height:1.4; letter-spacing:-.01em; margin-top:8px; }
.ct-cheeky .live{ display:inline-flex; align-items:center; gap:7px; margin-top:13px; font-size:12px; color:var(--tx-soft); }
.ct-cheeky .live .d{ width:7px; height:7px; border-radius:50%; background:var(--neon); box-shadow:0 0 8px var(--neon); animation:pulse 1.8s infinite; }

.ct-detail{ border:1px solid var(--line); border-radius:16px; background:var(--surface); padding:8px; }
.ct-detail a, .ct-detail .item{ display:flex; align-items:center; gap:13px; padding:12px; border-radius:12px; transition:background .18s; }
.ct-detail a:hover{ background:var(--surface-2); }
.ct-detail .di{ width:38px; height:38px; flex:0 0 38px; border-radius:11px; background:var(--green-soft); color:var(--neon); display:flex; align-items:center; justify-content:center; }
.ct-detail .di svg{ width:18px; height:18px; }
.ct-detail .dt{ display:flex; flex-direction:column; gap:2px; }
.ct-detail .dt .l{ font-size:11px; color:var(--tx-mute); }
.ct-detail .dt .v{ font-size:14px; font-weight:600; }
.ct-detail .sep{ height:1px; background:var(--line-2); margin:0 12px; }

.ct-stats{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.ct-stat{ border:1px solid var(--line); border-radius:14px; background:var(--surface); padding:14px; }
.ct-stat .v{ font-family:var(--font-d); font-weight:600; font-size:22px; letter-spacing:-.02em; color:var(--neon-dim); }
.ct-stat .v .grad-green{ }
.ct-stat .l{ font-size:11.5px; color:var(--tx-mute); margin-top:2px; }

.ct-trust{ display:flex; align-items:center; gap:8px; font-size:12px; color:var(--tx-mute); padding:2px 4px; }
.ct-trust svg{ width:15px; height:15px; color:var(--neon); }
