.lead-section { background: #e8d9cb; padding: 105px 0; }
.lead-grid { display: grid; grid-template-columns: .85fr 1.15fr; align-items: start; gap: clamp(40px, 8vw, 130px); }
.lead-copy { padding-top: 17px; }
.lead-copy .eyebrow { color: #a95244; }
.lead-copy h2 { font: 400 clamp(4.3rem, 7vw, 8rem)/.88 var(--serif); letter-spacing: -.045em; margin: 33px 0; }
.lead-copy h2 em { font-weight: 400; }
.lead-copy p { max-width: 410px; font-size: 16px; line-height: 1.8; color: #604e52; }
.lead-copy .lead-disclaimer { margin-top: 48px; padding-top: 20px; border-top: 1px solid #bda89f; font-size: 13px; }
.lead-panel { background: #faf5ee; padding: clamp(28px, 4vw, 62px); box-shadow: 0 18px 65px #3d24280d; }
.lead-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 27px; }
.lead-wide { grid-column: 1 / -1; }
.lead-fields label { display: block; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .15em; color: #765450; }
.lead-fields .optional { text-transform: none; font-weight: 400; letter-spacing: normal; }
.lead-fields input, .lead-fields textarea { display: block; width: 100%; margin-top: 8px; border: 0; border-bottom: 1px solid #b9a8a5; border-radius: 0; background: transparent; color: var(--ink); font: 400 15px var(--sans); padding: 12px 0; outline: none; }
.lead-fields input:focus, .lead-fields textarea:focus { border-color: #a95244; border-bottom-width: 2px; }
.lead-fields textarea { resize: vertical; }
.lead-fields input::placeholder, .lead-fields textarea::placeholder { color: #8f7d78; opacity: 1; }
.lead-trap { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.lead-required { font-size: 12px; line-height: 1.6; color: #786461; margin: 31px 0 17px; }
.lead-error { color: #8b3028; border-left: 2px solid #8b3028; padding-left: 12px; font-size: 14px; line-height: 1.5; margin: 15px 0; }
.lead-submit { cursor: pointer; display: inline-flex; align-items: center; justify-content: space-between; gap: 60px; background: #a95244; color: #fff8ed; padding: 18px 23px; border: 0; font: 700 11px var(--sans); letter-spacing: .16em; text-transform: uppercase; min-height: 52px; }
.lead-submit:hover { background: #8e473c; }
.lead-submit:disabled { opacity: .65; cursor: wait; }
.lead-success { min-height: 340px; display: flex; flex-direction: column; justify-content: center; align-items: start; }
.lead-success[hidden], .lead-error[hidden] { display: none; }
.lead-success .eyebrow { color: #a95244; }
.lead-success h3 { font: 400 clamp(3rem, 5vw, 5rem)/.95 var(--serif); margin: 20px 0; }
.lead-success h3 em { font-weight: 400; }
.lead-success p { font-size: 15px; line-height: 1.75; color: #604e52; }
.lead-success button { cursor: pointer; border: 0; border-bottom: 1px solid var(--ink); background: transparent; font: 700 11px var(--sans); letter-spacing: .13em; text-transform: uppercase; padding: 6px 0; margin-top: 17px; color: var(--ink); }
@media (max-width: 850px) { .lead-grid { grid-template-columns: 1fr; } .lead-section { padding: 75px 0; } .lead-copy .lead-disclaimer { margin-top: 25px; } }
@media (min-width: 801px) and (max-width: 1100px) { .header-links, .header-cta { display: none; } .mobile-menu { display: block; background: none; color: inherit; border: 1px solid #ffffff7a; border-radius: 50%; width: 42px; height: 42px; font-size: 24px; cursor: pointer; } .mobile-links { display: none; padding: 8px 0 28px; flex-direction: column; gap: 0; } .mobile-links.open { display: flex; } .mobile-links a { padding: 14px 0; } }
@media (max-width: 550px) { .lead-fields { grid-template-columns: 1fr; gap: 24px; } .lead-submit { width: 100%; } }