.svc-home-feature{display:grid;grid-template-columns:1fr 1fr;max-width:1200px;margin:80px auto;background:#f4f0e8;border:1px solid #e8e0d2;border-radius:15px;overflow:hidden;min-height:420px;color:#172430}.svc-home-feature>img{width:100%;height:100%;min-height:420px;object-fit:cover}.svc-home-feature>div{padding:55px 50px;display:flex;align-items:flex-start;flex-direction:column;justify-content:center}.svc-home-feature>div>span{color:#9c7b46;font-size:10px;letter-spacing:2px;text-transform:uppercase}.svc-home-feature h2{font-size:39px;font-weight:400;line-height:1.2;letter-spacing:-1px;margin:20px 0}.svc-home-feature p{font-size:13px;line-height:1.9;color:#646c64;margin:0 0 26px}.svc-home-feature a{display:inline-block;background:#203b33;color:#fff;text-decoration:none;padding:14px 23px;border-radius:7px;font-size:12px}.desktop-nav{gap:clamp(9px,1vw,18px)!important}.desktop-nav a{font-size:clamp(10px,.83vw,12px)!important;white-space:nowrap}.services-nav-link{color:inherit}.svc-home-feature a:focus-visible{outline:3px solid #8675b0;outline-offset:4px}@media(max-width:1250px){.svc-home-feature{margin:60px 30px}.svc-home-feature>div{padding:35px}.svc-home-feature h2{font-size:32px}}@media(max-width:720px){.svc-home-feature{grid-template-columns:1fr;margin:45px 20px}.svc-home-feature>img{min-height:0;height:270px}.svc-home-feature>div{padding:30px 26px}.svc-home-feature h2{font-size:29px}.svc-home-feature p{font-size:12px}}

/* Pullman navigation refinement, 20 September 2026 */
.desktop-nav a { font-size: 12px !important; }
@media (max-width: 1439px) {
  .header .desktop-nav { display: none !important; }
  .header .menu-toggle { display: flex !important; }
}
.mobile-menu[data-slot="sheet-content"] {
  z-index: 1001 !important;
  width: min(420px, 100vw) !important;
  min-width: 0 !important;
  max-width: 100vw !important;
  height: 100dvh !important;
  max-height: 100dvh !important;
  padding: max(24px, env(safe-area-inset-top)) 24px max(24px, env(safe-area-inset-bottom)) !important;
  overflow-y: auto !important;
  overscroll-behavior: contain;
  background: #faf9f6 !important;
  color: #21194e;
  box-shadow: -12px 0 48px #17162b1c;
}
body:has(.mobile-menu[data-state="open"]) [data-slot="sheet-overlay"] { z-index: 1000 !important; }
body:has(.mobile-menu[data-state="open"]) .mobile-book { visibility: hidden; pointer-events: none; }
.mobile-menu [data-slot="sheet-header"] { padding: 20px 48px 18px 0 !important; gap: 8px; }
.mobile-menu [data-slot="sheet-title"] {
  font-family: Montserrat, Arial, sans-serif !important;
  font-size: 23px !important;
  font-weight: 500 !important;
  letter-spacing: -.025em;
  line-height: 1.28 !important;
  max-width: 280px;
}
.mobile-menu [data-slot="sheet-description"] { font-size: 13px !important; line-height: 1.5; color: #6c6977; }
.mobile-menu button[data-slot="sheet-close"], .mobile-menu > button:last-child {
  top: max(16px, env(safe-area-inset-top)) !important;
  right: 16px !important;
  width: 44px !important;
  height: 44px !important;
  display: grid;
  place-items: center;
  border: 1px solid #e6e1d9;
  border-radius: 50%;
  background: #fff;
  opacity: 1;
}
.mobile-menu > [data-slot="sheet-title"] { max-width: calc(100% - 48px); }
.mobile-menu > button:last-child svg { width: 20px; height: 20px; }
.mobile-menu nav { display: flex; flex-direction: column; margin: 0 !important; gap: 0 !important; }
.mobile-menu nav > a:not(.btn) {
  min-height: 48px;
  padding: 12px 0 !important;
  gap: 16px;
  align-items: center;
  border-bottom: 1px solid #e9e5de;
  font-family: Inter, Arial, sans-serif !important;
  font-size: clamp(16px, 4.3vw, 18px) !important;
  line-height: 1.35 !important;
  font-weight: 400;
  letter-spacing: -.015em;
  text-decoration: none;
  color: #242239;
}
.mobile-menu nav > a:not(.btn) svg { width: 16px; height: 16px; flex: 0 0 16px; opacity: .65; }
.mobile-menu nav > a[aria-current="page"] { color: #8b6835; font-weight: 600; }
.mobile-menu nav > a.services-nav-link::after { content: "↗"; margin-left: auto; font-size: 18px; opacity: .65; }
.mobile-menu nav > .btn { margin-top: 24px !important; min-height: 50px; justify-content: center; font-size: 14px !important; }
.mobile-menu a:focus-visible { outline: 2px solid #8b6835; outline-offset: 3px; }
@media (max-width: 640px) {
  .mobile-menu[data-slot="sheet-content"] { width: 100vw !important; border: 0; }
}
@media (max-height: 540px) {
  .mobile-menu [data-slot="sheet-header"] { padding-top: 8px !important; padding-bottom: 12px !important; }
  .mobile-menu nav > a:not(.btn) { min-height: 44px; padding-block: 9px !important; }
}
