/* The availability area is a clearly labelled, read-only prototype. */
.availability-preview{background:#f4f0ea;color:#142640;padding:clamp(76px,8vw,132px) 24px}
.availability-wrap{width:min(1320px,100%);margin:auto}
.availability-heading{max-width:850px;margin:0 auto 58px;text-align:center}
.availability-heading h2{margin:0 0 22px;color:#142640;font:400 clamp(36px,4.2vw,66px)/1.06 Cultura,Georgia,serif;letter-spacing:-.035em}
.availability-heading p{max-width:700px;margin:0 auto;color:#44484c;font:400 17px/1.6 HeroGrotesque,Arial,sans-serif}
.availability-controls{display:grid;grid-template-columns:minmax(180px,.9fr) minmax(210px,1.15fr) minmax(260px,1.45fr) auto;align-items:end;gap:14px}
.availability-preview--entry .availability-controls{grid-template-columns:minmax(220px,.8fr) minmax(320px,1.4fr) auto}
.availability-controls label{display:grid;gap:9px;color:#142640;font:600 12px/1.3 HeroGrotesque,Arial,sans-serif;letter-spacing:.03em}
.availability-controls input,.availability-controls select{width:100%;height:54px;padding:0 13px;border:1px solid rgba(20,38,64,.3);border-radius:0;background:#fff;color:#142640;font:400 14px/1.3 HeroGrotesque,Arial,sans-serif}
.availability-controls button{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:54px;padding:0 18px;border:1px solid #142640;border-radius:0;background:#142640;color:#fff;cursor:pointer;font:600 12px/1.3 HeroGrotesque,Arial,sans-serif;transition:background .4s ease,color .4s ease}
.availability-controls button:hover,.availability-controls button:focus-visible{background:#fff;color:#142640}
.availability-controls :is(input,select,button):focus-visible{outline:2px solid #a47437;outline-offset:3px}
.availability-disclaimer{margin:22px 0 32px;padding:15px 18px;border-left:2px solid #b78d55;background:rgba(255,255,255,.6);color:#4c4c4c;font:500 12px/1.5 HeroGrotesque,Arial,sans-serif;letter-spacing:.025em}
.availability-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.availability-preview--entry .availability-results{grid-template-columns:minmax(0,760px);justify-content:center}
.availability-result-card{min-width:0;padding:clamp(23px,3vw,38px);border:1px solid rgba(20,38,64,.15);background:#fff}
.availability-result-head{display:flex;gap:20px;align-items:start;padding-bottom:25px;border-bottom:1px solid rgba(20,38,64,.16)}
.availability-result-head>span{color:#b78d55;font:400 21px/1 Cultura,Georgia,serif}
.availability-result-head h3{margin:0 0 8px;color:#142640;font:400 clamp(27px,2.5vw,37px)/1.1 Cultura,Georgia,serif}
.availability-result-head p{margin:0;color:#62666a;font:400 13px/1.4 HeroGrotesque,Arial,sans-serif}
.availability-slots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;list-style:none;margin:24px 0 0;padding:0}
.availability-slot{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:70px;padding:12px 15px;background:#f4f0ea}
.availability-slot strong{color:#142640;font:400 23px/1 Cultura,Georgia,serif}
.availability-slot span{color:#4b4d51;text-align:right;font:500 12px/1.3 HeroGrotesque,Arial,sans-serif}
.availability-slot.is-unavailable{opacity:.58}
.availability-slot.is-unavailable span{color:#a14444}
.availability-link-strip{padding:24px;background:#142640;text-align:center}
.availability-link-strip a{color:#fff;text-decoration:underline;text-underline-offset:5px;font:400 17px/1.4 Cultura,Georgia,serif}
.availability-link-strip a:hover,.availability-link-strip a:focus-visible{color:#d3ae75}
body.page-availability .availability-preview{min-height:calc(100vh - 90px);padding-top:clamp(130px,13vw,190px)}
body.page-plan .plan-business-contact{width:min(1320px,100%);margin:clamp(90px,9vw,140px) auto 0;padding-top:38px;border-top:1px solid rgba(20,38,64,.24)}
body.page-plan .plan-business-contact h2{margin:0 0 28px;color:#142640;font:400 clamp(33px,3vw,46px)/1.1 Cultura,Georgia,serif}
body.page-plan .plan-business-contact-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
body.page-plan .plan-business-contact-item{padding-top:17px;border-top:1px solid rgba(198,152,90,.75)}
body.page-plan .plan-business-contact-item strong{display:block;margin-bottom:11px;color:#9d703b;font:600 11px/1.2 HeroGrotesque,Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase}
body.page-plan .plan-business-contact-item span,body.page-plan .plan-business-contact-item a{color:#142640;overflow-wrap:anywhere;font:400 17px/1.45 HeroGrotesque,Arial,sans-serif}
body.page-plan .plan-business-contact-item a{text-decoration:underline;text-underline-offset:4px}
body.page-plan .plan-business-contact-item a:hover,body.page-plan .plan-business-contact-item a:focus-visible{color:#000}
@media(max-width:1050px){.availability-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.availability-controls button{grid-column:1/-1;justify-content:center}body.page-plan .plan-business-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.availability-preview{padding:76px 16px}.availability-heading{margin-bottom:38px}.availability-heading p{font-size:15px}.availability-controls{grid-template-columns:1fr}.availability-controls button{grid-column:auto}.availability-results{grid-template-columns:1fr}.availability-result-card{padding:22px}.availability-slots{grid-template-columns:1fr 1fr}.availability-slot{display:block;min-height:77px}.availability-slot strong,.availability-slot span{display:block;text-align:left}.availability-slot span{margin-top:6px}body.page-plan .plan-business-contact-grid{grid-template-columns:1fr}}
@media(max-width:1050px){.availability-preview--entry .availability-controls{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.availability-preview--entry .availability-controls{grid-template-columns:1fr}}
