.form-page { background: #131211; }
.form-page .nav nav a.current { color: #d9aca5; }
.form-hero { min-height: 500px; padding: 90px 6vw 78px; display: grid; grid-template-columns: 1.15fr .85fr; align-items: end; gap: 8vw; color: #eeeae3; background: radial-gradient(circle at 80% 20%, rgba(152, 73, 105, .3), transparent 32%), linear-gradient(120deg, rgba(18, 18, 17, .7), rgba(18, 18, 17, .95)), url('assets/hero-tattoo-machine.png') 72% 55% / cover no-repeat; }
.form-hero h1 { font-size: clamp(3.2rem, 6.3vw, 7rem); line-height: .98; letter-spacing: .02em; font-weight: 300; margin: 22px 0 0; }
.form-intro { max-width: 560px; padding-bottom: 8px; }
.form-intro > p:first-child { color: #d0cbc4; font-size: 15px; line-height: 1.8; }
.form-note { color: #ac7c75; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; margin-top: 28px; }
.form-section { background: var(--ivory); padding: 76px 8vw 96px; }
.form-section form { max-width: 1100px; margin: 0 auto; }
.form-section fieldset { border: 0; padding: 0 0 58px; margin: 0 0 58px; border-bottom: 1px solid #c7beb3; }
.form-section legend { width: 100%; margin-bottom: 40px; padding: 0; font-size: 25px; letter-spacing: .035em; }
.form-section legend span { color: #a36f68; display: inline-block; min-width: 58px; font-size: 11px; letter-spacing: .16em; vertical-align: middle; }
.form-grid { display: grid; gap: 28px 34px; }
.two-columns { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.form-section label { display: flex; flex-direction: column; gap: 11px; font-size: 11px; text-transform: uppercase; letter-spacing: .12em; color: #554f49; }
.form-section input:not([type="checkbox"]), .form-section select, .form-section textarea { width: 100%; border: 0; border-bottom: 1px solid #9d948a; border-radius: 0; background: transparent; padding: 14px 2px; color: #181715; font: 400 15px/1.5 Manrope, Arial, sans-serif; outline: none; }
.form-section textarea { border: 1px solid #b8afa4; padding: 16px; resize: vertical; }
.form-section input:focus, .form-section select:focus, .form-section textarea:focus { border-color: #9e6662; box-shadow: 0 1px 0 #9e6662; }
.form-section input::placeholder, .form-section textarea::placeholder { color: #9a9289; }
.full-width { grid-column: 1 / -1; }
.file-field input { border: 1px dashed #aaa096 !important; padding: 22px !important; cursor: pointer; }
.file-field small { color: #898178; font-size: 10px; letter-spacing: .06em; text-transform: none; }
.consent { flex-direction: row !important; align-items: flex-start; gap: 12px !important; text-transform: none !important; line-height: 1.6; letter-spacing: .02em !important; }
.consent input { accent-color: #9e6662; margin-top: 3px; }
.submit-row { margin-top: 36px; display: flex; justify-content: space-between; align-items: center; gap: 30px; }
.submit-row p { max-width: 500px; color: #716a63; font-size: 12px; line-height: 1.7; }
.submit-row button { border: 0; background: #171614; color: #f1ece5; padding: 19px 26px; font: 500 11px Manrope, Arial, sans-serif; text-transform: uppercase; letter-spacing: .14em; cursor: pointer; }
.submit-row button span { margin-left: 18px; color: #d39a92; }
.honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }

.thanks-main { min-height: calc(100vh - 78px); display: grid; place-items: center; padding: 70px 24px; background: radial-gradient(circle at 50% 30%, rgba(154, 75, 108, .32), transparent 35%), #131211; color: #eeeae3; text-align: center; }
.thanks-card { max-width: 700px; }
.thanks-mark { width: 72px; height: 72px; margin: 0 auto 30px; border: 1px solid #b07870; border-radius: 50%; display: grid; place-items: center; color: #d7a39b; font-size: 25px; }
.thanks-card h1 { font-size: clamp(3rem, 6vw, 6rem); font-weight: 300; line-height: 1; margin: 0 0 28px; }
.thanks-card p { color: #c2bcb4; line-height: 1.8; margin-bottom: 36px; }
.thanks-card a { display: inline-block; padding: 16px 22px; border: 1px solid #716c66; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; }

@media (max-width: 850px) {
  .form-hero { min-height: 560px; padding: 68px 24px; grid-template-columns: 1fr; gap: 50px; }
  .form-section { padding: 58px 24px 74px; }
}

@media (max-width: 620px) {
  .form-hero h1 { font-size: 3.3rem; }
  .two-columns { grid-template-columns: 1fr; }
  .full-width { grid-column: auto; }
  .form-section legend { font-size: 21px; }
  .submit-row { align-items: stretch; flex-direction: column; }
  .submit-row button { width: 100%; }
}
