
.contact-page { background: #151513; color: #f4efe6; font-family: Inter, ui-sans-serif, system-ui, sans-serif; }
.contact-page a { color: inherit; }
.contact-page section { padding: clamp(3.5rem, 8vw, 8rem) clamp(1.25rem, 6vw, 7rem); }
.contact-hero { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(16rem, .6fr); gap: clamp(2rem, 8vw, 8rem); min-height: 46rem; align-items: end; background: #201f1c; }
.contact-kicker, .contact-aside-label { margin: 0 0 1.25rem; color: #e4b873; font-size: .75rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.contact-hero h1 { max-width: 11ch; margin: 0; font-size: clamp(3.5rem, 9vw, 9rem); line-height: .88; letter-spacing: -.06em; }
.contact-hero__lead { max-width: 39rem; margin: 2rem 0 2.5rem; color: #d0c9bd; font-size: clamp(1.05rem, 1.7vw, 1.4rem); line-height: 1.5; }
.contact-primary-link, .contact-submit { display: inline-flex; align-items: center; justify-content: center; min-height: 3.25rem; padding: .85rem 1.3rem; border: 1px solid #e4b873; background: #e4b873; color: #151513 !important; font-weight: 700; text-decoration: none; }
.contact-hero__aside { max-width: 19rem; padding-bottom: .5rem; color: #d0c9bd; line-height: 1.55; }
.contact-aside-note { margin-top: 2.5rem; color: #e4b873; font-weight: 700; }
.contact-overview, .contact-form-section { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: clamp(2rem, 8vw, 8rem); }
.contact-overview { background: #d8d1c4; color: #151513; }
.contact-overview h2, .contact-form-section h2, .contact-expect h2, .contact-privacy h2, .contact-explore h2, .contact-fallback h2 { max-width: 14ch; margin: 0; font-size: clamp(2.2rem, 5vw, 5rem); line-height: .95; letter-spacing: -.04em; }
.contact-overview__list { display: grid; align-content: end; gap: 1rem; }
.contact-overview__list p { margin: 0; padding: 1.1rem 0; border-top: 1px solid rgb(21 21 19 / 35%); font-size: clamp(1.2rem, 2.4vw, 2rem); }
.contact-form-section { background: #e4b873; color: #151513; }
.contact-section-heading { align-self: start; }
.contact-form { display: grid; gap: 1.25rem; }
.contact-form__row { display: grid; gap: .45rem; margin: 0; padding: 0; border: 0; }
.contact-form__row label, .contact-form legend { font-size: .78rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.contact-form input:not([type="radio"]):not([type="checkbox"]), .contact-form textarea { width: 100%; border: 1px solid rgb(21 21 19 / 60%); border-radius: 0; padding: .9rem 1rem; background: rgb(255 255 255 / 35%); color: #151513; font: inherit; }
.contact-form textarea { resize: vertical; }
.contact-form input:focus-visible, .contact-form textarea:focus-visible, .contact-form button:focus-visible, .contact-form a:focus-visible { outline: 3px solid #151513; outline-offset: 3px; }
.contact-form__topic { display: grid; gap: .65rem; }
.contact-form__topic label, .contact-form__consent { display: flex; align-items: flex-start; gap: .55rem; font-size: .95rem; line-height: 1.45; letter-spacing: 0; text-transform: none; }
.contact-form__topic input, .contact-form__consent input { flex: 0 0 auto; margin-top: .2rem; accent-color: #151513; }
.contact-form__consent a { font-weight: 700; }
.form-error { min-height: 1.15em; margin: 0; color: #8a1e1e; font-size: .82rem; }
.form-status { min-height: 1.4em; margin: 0; font-weight: 700; }
.form-status[data-state="success"] { color: #125b39; }
.contact-submit { width: fit-content; border-color: #151513; background: #151513; color: #f4efe6 !important; cursor: pointer; }
.contact-expect { background: #151513; }
.contact-expect p:last-child, .contact-privacy p:last-child, .contact-fallback p:last-child { max-width: 42rem; margin: 2rem 0 0; color: #d0c9bd; font-size: clamp(1.05rem, 2vw, 1.4rem); line-height: 1.55; }
.contact-privacy { background: #282724; }
.contact-explore { background: #a9c3bd; color: #151513; }
.contact-explore__links { display: grid; gap: .9rem; margin-top: 2.5rem; }
.contact-explore__links a { width: fit-content; font-size: clamp(1.2rem, 2.5vw, 2rem); font-weight: 700; }
.contact-fallback { background: #d8d1c4; color: #151513; }
.contact-fallback p:last-child { color: #32302b; }
@media (max-width: 760px) { .contact-hero, .contact-overview, .contact-form-section { grid-template-columns: 1fr; min-height: auto; } .contact-hero__aside { max-width: 32rem; } .contact-hero h1 { font-size: clamp(3.4rem, 16vw, 6.5rem); } }

