/* WordPress integration additions; original design rules remain in style.css. */
.hn-cookie-banner:not(.show){visibility:hidden;pointer-events:none}.hn-cookie-banner.show{visibility:visible;pointer-events:auto}
.hn-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;visibility:hidden!important}
.vip-form{flex-wrap:wrap}.hn-newsletter-consent{flex-basis:100%;display:flex;gap:9px;align-items:flex-start;font-size:.78rem;line-height:1.5;color:rgba(255,255,255,.8)}.hn-newsletter-consent input{flex:0 0 16px;width:16px;height:16px;margin-top:3px;accent-color:#315B58}.hn-newsletter-consent a{text-decoration:underline}
html,body{width:100%;overflow:visible}section,main,footer{max-width:100%;overflow-x:clip}img,svg,iframe,video,embed,object{max-width:100%}.mobile-nav-drawer:not(.open){visibility:hidden;pointer-events:none}.mobile-nav-drawer.open{visibility:visible;pointer-events:auto}
a[href^="tel:"]{white-space:nowrap;word-break:keep-all}a[href^="mailto:"]{overflow-wrap:anywhere}
.admin-bar .site-header{top:32px}.hn-map-placeholder{display:flex;align-items:center;justify-content:center;min-height:240px;height:100%;padding:24px;text-align:center;color:#626C65;background:#ECEDE6}
@media(max-width:900px){section{padding-left:0!important;padding-right:0!important}.container{box-sizing:border-box}.split-block.reverse,.split-block.reverse>*{direction:ltr!important}.contact-form-card{padding:1.85rem 1.25rem!important;box-sizing:border-box;max-width:100%}.btn{box-sizing:border-box;min-height:48px;white-space:normal;text-align:center}.form-control{min-width:0;max-width:100%}select.form-control{appearance:none;-webkit-appearance:none;padding-right:2.5rem!important;white-space:nowrap;text-overflow:ellipsis;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6' fill='none' stroke='%236b655e' stroke-width='2'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat}}
@media(max-width:782px){.admin-bar .site-header{top:46px}}
@media(max-width:768px){.back-to-top,#back-to-top{display:none!important}.whatsapp-float::after{display:none!important}}

.hn-map-placeholder{flex-direction:column;gap:1.25rem;box-sizing:border-box}.hn-map-placeholder p{margin:0;max-width:32rem}.hn-map-placeholder .btn{max-width:100%}

@media(max-width:600px){.booking-field:nth-child(-n+2) label{min-height:2.6em;line-height:1.3;display:flex;flex-direction:column;justify-content:flex-end}.booking-label-main,.booking-label-detail{display:block;white-space:nowrap;letter-spacing:.035em}}

.testimonial-author{gap:.75rem;flex-wrap:wrap}.testimonial-author>div{flex:1 1 120px;min-width:0}.testimonial-author .verified-badge{flex-shrink:0;white-space:nowrap}

/* Keep the two mobile date controls inside their grid tracks. */
@media(max-width:640px){
  .booking-form,.booking-field,.booking-input{min-width:0;min-inline-size:0;max-width:100%}
  .booking-form{width:100%}
  .booking-input{display:block;width:100%;inline-size:100%}
}

/* Chromium mobile can report a tablet-sized CSS viewport; match the mobile navigation breakpoint. */
@media(max-width:900px){
  .booking-form{grid-template-columns:minmax(0,1fr)!important}
  .booking-field:nth-child(1),.booking-field:nth-child(2),.booking-field:nth-child(3),.booking-form .btn{grid-column:1!important;width:100%;max-width:100%}
  .booking-field,.booking-input{min-width:0!important;min-inline-size:0!important;max-width:100%!important;width:100%!important;inline-size:100%!important}
  input.booking-input[type="date"]{-webkit-appearance:none;appearance:none;position:relative;overflow:hidden}
  input.booking-input[type="date"]::-webkit-date-and-time-value{min-width:0;text-align:left}
  input.booking-input[type="date"]::-webkit-calendar-picker-indicator{position:absolute;right:.65rem;top:50%;transform:translateY(-50%);margin:0;padding:.3rem;width:1.35rem;height:1.35rem}
}

/* Mobile-first booking layout: desktop is the only explicit horizontal exception. */
.booking-form{grid-template-columns:minmax(0,1fr)!important;width:100%}
.booking-form>.booking-field,.booking-form>.btn{grid-column:1!important;width:100%;max-width:100%;min-width:0}
@media(min-width:901px){
  .booking-form{grid-template-columns:repeat(4,minmax(0,1fr)) auto!important}
  .booking-form>.booking-field,.booking-form>.btn{grid-column:auto!important}
  .booking-form>.btn{width:auto;max-width:none}
}
