.stellar-contact {
	--contact-ink: #1a1a2e;
	--contact-paper: #f5f0e8;
	--contact-faq: #f2efe7;
	--contact-navy: #1f3a5f;
	--contact-line: rgba(26,26,46,.22);
	min-height: 100vh;
	overflow-x: hidden;
	background: var(--contact-paper);
	color: var(--contact-ink);
	font-family: Arial, 'Helvetica Neue', 'Microsoft YaHei', sans-serif;
}
.stellar-contact *, .stellar-contact *::before, .stellar-contact *::after { box-sizing: border-box; }
.stellar-contact__skip { position: fixed; top: -5rem; left: 1rem; z-index: 80; padding: .7rem 1rem; background: var(--contact-ink); color: #fff; }
.stellar-contact__skip:focus { top: 1rem; }
.stellar-contact :where(h1,h2,h3) { margin-block-start: 0; font-family: Georgia, 'Times New Roman', serif; font-weight: 400; }
.stellar-contact :where(p) { margin-block-start: 0; font-size: 1rem; line-height: 1.7; }
.stellar-contact__hero { max-width: 68.75rem; margin: 0 auto; padding: 3.125rem; }
.stellar-contact__kicker { margin-bottom: .8rem; color: #8b5a35; font-size: .75rem !important; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.stellar-contact__hero h1 { margin-bottom: 1rem; font-size: clamp(2.5rem, 4.1vw, 3.25rem); line-height: 1.08; }
.stellar-contact__lead { max-width: 42rem; font-size: 1.125rem !important; }
.stellar-contact__route-list { max-width: 38rem; margin-top: 2.25rem; }
.stellar-contact__route-list p { padding: 1.1rem 0; margin-bottom: 0; border-top: 1px solid var(--contact-line); }
.stellar-contact__route-list p:last-child { border-bottom: 1px solid var(--contact-line); }
.stellar-contact a { color: #704526; text-underline-offset: .25rem; }
.stellar-contact__form-shell { max-width: 41.875rem; margin: 0 auto; padding: 3.125rem 1.25rem; }
.stellar-contact__form-shell h2, .stellar-contact__faq h2 { margin-bottom: 1rem; font-size: clamp(1.875rem, 3.2vw, 2.5rem); }
.stellar-contact__field-preview { padding: 1.1rem 0 .7rem; border-bottom: 1px solid var(--contact-line); }
.stellar-contact__field-preview p:first-child { margin-bottom: .25rem; font-size: .75rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.stellar-contact__field-preview p:last-child { margin-bottom: 0; color: #625d56; }
.stellar-contact__form-unavailable { margin-top: 1.25rem; padding: .8rem 1rem; border-left: 3px solid #b36a45; background: rgba(255,255,255,.55); font-weight: 700; }
.stellar-contact__form-shell .wp-block-buttons { gap: .625rem; margin-top: 1.25rem; }
.stellar-contact__button .wp-block-button__link { min-height: 2.75rem; padding: .7rem 1.2rem; border: 1px solid var(--contact-navy); border-radius: 0; background: var(--contact-navy); color: #fff; font-size: .75rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.stellar-contact__button--outline .wp-block-button__link { background: transparent; color: var(--contact-navy); }
.stellar-contact__faq { max-width: none; padding: 3.125rem max(1.25rem, calc((100% - 41.875rem) / 2)) 6.1875rem; background: var(--contact-faq); }
.stellar-contact__faq-item { margin: 0; border-top: 1px solid var(--contact-line); }
.stellar-contact__faq-item:last-child { border-bottom: 1px solid var(--contact-line); }
.stellar-contact__faq-item summary { padding: 1.5rem 1.875rem 1.5rem 0; font-family: Georgia, 'Times New Roman', serif; font-size: 1.25rem; cursor: pointer; }
.stellar-contact__faq-item > p { padding: 0 1.875rem 1rem 0; margin-bottom: 0; }
.stellar-contact__footer { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; padding: 2rem clamp(1.5rem, 8vw, 8rem); background: #d9bb87; }
.stellar-contact__footer > a { font-family: Georgia, 'Times New Roman', serif; font-size: 1.2rem; }
.stellar-contact__footer nav { display: flex; flex-wrap: wrap; gap: 1.25rem; }
.stellar-contact__footer a { color: inherit; text-decoration: none; }
.stellar-contact a:focus-visible, .stellar-contact summary:focus-visible { outline: 3px solid #235b70; outline-offset: 3px; }
.stellar-contact .has-text-align-left { text-align: left !important; }
.stellar-contact .has-text-align-center { text-align: center !important; }
.stellar-contact .has-text-align-right { text-align: right !important; }
.stellar-contact :where(.wp-block-buttons,.wp-block-group,.wp-block-columns).is-content-justification-left { justify-content: flex-start !important; }
.stellar-contact :where(.wp-block-buttons,.wp-block-group,.wp-block-columns).is-content-justification-center { justify-content: center !important; }
.stellar-contact :where(.wp-block-buttons,.wp-block-group,.wp-block-columns).is-content-justification-right { justify-content: flex-end !important; }
.stellar-contact .is-layout-flex.is-vertical.is-content-justification-left { align-items: flex-start !important; }
.stellar-contact .is-layout-flex.is-vertical.is-content-justification-center { align-items: center !important; }
.stellar-contact .is-layout-flex.is-vertical.is-content-justification-right { align-items: flex-end !important; }
.stellar-contact .is-layout-constrained.is-content-justification-left > :where(:not(.alignright):not(.alignfull)) { margin-right: auto !important; margin-left: 0 !important; }
.stellar-contact .is-layout-constrained.is-content-justification-center > :where(:not(.alignleft):not(.alignright):not(.alignfull)) { margin-inline: auto !important; }
.stellar-contact .is-layout-constrained.is-content-justification-right > :where(:not(.alignleft):not(.alignfull)) { margin-right: 0 !important; margin-left: auto !important; }
@media (max-width: 749px) {
	.stellar-contact :where(p) { font-size: .875rem; }
	.stellar-contact__hero { padding: 2.5rem 1rem 1.875rem; }
	.stellar-contact__hero h1 { font-size: 2.5rem; }
	.stellar-contact__lead { font-size: 1rem !important; }
	.stellar-contact__form-shell { padding: 1.875rem 1rem; }
	.stellar-contact__form-shell .wp-block-buttons { align-items: stretch; flex-direction: column; }
	.stellar-contact__form-shell .wp-block-button, .stellar-contact__form-shell .wp-block-button__link { width: 100%; }
	.stellar-contact__faq { padding: 1.875rem 1rem 3.6875rem; }
	.stellar-contact__faq-item summary { padding-right: .75rem; font-size: 1rem; }
	.stellar-contact__footer { align-items: flex-start; flex-direction: column; }
}
@media (prefers-reduced-motion: reduce) { .stellar-contact * { animation: none !important; scroll-behavior: auto !important; transition: none !important; } }
