#landing .ta-contact.contact-modern{display:block;padding:65px 45px;background:#faf8f3;color:#263e31;overflow:visible}#landing .contact-card{display:grid;grid-template-columns:.85fr 1.15fr;background:#fff;border:1px solid #e4e8de;border-radius:24px;overflow:hidden}#landing .contact-portrait{position:relative;margin:0;min-height:510px;background:#d5d4be}#landing .contact-portrait img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:52% 43%}#landing .contact-portrait:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#122925b8)}#landing .contact-portrait figcaption{position:absolute;bottom:30px;left:28px;z-index:1;color:#fff;font:500 24px/1.3 Lora,serif;letter-spacing:-.03em}#landing .contact-copy{padding:44px 38px;align-self:center}#landing .contact-eyebrow{display:flex;align-items:center;gap:8px;font:500 11px Manrope,sans-serif;color:#617259;margin-bottom:24px}#landing .contact-eyebrow>span{height:6px;width:6px;background:#80966f;border-radius:50%}#landing .contact-copy h3{font-size:44px;color:#263e31;line-height:1.12;margin:0 0 20px}#landing .contact-copy>p{font-size:14px;line-height:1.85;color:#66715f;margin:0 0 25px;max-width:38ch}#landing .contact-copy .contact-main{display:flex;width:100%;justify-content:space-between;gap:15px;background:#405b43;color:#fff;border-radius:10px;font:600 13px Manrope,sans-serif;padding:17px 20px;border:0}#landing .contact-copy .contact-main:hover{background:#2d4432}#landing .contact-booking{display:flex;justify-content:space-between;padding:17px 3px;color:#405b43;text-decoration:none;font:500 12px Manrope,sans-serif;border-bottom:1px solid #e1e6dc}#landing .contact-meta{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:23px 0;font:500 11px/1.7 Manrope,sans-serif;color:#344c3a}#landing .contact-meta small{font-size:10px;color:#798370}#landing .contact-meta .contact-link{font:500 11px Manrope,sans-serif;color:#405b43;padding:0;min-height:36px;text-decoration:none;background:none;border:0;cursor:pointer}#landing .contact-copy .contact-demo-note{font-size:10px;line-height:1.6;color:#7a8373;margin:0;max-width:45ch}#landing #contact-feedback:empty{display:none}#landing #contact-feedback{font-size:12px;color:#405b43;background:#f1f5eb;padding:12px;border-radius:8px;margin:15px 0}#landing .contact-modern .contact-preview{max-width:500px;margin:22px 0 0 auto;border:1px solid #d9e2d0;border-radius:16px;overflow:hidden;box-shadow:0 10px 35px #263e310b}#landing .contact-modern .contact-preview p{color:#263e31}#landing .contact-modern .chat-heading{display:flex;align-items:center;gap:12px}#close-contact{margin-left:auto;border:0;background:transparent;font-size:25px;color:#405b43;cursor:pointer;padding:8px}#landing .contact-modern:after{display:none}
@media(max-width:650px){#landing .ta-contact.contact-modern{padding:35px 20px}#landing .contact-card{grid-template-columns:1fr;border-radius:18px}#landing .contact-portrait{min-height:230px}#landing .contact-portrait img{object-position:center 45%}#landing .contact-portrait figcaption{font-size:22px;bottom:22px;left:24px}#landing .contact-copy{padding:28px 24px}#landing .contact-copy h3{font-size:37px}#landing .contact-eyebrow{margin-bottom:20px}#landing .contact-copy>p{font-size:13px}#landing .contact-meta{flex-direction:column;align-items:flex-start;gap:8px}}

/* Text-based controls without arrows. */
#landing .month-nav button{width:auto;min-width:64px;padding:6px 9px;font:500 11px Manrope,sans-serif;border-radius:6px}select{appearance:none;background-image:none}summary{list-style:none}summary::-webkit-details-marker{display:none}summary::marker{content:''}summary:after{content:'+';float:right;margin-left:15px}details[open]>summary:after{content:'−'}#landing .contact-copy .contact-main{justify-content:center}
/* Keep the booking heading, supporting copy and steps on a shared center. */
#landing .booking-intro{width:100%;box-sizing:border-box}
#landing .booking-intro>p{margin-inline:auto;text-align:center}
#landing .booking-widget{min-width:0;width:100%;box-sizing:border-box}
#landing .booking-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;text-align:center;box-sizing:border-box}
#landing .booking-steps li{min-width:0;overflow-wrap:break-word}
