/* ============================================================
   CONTACT PAGE
   ============================================================ */
.contact__grid { display: grid; grid-template-columns: 1.05fr 0.95fr; gap: clamp(40px, 6vw, 90px); align-items: start; }
@media (max-width: 900px){ .contact__grid { grid-template-columns: 1fr; gap: 50px; } }

/* details */
.cdetail { display:block; padding: 26px 0; border-bottom: 1px solid var(--line-soft); position: relative; transition: padding-left .45s var(--ease); }
.cdetail:first-of-type { border-top: 1px solid var(--line); }
.cdetail::before { content:""; position:absolute; left:0; top:50%; width:0; height:1px; background: var(--gold); transition: width .45s var(--ease); }
a.cdetail:hover { padding-left: 22px; }
a.cdetail:hover::before { width: 14px; }
.cdetail__k { font-family: var(--heading); font-size: 11px; letter-spacing: 0.24em; text-transform: uppercase; color: var(--gold); }
.cdetail__v { font-family: var(--display); font-size: clamp(24px, 3vw, 34px); color: var(--cream); margin-top: 8px; letter-spacing: 0.02em; }
.cdetail__v.small { font-family: var(--sans); font-size: 18px; letter-spacing: 0; }

.csocials { display:flex; gap: 12px; margin-top: 34px; }
.csocials a { width: 52px; height: 52px; display:grid; place-items:center; border: 1px solid var(--line); color: var(--gold); transition: all .4s var(--ease); }
.csocials a:hover { background: var(--gold-grad); color:#1a1304; border-color: transparent; transform: translateY(-3px); }
.csocials svg { width: 20px; height: 20px; }

/* form */
.form { position: relative; padding: clamp(30px, 4vw, 48px); border: 1px solid var(--line); background: linear-gradient(160deg, rgba(212,175,55,0.05), rgba(20,16,8,0.25)); }
.form__row { display:grid; grid-template-columns: 1fr 1fr; gap: 18px; }
@media (max-width: 540px){ .form__row { grid-template-columns: 1fr; } }
.field { position: relative; margin-bottom: 26px; }
.field label { font-family: var(--heading); font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--text-dim); display:block; margin-bottom: 10px; }
.field input, .field select, .field textarea {
  width: 100%; background: rgba(0,0,0,0.25); border: 1px solid var(--line-soft); color: var(--cream);
  font-family: var(--sans); font-size: 15px; padding: 14px 16px; transition: border-color .35s, box-shadow .35s; outline: none;
}
.field textarea { resize: vertical; min-height: 120px; }
.field select { appearance: none; cursor: pointer; background-image: linear-gradient(45deg, transparent 50%, var(--gold) 50%), linear-gradient(135deg, var(--gold) 50%, transparent 50%); background-position: calc(100% - 20px) 20px, calc(100% - 14px) 20px; background-size: 6px 6px, 6px 6px; background-repeat: no-repeat; }
.field input:focus, .field select:focus, .field textarea:focus { border-color: var(--gold); box-shadow: 0 0 0 3px rgba(212,175,55,0.12); }
.field option { background: #14110a; color: var(--cream); }
.form__btn { width: 100%; justify-content: center; margin-top: 6px; }
.form__note { font-size: 12px; color: var(--text-faint); margin-top: 16px; text-align:center; }
.form__success { display:none; text-align:center; padding: 30px 0; }
.form__success.show { display:block; }
.form__success .check { width: 64px; height: 64px; border-radius:50%; border:1px solid var(--gold); display:grid; place-items:center; margin: 0 auto 22px; box-shadow:0 0 30px rgba(212,175,55,0.3); }
.form__success .check svg { width: 28px; height: 28px; stroke: var(--gold-light); fill:none; stroke-width:2; }
.form__success h3 { font-family: var(--display); font-size: 38px; color: var(--cream); }
.form__success p { color: var(--text-dim); margin-top: 10px; }
.form.sent .form__inner { display:none; }

/* big marquee footer line */
.contact-cta { text-align:center; padding: clamp(50px,8vh,90px) 0; border-top: 1px solid var(--line); overflow: hidden; }
.contact-cta__line { font-family: var(--display); font-size: clamp(40px, 9vw, 120px); color: rgba(243,239,230,0.08); line-height: 1; white-space: nowrap; letter-spacing: 0.02em; }
