/* Dedicated inquiry page: all brand tokens and controls use the existing TM design. */
[data-page="contact"] main { overflow: clip; }
[data-page="contact"] [hidden] { display: none !important; }
[data-page="contact"] :is(h1,h2,p) { word-break: keep-all; overflow-wrap: anywhere; }
[data-page="contact"] :focus-visible { outline: 2px solid var(--teal-soft); outline-offset: 5px; }
.contact-skip-link { position: fixed; top: -70px; left: 24px; z-index: 1100; padding: 12px 20px; color: var(--bg); background: var(--teal-soft); border-radius: 0 0 8px 8px; }
.contact-skip-link:focus { top: 0; }
.contact-page-section { padding: 166px 0 122px; scroll-margin-top: 82px; }
.contact-page-section::before { content: ""; position: absolute; top: 0; right: 8%; width: 1px; height: 600px; background: linear-gradient(transparent,rgba(198,160,86,.15),transparent); }
.contact-page-grid { display: grid; grid-template-columns: minmax(0,.88fr) minmax(0,1.12fr); align-items: start; gap: 91px; }
.contact-page-copy { padding-top: 23px; }
.contact-page-label { margin: 34px 0 16px; color: #a8b8c3; font-size: 13px; }
.contact-page-copy h1 { margin: 0; color: var(--text); font-size: clamp(42px,4.5vw,62px); font-weight: 750; line-height: 1.3; letter-spacing: -.065em; }
.contact-page-copy h1 em { color: var(--teal-soft); font-style: normal; }
.contact-page-copy .contact-page-intro { margin-top: 27px; color: #9eb0bd; font-size: 14px; line-height: 1.95; }
.contact-service-notes { display: grid; gap: 0; margin-top: 42px; border-top: 1px solid var(--line-strong); }
.contact-service-notes > a { display: grid; grid-template-columns: 22px 1fr 15px; align-items: start; gap: 18px; padding: 24px 0; border-bottom: 1px solid var(--line); transition: border-color .2s ease; }
.contact-service-notes > a:hover { border-bottom-color: rgba(54,209,213,.4); }
.contact-service-notes > a > span { color: var(--gold); font-size: 10px; line-height: 26px; letter-spacing: .05em; }
.contact-service-notes h2 { margin: 0; font-size: 17px; color: #e3ecef; font-weight: 650; letter-spacing: -.035em; }
.contact-page-copy .contact-service-notes p { margin: 8px 0 0; color: #8fa4b2; font-size: 12px; line-height: 1.85; }
.contact-service-notes b { color: #5baeb6; font-size: 17px; font-weight: 400; }
.contact-page-copy .contact-points { margin-top: 32px; }
.contact-page-copy .contact-points span { font-size: 11px; }
.contact-page-form { position: relative; padding: 37px 39px 33px; border-color: rgba(54,209,213,.22); background: linear-gradient(140deg,rgba(18,184,196,.04),transparent 43%),var(--panel); }
.contact-page-form::before { content: ""; position: absolute; top: -1px; left: 30px; right: 30px; height: 1px; background: linear-gradient(90deg,transparent,var(--teal-soft),transparent); opacity: .6; }
.contact-page-form .form-top { margin-bottom: 28px; }
.contact-product-field { padding: 17px 17px 15px; margin: 0 0 24px; border: 1px solid rgba(54,209,213,.23); border-radius: 11px; background: rgba(18,184,196,.04); }
.contact-product-field label { color: #cde7ea; }
.contact-product-field select { border-color: rgba(54,209,213,.25); }
.contact-product-note { margin: 10px 0 0; color: #99b8c4; font-size: 11px; line-height: 1.85; }
.contact-ai-fields { margin: 0 0 23px; padding: 20px 17px 0; border: 1px solid rgba(54,209,213,.16); border-radius: 11px; background: rgba(18,184,196,.025); }
.contact-optional { margin-left: 4px; color: #8fa7b5; font-size: 10px; font-weight: 400; }
.contact-field-hint { margin: 7px 0 0; color: #8fa7b5; font-size: 10px; line-height: 1.8; }
.contact-page-form .form-note { line-height: 1.85; }
@media (max-width: 1100px) {
  .contact-page-grid { gap: 55px; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); }
  .contact-page-form { padding: 32px 29px 29px; }
  .contact-wide-break { display: none; }
}
@media (max-width: 900px) {
  .contact-page-section { padding-top: 133px; padding-bottom: 100px; }
  .contact-page-grid { grid-template-columns: 1fr; gap: 43px; }
  .contact-page-copy { padding-top: 0; }
  .contact-page-copy h1 { font-size: 49px; }
  .contact-page-copy .contact-page-intro { max-width: 520px; }
  .contact-service-notes { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px; margin-top: 33px; }
  .contact-service-notes > a { gap: 12px; }
  .contact-service-notes p br { display: none; }
  .contact-page-copy .contact-points { display: none; }
  .contact-page-form { padding: 35px; }
}
@media (max-width: 650px) {
  .contact-page-section { padding-top: 122px; padding-bottom: 90px; }
  .contact-page-grid { gap: 31px; }
  .contact-page-copy .eyebrow { font-size: 8px; }
  .contact-page-label { margin-top: 25px; font-size: 12px; }
  .contact-page-copy h1 { font-size: clamp(36px,10.3vw,46px); line-height: 1.35; }
  .contact-page-copy .contact-page-intro { font-size: 13px; margin-top: 23px; }
  .contact-service-notes { grid-template-columns: 1fr; gap: 0; margin-top: 29px; }
  .contact-service-notes > a { padding: 20px 0; gap: 13px; }
  .contact-service-notes h2 { font-size: 15px; }
  .contact-page-copy .contact-service-notes p { font-size: 11px; margin-top: 6px; }
  .contact-page-form { padding: 27px 21px 26px; }
  .contact-page-form .form-top strong { font-size: 21px; }
  .contact-page-form .form-top em { font-size: 9px; }
  .contact-product-field { padding: 15px 13px 13px; }
  .contact-product-note { font-size: 10px; }
  .contact-ai-fields { padding: 18px 13px 0; }
  .contact-field-hint { font-size: 10px; }
}
