.hotel-contact{color:#12372d;font-family:'DM Sans',Arial,sans-serif}.hotel-contact-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:1000px;margin:24px auto}.hotel-contact .hotel-contact-link{display:flex;flex-direction:column;justify-content:center;gap:8px;margin:0;padding:20px 16px;border:1px solid #dce5dc;border-radius:12px;background:#f6f9f4;text-decoration:none;color:#12372d;min-width:0;transition:background .15s}.hotel-contact-link strong{font-size:14px}.hotel-contact .hotel-contact-link span{margin-left:0;font-size:13px;line-height:1.6;overflow-wrap:anywhere}.hotel-contact .hotel-contact-link:hover{background:#eaf2e7;border-color:#9eaf9d}.hotel-contact a:focus-visible,.hotel-contact button:focus-visible{outline:3px solid #c59642;outline-offset:3px}.hotel-contact p{font-size:13px;line-height:1.7}.hotel-contact button{font:inherit;font-size:13px;padding:9px 14px;border:1px solid #bdcdbd;border-radius:8px;background:#fff;color:#12372d;cursor:pointer}.hotel-support{background:white;border:1px solid #e2e8e1;border-radius:16px;padding:24px;margin:24px 0}.hotel-support h2{font:600 23px 'Playfair Display',Georgia,serif;margin:0 0 10px}.hotel-support>p{font-size:14px;color:#63786e;line-height:1.7;margin:0}.hotel-support .hotel-contact-links{margin:18px 0 0;max-width:none}.contact-section .hotel-contact{max-width:1000px;margin:auto}.portal-support{margin:24px auto 0;max-width:1200px;padding:24px;background:#fff;border:1px solid #e2e8e1;border-radius:10px}.portal-support h2{font-size:20px}.portal-support .hotel-contact-links{margin-bottom:0}@media(max-width:680px){.hotel-contact-links{grid-template-columns:1fr;gap:10px}.hotel-contact .hotel-contact-link{padding:15px}.hotel-support{padding:20px}.portal-support{margin:24px 16px 0;padding:20px}}
.hotel-contact .hotel-contact-address {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 6px 16px;
  margin: 18px 0 0;
  padding: 14px 16px;
  border: 1px solid #dce5dc;
  border-radius: 12px;
  background: #f6f9f4;
  text-align: left;
}
.hotel-contact-address span { flex: 1 1 220px; overflow-wrap: anywhere; }
.hotel-contact .hotel-contact-address a,
.booking-policy-note a {
  margin: 0;
  color: #174e3d;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.booking-policy-note { margin: 12px 0 16px; font-size: 14px; line-height: 1.55; }
.contact-section .booking-policy-note a { margin-top: 16px; }
.booking-policy-page { margin: 0; background: #f3f6f2; color: #12372d; font: 16px/1.65 'DM Sans', Arial, sans-serif; }
.booking-policy-main { width: min(900px, calc(100% - 32px)); margin: 32px auto; }
.booking-policy-main a { color: #174e3d; text-underline-offset: 3px; }
.booking-policy-copy { padding: clamp(20px, 4vw, 40px); }
.booking-policy-copy h1 { margin: 4px 0 12px; font: 600 clamp(26px, 4vw, 40px)/1.2 'Playfair Display', Georgia, serif; }
.booking-policy-copy p { margin: 0; }
.booking-policy-copy .booking-policy-brand { color: #865013; font-size: 12px; font-weight: 700; letter-spacing: .12em; }
.booking-policy-copy section { padding-top: 18px; margin-top: 20px; border-top: 1px solid #e2e8e1; }
