.ph{text-align:center}
.ph::before{top:50%;left:50%;transform:translate(-50%,-50%);width:60vw;height:60vw;background:radial-gradient(circle,rgba(198,241,53,.035),transparent 50%)}
.phs{max-width:520px;margin:0 auto}

.cg{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start}
.cic{display:grid;gap:1.1rem}
.ci{display:flex;gap:1.2rem;align-items:center;padding:1.5rem;background:var(--bg3);border:1px solid var(--bd);border-radius:var(--rs);transition:all .3s var(--e)}
.ci:hover{border-color:var(--acm);transform:translateX(4px)}
.cii{width:48px;height:48px;border-radius:12px;background:var(--acd);display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}
.cil{font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;color:var(--tx3);margin-bottom:.2rem;font-weight:500}
.civ{font-size:.9rem;font-weight:400}
.civ a{color:var(--tx);transition:color .3s}.civ a:hover{color:var(--ac)}

.sls{display:flex;gap:.8rem;margin-top:1.5rem}
.sl-a{width:48px;height:48px;border-radius:12px;background:var(--bg3);border:1px solid var(--bd);display:flex;align-items:center;justify-content:center;transition:all .3s var(--e)}
.sl-a:hover{border-color:var(--ac);background:var(--acd);transform:translateY(-3px)}
.sl-a svg{width:18px;height:18px;fill:var(--tx2);transition:fill .3s}
.sl-a:hover svg{fill:var(--ac)}

.cf{display:flex;flex-direction:column;gap:1.1rem}
.fg{display:flex;flex-direction:column;gap:.35rem}
.fg label{font-size:.7rem;font-weight:500;text-transform:uppercase;letter-spacing:.1em;color:var(--tx2)}
.fg input,.fg textarea{background:var(--bg3);border:1px solid var(--bd);border-radius:var(--rs);padding:1rem 1.2rem;font-family:var(--fb);font-size:.86rem;color:var(--tx);transition:all .3s var(--e);outline:none;resize:vertical;font-weight:300}
.fg input:focus,.fg textarea:focus{border-color:var(--ac);box-shadow:0 0 0 3px var(--acd)}
.fg textarea{min-height:140px}

.ab{display:flex;align-items:center;gap:1rem;padding:1.4rem 2rem;background:rgba(34,211,168,.05);border:1px solid rgba(34,211,168,.18);border-radius:var(--rs);margin-bottom:2rem}
.adt{width:12px;height:12px;background:var(--tl);border-radius:50%;box-shadow:0 0 14px rgba(34,211,168,.5);animation:dp 2s infinite;flex-shrink:0}
.ab p{font-size:.86rem;color:var(--tl);font-weight:400}
.ab strong{font-weight:700}

/* ─── Form layout ─── */
.fg-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.req{color:var(--ac);font-weight:400;margin-left:.15rem}
.opt{color:var(--tx3);font-weight:300;font-size:.63rem;text-transform:none;letter-spacing:0}

/* Field error state */
.fg input.err,.fg textarea.err{border-color:#ff4d4d!important;box-shadow:0 0 0 3px rgba(255,77,77,.12)!important}

/* Submit row */
.cf-foot{display:flex;flex-direction:column;gap:.75rem;align-items:flex-start}
#csb{min-width:180px;position:relative;transition:opacity .3s,transform .2s}
#csb:disabled{opacity:.55;cursor:not-allowed;transform:none}
.cf-em{font-size:.8rem;color:#ff4d4d;line-height:1.5;font-weight:400;margin:0}

/* ─── Status messages ─── */
.c-msg{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 2rem;border-radius:var(--r);border:1px solid;gap:.4rem}
.c-ok{background:rgba(34,211,168,.05);border-color:rgba(34,211,168,.22)}
.c-ico{width:54px;height:54px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.4rem;font-weight:700;margin-bottom:.6rem}
.c-ok .c-ico{background:rgba(34,211,168,.12);color:var(--tl)}
.c-msg h3{font-family:var(--fd);font-size:1.45rem;color:var(--tl);margin:0}
.c-msg p{color:var(--tx2);font-size:.86rem;font-weight:300;line-height:1.65;margin:0}

@media(max-width:1024px){.cg{grid-template-columns:1fr;gap:3rem}}
@media(max-width:640px){.fg-row{grid-template-columns:1fr}}
