/* A46: canonical contact geometry; replaces A45, not an extra stylesheet */
:root{--contact-w:150px;--contact-h:40px;--contact-gap:8px}
.ez-contact-stack,.ez-hotel-stack{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:7px!important;box-sizing:border-box!important;width:min(var(--contact-w),100%)!important;min-width:0!important;max-width:var(--contact-w)!important;flex:0 0 auto!important;margin:0!important}
.ez-contact-stack>.ez-primary-contact,.ez-contact-stack>.ez-email-a45,.ez-hotel-stack>.ez-hotel-wa,.ez-hotel-stack>.ez-hotel-email{display:flex!important;align-items:center!important;justify-content:space-between!important;box-sizing:border-box!important;width:100%!important;min-width:0!important;max-width:100%!important;height:var(--contact-h)!important;min-height:var(--contact-h)!important;max-height:var(--contact-h)!important;flex:0 0 var(--contact-h)!important;border-radius:999px!important;margin:0!important;padding:0 12px!important;gap:6px!important;white-space:nowrap!important;overflow:hidden!important;text-decoration:none!important;font-family:inherit!important;font-size:10px!important;font-weight:400!important;line-height:1.1!important;letter-spacing:.035em!important}
.ez-contact-stack>.ez-primary-contact,.ez-hotel-stack>.ez-hotel-wa{border:1px solid #82a88b!important;background:rgba(228,243,231,.35)!important;color:#37694b!important}
.ez-contact-stack>.ez-email-a45,.ez-hotel-stack>.ez-hotel-email{border:1px solid #83bbd1!important;background:#d8eff7!important;color:#376c81!important}
.ez-contact-stack .ez-i,.ez-hotel-stack .ez-i{display:flex!important;align-items:center!important;justify-content:center!important;flex:0 0 19px!important}
.ez-contact-stack .ez-i svg,.ez-hotel-stack .ez-i svg{display:block!important;width:17px!important;height:17px!important}
.ez-contact-stack .ez-word,.ez-hotel-stack .ez-word{flex:1 1 auto!important;min-width:0!important;text-align:center!important;font-size:10px!important}
.ez-contact-stack .ez-line,.ez-hotel-stack .ez-line{flex:0 0 1px!important;height:18px!important;background:currentColor!important;opacity:.25!important}
.ez-contact-stack .ez-arrow,.ez-hotel-stack .ez-arrow{flex:0 0 17px!important;font-size:18px!important;line-height:1!important;text-align:center!important}
.ez-contact-stack .ez-primary-contact.ez-a45-long{white-space:normal!important}.ez-contact-stack .ez-primary-contact.ez-a45-long .ez-word{font-size:9px!important}
/* Only the requested two sections have a horizontal pair. Width adapts to phone without overflow. */
.ez-contact-stack.ez-contact-inline{flex-direction:row!important;justify-content:center!important;align-items:center!important;gap:var(--contact-gap)!important;width:min(100%,473px)!important;max-width:100%!important;margin:9px auto!important}
.ez-contact-inline>.ez-primary-contact,.ez-contact-inline>.ez-email-a45{width:calc((100% - var(--contact-gap))/2)!important;min-width:0!important;max-width:150px!important;flex:1 1 0!important;padding:0 9px!important;gap:4px!important}
.ez-contact-inline .ez-word{font-size:10px!important;letter-spacing:0!important}.ez-contact-inline .ez-primary-contact.ez-a45-long .ez-word{font-size:8px!important;line-height:1.05!important}
.ez-contact-inline .ez-i{flex-basis:16px!important}.ez-contact-inline .ez-i svg{width:15px!important;height:15px!important}.ez-contact-inline .ez-arrow{flex-basis:14px!important;font-size:16px!important}.ez-contact-inline .ez-line{height:17px!important}
.tour-card .tour-actions>button:first-child{flex:0 0 auto!important;width:auto!important;max-width:40%!important;min-width:0!important;height:40px!important;min-height:40px!important;padding:5px 10px!important;font-size:10px!important;white-space:normal!important}
.ez-mail-bar,.essence-email-a35,.ez-email-a36,.ez-universal-email,.ez-email-a39,.ez-email-a41,.ez-email-a42{display:none!important}



/* A56: single source of truth for the four affected components */
#rental .rental-card .rental-dates{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;width:100%!important;max-width:none!important;margin:18px 0 12px!important}
#rental .rental-card .rental-date-field{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:7px!important;min-width:0!important;width:100%!important;text-align:center!important}
#rental .rental-card .rental-date-field span{font-size:13px!important;letter-spacing:.08em!important;text-align:center!important;display:block!important;width:100%!important}
#rental .rental-card .rental-date-field input[type=date]{display:block!important;width:100%!important;min-width:0!important;max-width:none!important;height:68px!important;min-height:68px!important;box-sizing:border-box!important;padding:10px 8px!important;font-size:17px!important;text-align:center!important;border-radius:15px!important}
#rental .rental-card .rental-date-field input[type=date]::-webkit-date-and-time-value{text-align:center!important}
#rental .rental-card .ez-car-contact-row{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;width:100%!important;max-width:none!important;margin:14px 0 0!important}
#rental .rental-card .ez-car-contact-row>.rental-book,#rental .rental-card .ez-car-contact-row>.ez-email-a45{display:grid!important;grid-template-columns:16px minmax(0,1fr) 1px 12px!important;align-items:center!important;column-gap:5px!important;width:100%!important;max-width:none!important;min-width:0!important;height:48px!important;min-height:48px!important;max-height:48px!important;margin:0!important;padding:0 7px!important;border-radius:999px!important;font-size:9px!important;letter-spacing:0!important;box-sizing:border-box!important;text-decoration:none!important;white-space:normal!important}
#rental .rental-card .ez-car-contact-row>.rental-book{border:1px solid #82a88b!important;background:#f0f7f0!important;color:#37694b!important}
#rental .rental-card .ez-car-contact-row>.ez-email-a45{border:1px solid #83bbd1!important;background:#d8eff7!important;color:#376c81!important}
#rental .rental-card .ez-car-contact-row i{font-size:18px!important;text-align:center!important}
#rental .rental-card .ez-car-contact-row .ez-word,#rental .rental-card .ez-car-contact-row .ez-email-a45>span:nth-child(2){font-size:9px!important;line-height:1.05!important;text-align:center!important;overflow-wrap:normal!important}
#rental .rental-card .ez-car-contact-row .ez-line{height:17px!important;width:1px!important;background:currentColor!important;opacity:.3!important}
#rental .rental-card .ez-car-contact-row .ez-arrow{font-size:15px!important;text-align:center!important}
#tours #tourCategoriesView>.ez-tour-home-back{position:relative!important;display:inline-flex!important;align-items:center!important;gap:9px!important;margin:0 0 20px!important;padding:0 16px!important;width:auto!important;min-width:0!important;height:40px!important;border:1px solid #d4d4d4!important;border-radius:999px!important;background:#fff!important;color:#202020!important;z-index:5!important;font-size:11px!important}
.ez-hotel-stack{display:flex!important;flex-direction:column!important;gap:8px!important;width:200px!important;max-width:100%!important;min-width:0!important;flex:0 0 auto!important;margin:0!important}
.ez-hotel-stack>.ez-hotel-wa,.ez-hotel-stack>.ez-hotel-email{display:grid!important;grid-template-columns:17px minmax(0,1fr) 1px 13px!important;align-items:center!important;column-gap:7px!important;width:100%!important;max-width:none!important;min-width:0!important;height:40px!important;min-height:40px!important;max-height:40px!important;box-sizing:border-box!important;margin:0!important;padding:0 10px!important;border-radius:999px!important;text-decoration:none!important;font-size:10px!important;line-height:1.1!important;letter-spacing:0!important;white-space:nowrap!important;overflow:hidden!important}
.ez-hotel-stack>.ez-hotel-wa{border:1px solid #82a88b!important;background:#f0f7f0!important;color:#37694b!important}
.ez-hotel-stack>.ez-hotel-email{border:1px solid #83bbd1!important;background:#d8eff7!important;color:#376c81!important}
.ez-hotel-stack .ez-i{display:flex!important;align-items:center!important;justify-content:center!important;width:17px!important;min-width:17px!important}
.ez-hotel-stack .ez-i svg{display:block!important;width:17px!important;height:17px!important}
.ez-hotel-stack .ez-word{display:block!important;min-width:0!important;font-size:10px!important;letter-spacing:0!important;line-height:1.1!important;text-align:center!important;white-space:nowrap!important}
.ez-hotel-stack .ez-line{display:block!important;width:1px!important;height:17px!important;background:currentColor!important;opacity:.3!important}
.ez-hotel-stack .ez-arrow{display:block!important;font-size:16px!important;text-align:center!important;line-height:1!important}

#rental .rental-card .rental-date-field input[type=date]::-webkit-calendar-picker-indicator{width:23px!important;height:23px!important;opacity:.85!important;cursor:pointer!important}
#rental .rental-card .rental-date-field input[type=date]::-webkit-datetime-edit{display:flex!important;justify-content:center!important;align-items:center!important;width:100%!important}
