/* Contact + Careers page styles (extends tdb-v2.css) */
.fcard{background:var(--card);border:1px solid var(--line2);border-radius:20px;padding:2.4rem;box-shadow:0 40px 80px -40px rgba(0,0,0,.8)}
.fcard h2,.fcard h3{font-family:var(--hf);font-weight:700;letter-spacing:-.02em;font-size:1.55rem;line-height:1.2;margin-bottom:.5rem}
.fcard>p.fnote,.fcard .fnote{color:var(--mut);font-size:.95rem;margin-bottom:1.8rem}
.fg-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.fgrp{margin-bottom:1.15rem}
.fgrp label{display:block;font-family:var(--mf);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--mut);margin-bottom:.5rem}
.fgrp input,.fgrp textarea,.fgrp select{width:100%;background:var(--bg);border:1.5px solid var(--line2);border-radius:12px;color:var(--tx);font-family:var(--bf);font-size:1rem;padding:.95rem 1.1rem;outline:none;transition:var(--ease);-webkit-appearance:none;appearance:none}
.fgrp input::placeholder,.fgrp textarea::placeholder{color:var(--dim)}
.fgrp input:focus,.fgrp textarea:focus,.fgrp select:focus{border-color:var(--red);box-shadow:0 0 0 4px rgba(224,37,42,.22);background:#080b10}
.fgrp select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none' stroke='%239fabba' stroke-width='2'%3E%3Cpath d='M2 4l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1.1rem center;padding-right:2.6rem}
.fgrp select option{background:#0f141c;color:var(--tx)}
.fgrp textarea{resize:vertical;min-height:130px}
.fsubmit{width:100%;justify-content:center;padding:1.05rem;font-size:1rem;margin-top:.4rem}
.hp-field{position:absolute;left:-9999px;top:-9999px}
.cgrid{display:grid;grid-template-columns:1.1fr .9fr;gap:2.5rem;align-items:start}
.cside{display:flex;flex-direction:column;gap:1.4rem}
.icard{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:1.7rem}
.icard h3{font-family:var(--mf);font-size:.72rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--red2);margin-bottom:1.2rem}
.irow{display:flex;gap:1rem;align-items:flex-start;margin-bottom:1.1rem}
.irow:last-child{margin-bottom:0}
.irow .ii{flex:0 0 40px;height:40px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(145deg,var(--red),#8e1216)}
.irow .ii svg{width:19px;height:19px;fill:#fff}
.irow small{display:block;font-family:var(--mf);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--dim)}
.irow b,.irow a{font-weight:500;color:var(--tx);font-size:.98rem;word-break:break-word}
.irow a:hover{color:var(--red2)}
.nsteps{counter-reset:n;list-style:none}
.nsteps li{position:relative;padding-left:2.8rem;margin-bottom:1.1rem;font-size:.92rem;color:#c3ceda}
.nsteps li:last-child{margin-bottom:0}
.nsteps li::before{counter-increment:n;content:counter(n);position:absolute;left:0;top:0;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-family:var(--mf);font-size:.75rem;color:var(--cy);border:1px solid rgba(53,200,255,.4);background:rgba(53,200,255,.08)}
.nsteps b{color:var(--tx);display:block;font-family:var(--hf);font-size:.98rem}
.soc-row{display:flex;gap:.7rem;flex-wrap:wrap}
.soc-row a{width:46px;height:46px;border-radius:12px;border:1px solid var(--line2);background:var(--bg);display:grid;place-items:center;transition:var(--ease)}
.soc-row a:hover{border-color:var(--red);transform:translateY(-3px)}
.soc-row img{width:22px;height:22px;object-fit:contain}
.bpills{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1.8rem}
.whyg{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.whyg .icard h4{font-family:var(--hf);font-size:1.1rem;margin:.9rem 0 .5rem}
.whyg .icard p{font-size:.9rem;color:var(--mut)}
.whyg .ico{margin-bottom:0}
.role{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:start}
.role + .role{margin-top:6rem}
.role .checks{margin-bottom:1.4rem}
.rq{border:1px solid rgba(224,37,42,.4);background:rgba(224,37,42,.08);border-radius:12px;padding:1rem 1.2rem;font-size:.9rem;color:#dbe3ec}
.rq strong{color:var(--red2)}
.role-jump{display:flex;gap:.9rem;flex-wrap:wrap;margin-top:2rem}
@media(max-width:1000px){.cgrid,.role{grid-template-columns:1fr}.whyg{grid-template-columns:1fr}}
@media(max-width:600px){.fg-row{grid-template-columns:1fr}.fcard{padding:1.5rem}}
