/* Contact page layout. */
.contact-page {
	--contact-card-info: #ead7b7;
	--contact-card-form: #f0dfc2;
	--contact-field: #fffaf0;
	--contact-field-border: rgba(103, 63, 34, .28);
	--contact-ink: var(--rk-ink-900);
	overflow-x: clip;
	padding: 0;
	color: var(--contact-ink);
}

/* Contact hero. */
.contact-page .contact-hero{isolation:isolate;position:relative;overflow:hidden;min-height:clamp(34rem,63vw,48rem);color:#fff;background:#241108}
.contact-page .contact-hero picture,.contact-page .contact-hero picture img{position:absolute;inset:0;z-index:-2;width:100%;height:100%}
.contact-page .contact-hero picture img{object-fit:cover;object-position:center}
.contact-page .contact-hero::after{position:absolute;inset:0;z-index:-1;content:"";background:linear-gradient(90deg,rgba(27,11,4,.92),rgba(27,11,4,.58) 38%,rgba(27,11,4,.08) 72%)}
.contact-page .contact-hero__inner{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;max-width:var(--rk-container);min-height:inherit;padding-block:clamp(4rem,8vw,7rem)}
.contact-page .contact-hero h1{display:flex;flex-wrap:nowrap;gap:.7rem;align-items:center;margin-bottom:var(--rk-space-5);color:#fff;line-height:1}
.contact-page .contact-hero h1 img{position:static;display:block;width:auto;height:clamp(5.175rem,8.05vw,6.9rem);object-fit:contain;transform:translateY(15px)}
.contact-page .contact-hero__lead{max-width:38rem;margin-bottom:var(--rk-space-6);font-size:clamp(1.0625rem,2vw,1.25rem)}
.contact-page .contact-hero__alternate{margin-top:var(--rk-space-3);color:#fff;font-weight:700;text-decoration:underline;text-underline-offset:.2em}
.contact-page .contact-hero__hours{margin-top:var(--rk-space-6);font-weight:700}
/* Contact cards and form. */
.contact-page .contact-main{padding-block:clamp(3rem,7vw,6rem);background:#f6e5bf url("../images/contact/web/contact-page-background.webp") center/cover no-repeat}
.contact-page .contact-grid{display:grid;grid-template-columns:minmax(17rem,.36fr) minmax(0,.64fr);gap:clamp(1rem,3vw,2rem);align-items:start}
.contact-page .contact-card{isolation:isolate;position:relative;min-width:0;overflow:hidden;padding:clamp(1.25rem,3vw,2.5rem);border:1px solid rgba(116,72,34,.24);border-radius:var(--rk-radius-xl);background:linear-gradient(145deg,rgba(255,250,235,.34),rgba(193,145,88,.08)),var(--contact-card-info);box-shadow:var(--rk-shadow-s2)}
.contact-page .contact-form-card{background:linear-gradient(145deg,rgba(255,252,240,.42),rgba(191,140,79,.07)),var(--contact-card-form)}
.contact-page .contact-card::before{position:absolute;inset:0;z-index:-1;content:"";pointer-events:none;background:repeating-linear-gradient(118deg,transparent 0 2.35rem,rgba(130,78,36,.055) 2.4rem 2.48rem,transparent 2.53rem 4.8rem),radial-gradient(ellipse at 8% 12%,rgba(255,255,255,.24),transparent 42%),radial-gradient(ellipse at 92% 88%,rgba(150,90,41,.07),transparent 48%);opacity:.72}
.contact-page .contact-form-card::before{transform:scaleX(-1);opacity:.58}
.contact-page .contact-card h2{margin-top:0;font-size:clamp(1.5rem,2.4vw,2rem);line-height:1.15;white-space:nowrap}.contact-page .contact-card dl{display:grid;gap:.25rem;margin:0}.contact-page .contact-card dt{margin-top:var(--rk-space-4);font-weight:800}.contact-page .contact-card dd{min-width:0;margin:0;overflow-wrap:anywhere}
.contact-page .contact-callout{margin-top:var(--rk-space-8);padding:var(--rk-space-5);border:1px solid rgba(126,75,24,.2);border-radius:var(--rk-radius-lg);background:var(--rk-gold-soft)}
.contact-page .contact-callout h3{margin-top:0;font-size:1.125rem}
.contact-page .contact-form-card form>p,.contact-page .contact-form-row>p{display:grid;gap:.5rem}.contact-page .contact-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--rk-space-4)}.contact-page .contact-form-row>p{min-width:0;margin-block:1em}.contact-page .contact-form-card label{font-weight:700}.contact-page .contact-form-card input:not([type="checkbox"]),.contact-page .contact-form-card select,.contact-page .contact-form-card textarea{width:100%;min-height:3rem;padding:.75rem;border:1px solid var(--contact-field-border);border-radius:var(--rk-radius-md);color:var(--contact-ink);background:var(--contact-field);font:inherit}.contact-page .contact-form-card input::placeholder,.contact-page .contact-form-card textarea::placeholder{color:#6f655c;opacity:1}
.contact-page .contact-form-card textarea{min-height:9rem;resize:vertical}.contact-page .contact-consent label{display:flex;gap:.65rem;align-items:flex-start;font-weight:400}.contact-page .contact-consent input{flex:0 0 auto;margin-top:.25rem}
.contact-page .contact-consent span{min-width:0}.contact-page .contact-submit-row{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem}.contact-page .contact-submit-row small{line-height:1.45}
.contact-page .contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.contact-page .contact-errors{padding:var(--rk-space-4);border-left:4px solid var(--rk-red-600);background:#fff0eb}.contact-page .contact-result{padding-block:var(--rk-space-4);outline:none}
.contact-page .contact-field-error{display:block;color:var(--rk-red-700);font-weight:700}.contact-page .contact-form-card [aria-invalid="true"]{border-color:var(--rk-red-600)}
.contact-page .contact-error-actions{display:flex;flex-wrap:wrap;gap:.5rem}.contact-page .contact-error-actions a{font-weight:700}
/* Contact responsive and interaction. */
.contact-page .contact-form-card input:focus-visible,.contact-page .contact-form-card select:focus-visible,.contact-page .contact-form-card textarea:focus-visible{border-color:var(--rk-blue-600);outline:2px solid var(--rk-blue-600);outline-offset:2px}
.contact-page .contact-form-card button[disabled]{cursor:wait;opacity:.72}
@media(max-width:767px){.contact-page .contact-hero{min-height:43rem}.contact-page .contact-hero::after{background:linear-gradient(180deg,rgba(27,11,4,.88),rgba(27,11,4,.28) 58%,rgba(27,11,4,.08))}.contact-page .contact-hero picture img{object-position:center bottom}.contact-page .contact-hero__inner{justify-content:flex-start;padding-block:3rem 16rem}.contact-page .contact-hero h1{gap:.45rem}.contact-page .contact-hero h1 img{height:4.3125rem}.contact-page .contact-grid,.contact-page .contact-form-row{grid-template-columns:1fr}.contact-page .contact-card{padding:1.25rem}.contact-page .contact-main{background-position:center top}.contact-page .contact-form-card .button{width:100%}.contact-page .contact-submit-row small{width:100%}}
@media(min-width:768px) and (max-width:1023px){.contact-page .contact-grid{grid-template-columns:1fr}.contact-page .contact-hero{min-height:38rem}}
@media(prefers-reduced-motion:reduce){.contact-page{scroll-behavior:auto}}