.contact-page{background:#fff}
.contact-page .page-hero{padding:96px 0;background:var(--cream)}
.contact-page .contact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.contact-page .page-hero h1{max-width:620px;margin-bottom:24px;font-size:var(--section-title-size);font-weight:800;line-height:1.08}
.contact-page .page-hero .lead{max-width:620px;margin-bottom:0;font-size:1.0625rem;line-height:1.65}
.contact-page .eyebrow{margin-bottom:24px;font-size:.875rem}
.contact-page .contact-overview{min-width:0}
.contact-page .contact-info-card{position:relative;display:flex;align-items:center;min-height:208px;margin-top:88px;padding:32px 24px;background:#fff;border:0;border-radius:24px}
.contact-page .connect-tab{position:absolute;top:-46px;right:0;display:flex;align-items:center;justify-content:center;width:min(84%,320px);height:46px;padding-left:48px;color:var(--ink);font:800 1.0625rem/1.25 Nunito,sans-serif;text-decoration:none;transition:transform .2s}
.contact-page .connect-tab img{position:absolute;inset:0;display:block;width:100%;height:100%}
.contact-page .connect-tab span{position:relative;z-index:1}
.contact-page .connect-tab:hover{transform:translateY(-2px)}
.contact-page .contact-track{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;justify-items:center;gap:18px;width:100%;margin:0;padding:0;border:0}
.contact-page .contact-track p{width:100%;margin:0;text-align:center;font:800 1rem/1.3 Nunito,sans-serif}
.contact-page .contact-track strong{display:grid;place-items:center;width:46px;height:46px;min-width:0;margin:0 auto 14px;background:var(--lemon);border-radius:50%;font-weight:800}
.contact-page .text-link{color:var(--ink);font:800 1rem/1.35 Nunito,sans-serif}
.contact-page .contact-card{padding:32px;background:linear-gradient(-60deg,rgba(0,66,37,.11) 0%,rgba(0,66,37,0) 58%),var(--sage);border:1px solid #0042252e;border-radius:16px}
.contact-page .contact-card h2{margin-bottom:24px;font-size:2rem}
.contact-page .contact-card label{margin:20px 0 8px;font:800 1rem/1.4 Nunito,sans-serif}
.contact-page .contact-card input,.contact-page .contact-card textarea{background:#fff;border-color:#00422560;border-radius:16px;font:500 1.0625rem/1.5 Nunito,sans-serif}
.contact-page .contact-card input{height:36px;padding:4px 12px}
.contact-page .contact-card textarea{padding:16px}
.contact-page .contact-card textarea{min-height:180px}
.contact-page .preview-note{margin-bottom:24px;padding:14px 16px;background:var(--cream);border-radius:16px;font-size:.9375rem}
.contact-page .form-help{font-size:1rem;line-height:1.5}
.contact-page #trip-help{display:grid;gap:.55rem}
.contact-page #trip-help p{margin:0}
.contact-page #trip-help ul{display:grid;gap:.55rem;margin:0 0 20px;padding-left:1.2rem}
.contact-page #trip-help li{margin:0;line-height:1.5}
.contact-page #required-fields-note{margin:16px 0 0}
.contact-page #privacy-note{margin:4px 0 0}
.contact-page .contact-card .contact-consent{display:flex;align-items:flex-start;gap:12px;margin:20px 0 8px;cursor:pointer;font:700 1rem/1.45 Nunito,sans-serif}
.contact-page .contact-card .contact-consent input{appearance:auto;width:22px;height:22px;flex:0 0 22px;margin:1px 0 0;padding:0;border-radius:4px;accent-color:var(--ink)}
.contact-page .contact-consent span[aria-hidden]{font-weight:800}
.contact-page .contact-card .button{margin-top:24px}
.contact-page #faq{padding:96px 0}
.contact-page .faq-wrap{max-width:var(--page)}
.contact-page .faq-wrap h2{margin-bottom:40px;font-size:var(--section-title-size);font-weight:800;line-height:1.08}
.contact-page .faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;align-items:start}
.contact-page .details-card{margin:0;background:#fff;border-color:#0042252e;border-radius:16px}
.contact-page .details-card summary{padding:20px 24px;font:800 1.125rem/1.4 Nunito,sans-serif}
.contact-page .details-body{padding:0 24px 24px;font-size:1.0625rem;line-height:1.65}
.contact-page .details-card summary:after{background:var(--lemon)}

@media(max-width:1000px){
  .contact-page .contact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
}

@media(max-width:760px){
  .contact-page .page-hero{padding:64px 0}
  .contact-page .contact-grid{grid-template-columns:1fr;gap:48px}
  .contact-page .page-hero h1{margin-bottom:20px}
  .contact-page .contact-card{padding:24px}
  .contact-page .contact-info-card{display:block;min-height:0;margin-top:76px;padding:48px 20px 28px}
  .contact-page .connect-tab{top:-46px;width:min(92%,320px)}
  .contact-page .contact-track{grid-template-columns:1fr;gap:24px}
  .contact-page #faq{padding:64px 0}
  .contact-page .faq-wrap h2{margin-bottom:32px}
  .contact-page .faq-grid{grid-template-columns:1fr}
  .contact-page .details-card summary{padding:18px 20px;font-size:1.0625rem}
  .contact-page .details-body{padding:0 20px 20px}
}
