/* ==========================================================================
   Section: Contact / devis  ([rimas_contact])
   Phone block left, form panel right. Square fields, 2px edges.
   ========================================================================== */
.rct{background:var(--ink);color:var(--tx-inv);padding-block:var(--sec)}
.rct--light{background:var(--paper);color:var(--tx)}

.rct__grid{
  display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
  gap:clamp(2rem,1.4rem + 2.6vw,4.5rem);align-items:start;
}

/* Left column */
.rct__side{display:flex;flex-direction:column;align-items:flex-start;gap:1.1rem}
.rct__title{font-size:var(--t-h2);font-weight:800;line-height:.98;letter-spacing:-.022em;font-stretch:96%;text-wrap:balance}
.rct__lead{font-size:var(--t-sm);line-height:1.6;color:var(--tx-inv-mute);max-width:44ch;text-wrap:pretty}
.rct--light .rct__lead{color:var(--tx-mute)}
.rct__phone{width:100%;max-width:22rem;margin-top:.5rem}
.rct__phone-note{font-size:var(--t-xs);font-weight:600;color:var(--tx-inv-mute);margin-top:.6rem}
.rct--light .rct__phone-note{color:var(--tx-mute)}
.rct__pts{display:grid;gap:.6rem;margin-top:.75rem;padding-top:1.4rem;border-top:1px solid var(--rule-inv);width:100%}
.rct--light .rct__pts{border-top-color:var(--rule)}
.rct__pts li{display:flex;gap:.6rem;align-items:flex-start;font-size:var(--t-xs);line-height:1.4;color:var(--tx-inv-mute)}
.rct--light .rct__pts li{color:var(--tx-mute)}
.rct__pts svg{flex:none;margin-top:1px;color:var(--signal)}

/* Form panel */
.rct__panel{background:var(--paper);color:var(--tx);border:2px solid var(--rule-hard);padding:clamp(1.4rem,1.1rem + 1.4vw,2.25rem)}
.rct--light .rct__panel{background:#fff}

.rct__alert{display:flex;flex-direction:column;gap:.25rem;padding:.9rem 1.1rem;margin-bottom:1.4rem;border-left:6px solid var(--signal);background:var(--paper-2)}
.rct__alert--ok{border-left-color:#0f7b3f}
.rct__alert b{font-size:var(--t-sm);font-weight:800}
.rct__alert span{font-size:var(--t-xs);color:var(--tx-mute);line-height:1.45}

.rct__form{display:flex;flex-direction:column;gap:1rem}
.rct__row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.rct__field{display:flex;flex-direction:column;gap:.4rem;margin:0;min-width:0}
.rct__field label{font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--tx)}
.rct__field label span{font-weight:600;letter-spacing:.04em;color:var(--tx-mute);text-transform:none}
.rct__field abbr{color:var(--signal);text-decoration:none;border:0}

.rct__field input,.rct__field select,.rct__field textarea{
  width:100%;font:inherit;font-size:var(--t-sm);color:var(--tx);
  background:#fff;border:2px solid var(--rule);border-radius:0;
  padding:.75rem .85rem;
  transition:border-color .16s var(--ease),box-shadow .16s var(--ease);
}
.rct__field textarea{resize:vertical;min-height:6rem}
.rct__field select{appearance:none;cursor:pointer;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230b2748' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><path d='m6 9 6 6 6-6'/></svg>");
  background-repeat:no-repeat;background-position:right .7rem center;background-size:1.05rem;padding-right:2.4rem;
}
.rct__field input:focus,.rct__field select:focus,.rct__field textarea:focus{
  outline:none;border-color:var(--ink);box-shadow:0 0 0 3px rgba(22,104,214,.2);
}
.rct__field input::placeholder,.rct__field textarea::placeholder{color:var(--tx-mute);opacity:.75}

.rct__consent{display:flex;gap:.7rem;align-items:flex-start;margin:0}
.rct__consent input{flex:none;width:1.15rem;height:1.15rem;margin-top:.15rem;accent-color:var(--signal)}
.rct__consent label{font-size:var(--t-xs);line-height:1.45;color:var(--tx-mute)}
.rct__consent abbr{color:var(--signal);text-decoration:none}

.rct__small{font-size:var(--t-xs);color:var(--tx-mute);text-align:center}
.rct__small a{font-weight:800;color:var(--signal);border-bottom:2px solid transparent;transition:border-color .16s var(--ease)}
.rct__small a:hover{border-bottom-color:var(--signal)}

/* Honeypot – off screen, never displayed, still focusable by bots */
.rct__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

@media (max-width:900px){
  .rct__grid{grid-template-columns:1fr}
  .rct__phone{max-width:none}
}
@media (max-width:560px){
  .rct__row{grid-template-columns:1fr}
}
