/* Hallmark · component refinements: red brand and consistent action heights · v2.0.0 */
/* Final action sizing and the verified red brand emphasis. */
*,*::before,*::after{box-sizing:border-box}
.button,.hero .text-link{display:inline-flex;align-items:center;justify-content:center;height:50px;min-height:50px;padding:0 24px;font-size:16px;line-height:1.2;color:var(--paper);background:var(--brand);max-width:100%;text-align:center}
.button:hover,.hero .text-link:hover{background:var(--brand-hover);color:var(--paper)}
.button:active,.hero .text-link:active{background:var(--brand-active)}
.mast nav>a.button{color:var(--paper)}
.hero h1{max-width:100%;min-width:0}
.search .booking-form__submit{height:52px;min-height:52px;padding:0 24px;color:var(--paper);background:var(--brand)}
.search .booking-form__submit:hover{color:var(--paper);background:var(--brand-hover)}
.search .booking-form__submit:active{background:var(--brand-active)}
@media(max-width:520px){.button,.hero .text-link,.search .booking-form__submit{height:48px;min-height:48px;padding:0 22px;font-size:16px;line-height:1.2}.hero h1{font-size:clamp(36px,10.3vw,46px);line-height:1.08;letter-spacing:-.045em}.hero-copy{padding:30px 20px 28px}.hero-copy>p:not(.intro){font-size:18px}.hero .text-link{margin-top:20px}.hero{min-height:0}.search{margin-top:20px}.location-opening h1{font-size:clamp(35px,10vw,45px)}}
.prose details{border-bottom:1px solid var(--line);padding:16px 0}.prose summary{cursor:pointer;font-weight:700;font-size:18px}.prose details p{margin-top:12px}.prose table{min-width:480px}.prose td,.prose th{vertical-align:top}

.search .booking-form__submit{height:48px;min-height:48px}
