:root{
    --bg:#fffcf4;
    --card:#ffffff;
    --ink:#0b1726;
    --muted:#5f6b7a;
    --brand:#252525;
    --brand-ink:#121211;
    --ring:rgba(246, 194, 38, 0.28);
    --radius:18px;
  }
  
  *{box-sizing:border-box}
  html,body{margin:0}
  body{font:16px/1.5 ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Inter,Arial; color:var(--ink); background:#fff}
  
  .contact-wrap{padding:10px 10px}
  .contact-grid{
    display:grid;
    gap:28px;
    max-width:1140px;
    margin-inline:auto;
    align-items:start;
  }
  @media (min-width:900px){
    .contact-grid{grid-template-columns: 1fr 1.2fr;}
  }
  
  .eyebrow{font-size:.78rem; letter-spacing:.1em; text-transform:uppercase; color:var(--brand-ink); font-weight:700}
  .title{font-size:clamp(1.6rem,2.4vw,2.4rem); line-height:1.15; margin:.4rem 0 1.2rem}
  
  .contact-info .info-card{
    display:flex; gap:14px; align-items:flex-start;
    background:var(--bg); padding:16px; border-radius:var(--radius);
    border:1px solid #fae29b; margin:14px 0;
  }
  .icon{flex:0 0 46px; display:grid; place-items:center; width:46px; height:46px; background:#f6c2261f; border-radius:12px}
  .icon svg{width:26px; height:26px; fill:var(--brand-ink)}
  .block h3{margin:2px 0 6px; font-size:1.05rem}
  .block p{margin:0 0 6px; color:var(--muted)}
  .muted{color:var(--brand-ink); text-decoration:none}
  .muted:hover{text-decoration:underline}
  
  .card{
    background:var(--bg);
    border:1px solid #fae29b;
    border-radius:var(--radius);
    padding:18px;
  }
  .form-title{margin:0 0 10px; font-size:1.35rem}
  
  .flash{padding:10px 12px; border-radius:12px; margin:8px 0 12px; font-weight:600}
  .flash.ok{background:#e8f7ef; color:#146c43; border:1px solid #c7e9d7}
  .flash.bad{background:#fdecec; color:#8a1c1c; border:1px solid #f7c9c9}
  
  form .row{display:grid; gap:12px}
  @media (min-width:700px){form .row{grid-template-columns:1fr 1fr}}
  
  .field{display:flex; flex-direction:column; gap:6px}
  label{font-weight:600; font-size:.95rem}
  input,select,textarea{
    appearance:none;
    width:100%;
    border:1px solid #dfe8e2;
    background:#fff;
    border-radius:12px;
    padding:12px 14px;
    font:inherit;
    color:var(--ink);
  }
  textarea{resize:vertical; min-height:160px}
  input:focus,select:focus,textarea:focus{outline:none; border-color:var(--brand); box-shadow:0 0 0 4px var(--ring)}
  input::placeholder,textarea::placeholder{color:#9aa6b2}
  
  .btn{
    display:inline-block; border:0; background:var(--brand);
    color:#fff; font-weight:700; padding:12px 18px; border-radius:30px; cursor:pointer;
  }
  .btn:hover{filter:brightness(.95)}
  .btn:active{transform:translateY(1px)}
  
  .hp{position:absolute !important; left:-9999px !important; height:0 !important; width:0 !important; overflow:hidden !important}
  