/* Attraction-page presentation, scoped to the conversion templates. */

body.vm-page-home #main.ac-mj * { box-sizing: border-box; }
body.vm-page-home #main.ac-mj img { display: block; max-width: 100%; }
body.vm-page-home #main.ac-mj a { color: inherit; }
body.vm-page-home #main.ac-mj .wrap { width: 100%; max-width: 1160px; margin: 0px auto; padding-left: var(--gutter); padding-right: var(--gutter); }
body.vm-page-home #main.ac-mj .eyebrow { margin: 0px 0px 10px; font-size: 10px; font-weight: 600; letter-spacing: 3.4px; text-transform: uppercase; color: var(--gold-deep); }
body.vm-page-home #main.ac-mj h1,
body.vm-page-home #main.ac-mj h2,
body.vm-page-home #main.ac-mj h3 { font-family: var(--serif); font-weight: 600; color: var(--navy); margin: 0px; text-wrap: balance; }
body.vm-page-home #main.ac-mj h1 { font-size: clamp(42px, 10.5vw, 68px); line-height: 0.94; letter-spacing: -1.2px; }
body.vm-page-home #main.ac-mj h2 { font-size: clamp(32px, 5.2vw, 46px); line-height: 1.02; letter-spacing: -0.7px; }
body.vm-page-home #main.ac-mj h3 { font-size: 26px; line-height: 1.1; letter-spacing: -0.4px; }
body.vm-page-home #main.ac-mj .gold-rule { display: block; width: 44px; height: 2px; background: var(--gold); margin: 14px 0px 16px; }
body.vm-page-home #main.ac-mj .sub { margin: 10px 0px 0px; font-size: 16px; color: var(--muted); max-width: 58ch; }
body.vm-page-home #main.ac-mj .lead { font-family: var(--serif); font-weight: 600; font-size: clamp(20px, 5.2vw, 24px); line-height: 1.15; margin: 0px; max-width: 26ch; }
body.vm-page-home #main.ac-mj section { padding: 48px 0px; }
body.vm-page-home #main.ac-mj .btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; font-style: inherit; font-variant: inherit; font-stretch: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-language-override: inherit; font-weight: 600; font-size: 16px; line-height: 1; padding: 15px 24px; border-radius: 10px; text-decoration: none; border: 0px; cursor: pointer; }
body.vm-page-home #main.ac-mj .btn svg { width: 18px; height: 18px; fill: none; stroke: currentcolor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
body.vm-page-home #main.ac-mj .btn-primary { color: rgb(255, 255, 255); background: linear-gradient(115deg, var(--cobalt-a), var(--cobalt-b)); box-shadow: rgba(7, 49, 194, 0.18) 0px 8px 20px; }
body.vm-page-home #main.ac-mj .btn-primary:hover { background: linear-gradient(115deg, #0a3bd6, var(--cobalt-b)); }
body.vm-page-home #main.ac-mj .btn-outline { color: var(--navy); background: transparent; border: 1px solid var(--navy); }
body.vm-page-home #main.ac-mj .btn-outline:hover { background: var(--navy); color: rgb(255, 255, 255); }
body.vm-page-home #main.ac-mj .btn-wide { width: 100%; }
body.vm-page-home #main.ac-mj .link { display: inline-flex; align-items: center; gap: 8px; font-weight: 600; font-size: 15px; color: var(--navy); text-decoration: none; }
body.vm-page-home #main.ac-mj .link::after { content: "→"; color: var(--gold); transition: transform 200ms; }
body.vm-page-home #main.ac-mj .link:hover::after { transform: translateX(4px); }
body.vm-page-home #main.ac-mj .ico { width: 22px; height: 22px; fill: none; stroke: var(--gold); stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; flex: 0 0 auto; }
body.vm-page-home #main.ac-mj :focus-visible { outline: 2px solid var(--cobalt); outline-offset: 3px; border-radius: 4px; }
body.vm-page-home #main.ac-mj .ymlv { border-top: 1px solid var(--line); }
body.vm-page-home #main.ac-mj .ysearch { position: relative; margin-top: 18px; }
body.vm-page-home #main.ac-mj .ysearch input { width: 100%; height: 48px; border-radius: 12px; border: 1px solid var(--line-2); background: var(--white); font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-language-override: inherit; font-size: 16px; padding: 0px 14px 0px 42px; color: var(--navy); }
body.vm-page-home #main.ac-mj .ysearch input::placeholder { color: var(--muted); }
body.vm-page-home #main.ac-mj .ysearch input:focus { outline: 2px solid var(--cobalt); outline-offset: 1px; }
body.vm-page-home #main.ac-mj .ysearch > svg { position: absolute; left: 14px; top: 14px; width: 20px; height: 20px; fill: none; stroke: var(--muted); stroke-width: 2; stroke-linecap: round; pointer-events: none; }
body.vm-page-home #main.ac-mj .sugg { position: absolute; top: 54px; left: 0px; right: 0px; background: var(--white); color: var(--navy); border: 1px solid var(--line-2); border-radius: 12px; box-shadow: rgba(7, 27, 50, 0.18) 0px 16px 40px; padding: 6px; display: none; z-index: 5; }
body.vm-page-home #main.ac-mj .ysearch.open .sugg { display: block; }
body.vm-page-home #main.ac-mj .sugg .grp { padding: 8px 10px 4px; font-size: 10px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: var(--muted); }
body.vm-page-home #main.ac-mj .sugg a { display: flex; align-items: center; gap: 10px; padding: 9px 10px; border-radius: 8px; text-decoration: none; font-size: 14px; color: var(--navy); }
body.vm-page-home #main.ac-mj .sugg a:hover { background: var(--paper); }
body.vm-page-home #main.ac-mj .sugg a > span:first-child { white-space: nowrap; }
body.vm-page-home #main.ac-mj .sugg a span.s { color: var(--muted); font-size: 12.5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0px; }
body.vm-page-home #main.ac-mj .sugg a .tag { margin-left: auto; font-size: 10.5px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--muted-green); background: var(--paper); padding: 3px 7px; border-radius: 999px; white-space: nowrap; }
body.vm-page-home #main.ac-mj .sugg a .tag.live { color: rgb(255, 255, 255); background: var(--navy); }
body.vm-page-home #main.ac-mj .sugg .none { padding: 10px; font-size: 13.5px; color: var(--muted); }
body.vm-page-home #main.ac-mj .ycards { display: flex; gap: 10px; margin-top: 18px; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 6px; scrollbar-width: none; }
body.vm-page-home #main.ac-mj .ycard { position: relative; flex: 0 0 62%; scroll-snap-align: start; display: block; text-decoration: none; color: var(--navy); background: var(--white); border: 1px solid var(--line-2); border-radius: 14px; overflow: hidden; }
body.vm-page-home #main.ac-mj .ycard img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; filter: saturate(0.85); }
body.vm-page-home #main.ac-mj .ycard .badge { position: absolute; top: 8px; left: 8px; font-size: 10.5px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; background: rgba(253, 252, 248, 0.94); color: var(--muted-green); padding: 4px 8px; border-radius: 999px; }
body.vm-page-home #main.ac-mj .ycard .t { padding: 8px 10px 10px; display: grid; gap: 1px; }
body.vm-page-home #main.ac-mj .ycard .t b { font-family: var(--serif); font-weight: 600; font-size: 20px; line-height: 1.1; letter-spacing: -0.3px; }
body.vm-page-home #main.ac-mj .ycard .t span { font-size: 12px; color: var(--muted); }
body.vm-page-home #main.ac-mj .ymlv .link { margin-top: 14px; }
body.vm-page-home #main.ac-mj .hero { padding: 0px; }
body.vm-page-home #main.ac-mj .hero .wrap { padding: 0px; max-width: none; }
body.vm-page-home #main.ac-mj .hero-media { margin: 0px; position: relative; aspect-ratio: 3 / 2; }
body.vm-page-home #main.ac-mj .hero-media img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 45%; }
body.vm-page-home #main.ac-mj .hero-media .from { position: absolute; left: var(--gutter); bottom: 14px; display: inline-flex; align-items: baseline; gap: 6px; background: rgba(7, 27, 50, 0.82); color: rgb(255, 255, 255); border-radius: 999px; padding: 7px 12px; font-size: 12.5px; backdrop-filter: blur(4px); }
body.vm-page-home #main.ac-mj .hero-media .from b { font-size: 15px; }
body.vm-page-home #main.ac-mj .hero-copy { padding: 18px var(--gutter) 24px; }
body.vm-page-home #main.ac-mj .crumbs { display: flex; flex-wrap: wrap; gap: 6px; font-size: 12.5px; color: var(--muted); margin: 0px 0px 12px; }
body.vm-page-home #main.ac-mj .crumbs a { color: var(--navy); text-decoration-line: underline; text-decoration-thickness: initial; text-decoration-style: initial; text-underline-offset: 3px; text-decoration-color: var(--line-2); }
body.vm-page-home #main.ac-mj .crumbs i { font-style: normal; color: var(--gold); }
body.vm-page-home #main.ac-mj .hero-copy .lead { margin-top: 10px; }
body.vm-page-home #main.ac-mj .buy { margin: 16px 0px 0px; background: var(--white); border: 1px solid var(--line-2); border-radius: 18px; padding: 16px; box-shadow: rgba(7, 27, 50, 0.08) 0px 14px 40px; }
body.vm-page-home #main.ac-mj .buy .eyebrow { margin-bottom: 4px; }
body.vm-page-home #main.ac-mj .buy h3 { font-size: 28px; margin: 0px 0px 12px; }
body.vm-page-home #main.ac-mj .opt { display: grid; grid-template-columns: 22px 1fr auto; gap: 10px; align-items: center; padding: 11px 12px; border: 1px solid var(--line-2); border-radius: 12px; margin-bottom: 8px; cursor: pointer; background: var(--white); transition: border-color 150ms, background 150ms; }
body.vm-page-home #main.ac-mj .opt:hover { border-color: rgb(185, 178, 160); }
body.vm-page-home #main.ac-mj .opt.on { border-color: var(--navy); background: rgb(246, 243, 234); box-shadow: inset 0 0 0 1px var(--navy); }
body.vm-page-home #main.ac-mj .opt .radio { width: 20px; height: 20px; border-radius: 50%; border: 2px solid rgb(154, 160, 168); display: grid; place-items: center; }
body.vm-page-home #main.ac-mj .opt.on .radio { border-color: var(--navy); }
body.vm-page-home #main.ac-mj .opt.on .radio::after { content: ""; width: 10px; height: 10px; border-radius: 50%; background: var(--navy); }
body.vm-page-home #main.ac-mj .opt .t { display: grid; min-width: 0px; }
body.vm-page-home #main.ac-mj .opt .t b { font-size: 15px; }
body.vm-page-home #main.ac-mj .opt .t span { font-size: 12.5px; color: var(--muted); }
body.vm-page-home #main.ac-mj .opt .p { text-align: right; display: grid; }
body.vm-page-home #main.ac-mj .opt .p b { font-size: 17px; font-variant-numeric: tabular-nums; }
body.vm-page-home #main.ac-mj .opt .p span { font-size: 11px; color: var(--muted); }
body.vm-page-home #main.ac-mj .buy-note { margin: 2px 0px 0px; font-size: 12px; color: var(--muted); }
body.vm-page-home #main.ac-mj .dates { display: flex; gap: 8px; margin: 12px 0px; }
body.vm-page-home #main.ac-mj .dates button { flex: 1 1 0%; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-language-override: inherit; font-size: 13px; font-weight: 600; color: var(--navy); background: transparent; border: 1px solid var(--line-2); border-radius: 10px; padding: 10px 6px; cursor: pointer; }
body.vm-page-home #main.ac-mj .dates button.on { background: var(--sun); border-color: var(--sun); }
body.vm-page-home #main.ac-mj .trust { display: flex; flex-wrap: wrap; gap: 6px 14px; margin: 10px 0px 0px; padding: 0px; list-style: none; font-size: 12px; color: var(--muted-green); }
body.vm-page-home #main.ac-mj .trust li::before { content: "✓ "; color: var(--ok); }
body.vm-page-home #main.ac-mj .story { padding: 0px 0px 8px; }
body.vm-page-home #main.ac-mj .story .wrap { display: grid; grid-template-columns: 1fr 40%; gap: 16px; align-items: center; padding-top: 28px; padding-bottom: 28px; border-top: 1px solid var(--line); }
body.vm-page-home #main.ac-mj .story h2 { font-size: clamp(28px, 7vw, 46px); }
body.vm-page-home #main.ac-mj .story p { margin: 0px; font-size: 14.5px; color: var(--navy-2); max-width: 30ch; }
body.vm-page-home #main.ac-mj .story figure { margin: 0px; }
body.vm-page-home #main.ac-mj .story img { width: 100%; height:auto; aspect-ratio: 4 / 5; object-fit: cover; border-radius: 14px; }
body.vm-page-home #main.ac-mj .story figcaption { display: none; margin-top: 8px; font-size: 12px; color: var(--muted); }
body.vm-page-home #main.ac-mj .booking { background: var(--white); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); scroll-margin-top: 70px; padding-top: 40px; }
body.vm-page-home #main.ac-mj .steps-mini { display: flex; align-items: center; margin: 16px 0px 18px; padding: 0px; list-style: none; font-size: 12.5px; color: var(--muted); }
body.vm-page-home #main.ac-mj .steps-mini li { display: flex; align-items: center; gap: 8px; }
body.vm-page-home #main.ac-mj .steps-mini li + li::before { content: ""; width: 18px; height: 1px; background: var(--line-2); margin: 0px 8px; }
body.vm-page-home #main.ac-mj .steps-mini b { width: 22px; height: 22px; border-radius: 50%; border: 1px solid var(--gold); color: var(--gold-deep); font-size: 11px; font-weight: 700; display: grid; place-items: center; }
body.vm-page-home #main.ac-mj .steps-mini li.on { color: var(--navy); font-weight: 600; }
body.vm-page-home #main.ac-mj .steps-mini li.on b { background: var(--navy); border-color: var(--navy); color: rgb(255, 255, 255); }
body.vm-page-home #main.ac-mj .cards { display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; }
body.vm-page-home #main.ac-mj .xcard { position: relative; display: block; background: var(--white); border: 1px solid var(--line-2); border-radius: 16px; padding: 12px 12px 14px; cursor: pointer; transition: border-color 160ms, box-shadow 160ms; }
body.vm-page-home #main.ac-mj .xcard input { position: absolute; opacity: 0; width: 1px; height: 1px; }
body.vm-page-home #main.ac-mj .xcard:hover { border-color: rgb(185, 178, 160); }
body.vm-page-home #main.ac-mj .xcard:has(input:checked) { border-color: var(--navy); box-shadow: 0 0 0 1px var(--navy), 0 12px 30px rgba(7, 27, 50, 0.08); }
body.vm-page-home #main.ac-mj .xcard:has(input:focus-visible) { outline: 2px solid var(--cobalt); outline-offset: 3px; }
body.vm-page-home #main.ac-mj .xcard .media { display: grid; grid-template-columns: 1fr; gap: 6px; border-radius: 10px; overflow: hidden; aspect-ratio: 16 / 9; }
body.vm-page-home #main.ac-mj .xcard .media.two { grid-template-columns: 1fr 1fr; }
body.vm-page-home #main.ac-mj .xcard .media img { width: 100%; height: 100%; object-fit: cover; }
body.vm-page-home #main.ac-mj .xcard .check { position: absolute; top: 22px; right: 22px; width: 26px; height: 26px; border-radius: 50%; background: rgba(255, 255, 255, 0.92); border: 1.5px solid var(--navy); display: grid; place-items: center; }
body.vm-page-home #main.ac-mj .xcard .check svg { width: 14px; height: 14px; fill: none; stroke: rgb(255, 255, 255); stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; opacity: 0; }
body.vm-page-home #main.ac-mj .xcard:has(input:checked) .check { background: var(--navy); }
body.vm-page-home #main.ac-mj .xcard:has(input:checked) .check svg { opacity: 1; }
body.vm-page-home #main.ac-mj .xcard .head { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; margin: 14px 0px 4px; }
body.vm-page-home #main.ac-mj .xcard .head h3 { font-size: 26px; }
body.vm-page-home #main.ac-mj .xcard .price { display: grid; text-align: right; line-height: 1.1; }
body.vm-page-home #main.ac-mj .xcard .price b { font-size: 18px; font-variant-numeric: tabular-nums; }
body.vm-page-home #main.ac-mj .xcard .price span { font-size: 11px; color: var(--muted); }
body.vm-page-home #main.ac-mj .xcard > p { margin: 0px 0px 12px; color: var(--navy-2); font-size: 15px; }
body.vm-page-home #main.ac-mj .inc { margin: 0px; padding: 12px 0px 0px; list-style: none; border-top: 1px solid var(--line); display: grid; gap: 10px; font-size: 14.5px; }
body.vm-page-home #main.ac-mj .inc li { display: flex; align-items: center; gap: 12px; }
body.vm-page-home #main.ac-mj .xcard small { display: flex; align-items: center; justify-content: center; gap: 6px; margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--line); font-size: 11.5px; color: var(--muted); }
body.vm-page-home #main.ac-mj .xcard small svg { width: 14px; height: 14px; fill: none; stroke: var(--muted-green); stroke-width: 1.8; }
@media (max-width: 899.98px) {
  body.vm-page-home #main.ac-mj .how { display: block; margin-top: 18px; padding: 16px 0; border-block: 1px solid var(--line-2); }
  body.vm-page-home #main.ac-mj .how h3 { margin: 0 0 12px; font-size: 22px; }
  body.vm-page-home #main.ac-mj .how ol { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 0; padding: 0; list-style: none; }
  body.vm-page-home #main.ac-mj .how li { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; min-width: 0; padding: 0; }
  body.vm-page-home #main.ac-mj .how li i { display: grid; place-items: center; width: 24px; height: 24px; border: 1px solid var(--gold); border-radius: 50%; color: var(--gold-deep); font: 600 13px/1 var(--font-sans); }
  body.vm-page-home #main.ac-mj .how li b { font: 600 14px/1.35 var(--font-sans); color: var(--navy); }
  body.vm-page-home #main.ac-mj .how .help { display: none; }
  body.vm-page-home #main.ac-mj .how li span {display:block;min-width:0;font:400 13px/1.5 var(--font-sans)}
  body.vm-page-home #main.ac-mj .how li i {width:28px;height:28px}
}
body.vm-page-home #main.ac-mj .book-cta { margin-top: 18px; }
body.vm-page-home #main.ac-mj .book-cta .btn { white-space: nowrap; font-size: 15px; }
body.vm-page-home #main.ac-mj .book-cta .btn svg { display: none; }
body.vm-page-home #main.ac-mj .book-cta .trust { justify-content: center; }
body.vm-page-home #main.ac-mj .credits { margin-top: 18px; font-size: 12.5px; color: var(--muted); }
body.vm-page-home #main.ac-mj .credits summary { cursor: pointer; }
body.vm-page-home #main.ac-mj .credits p { margin: 6px 0px 0px; }
body.vm-page-home #main.ac-mj .journey { padding-bottom: 40px; }
body.vm-page-home #main.ac-mj .journey .ap-head h2 { font-size: clamp(32px, 5.2vw, 46px); color: var(--teal); }
body.vm-page-home #main.ac-mj .faq .wrap { border-top: 1px solid var(--line); padding-top: 44px; }
body.vm-page-home #main.ac-mj .faq-list { margin-top: 20px; border-top: 1px solid var(--line); }
body.vm-page-home #main.ac-mj .faq-list details { border-bottom: 1px solid var(--line); }
body.vm-page-home #main.ac-mj .faq-list summary { list-style: none; cursor: pointer; padding: 15px 0px; font-size: 15.5px; font-weight: 500; display: flex; justify-content: space-between; gap: 14px; align-items: baseline; }
body.vm-page-home #main.ac-mj .faq-list summary::-webkit-details-marker { display: none; }
body.vm-page-home #main.ac-mj .faq-list summary::after { content: none; font-family: var(--serif); font-size: 24px; line-height: 0.8; color: var(--gold); flex: 0 0 auto; }
body.vm-page-home #main.ac-mj .faq-list details[open] summary::after { content: none; }
body.vm-page-home #main.ac-mj .faq-list p { margin: 0px 0px 16px; color: var(--navy-2); font-size: 14.5px; max-width: 60ch; }
body.vm-page-home #main.ac-mj .faq .link { margin-top: 18px; }
body.vm-page-home #main.ac-mj .faq .after { margin-top: 22px; display: flex; flex-wrap: wrap; align-items: center; gap: 12px 18px; padding: 16px; border: 1px solid var(--line-2); border-radius: 14px; background: var(--white); }
body.vm-page-home #main.ac-mj .faq .after .t { display: grid; flex: 1 1 180px; }
body.vm-page-home #main.ac-mj .faq .after .t small { font-size: 10.5px; letter-spacing: 1.6px; text-transform: uppercase; color: var(--muted); }
body.vm-page-home #main.ac-mj .faq .after .t b { font-family: var(--serif); font-size: 20px; font-weight: 600; }
body.vm-page-home #main.ac-mj .faq .after .btn { padding: 12px 18px; font-size: 15px; }
body.vm-page-home #main.ac-mj .feature { background: var(--tint); }
body.vm-page-home #main.ac-mj .feature figure { margin: 0px 0px 22px; }
body.vm-page-home #main.ac-mj .feature img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; object-position: 55% 40%; border-radius: 14px; }
body.vm-page-home #main.ac-mj .feature p.body { margin: 0px; font-size: 16px; color: var(--navy-2); max-width: 46ch; }
body.vm-page-home #main.ac-mj .feature .btn { margin-top: 22px; }
body.vm-page-home #main.ac-mj .plan-grid { display: grid; margin-top: 18px; border-top: 1px solid var(--line); }
body.vm-page-home #main.ac-mj .pcard { display: grid; grid-template-columns: 24px 1fr auto; gap: 2px 14px; align-items: center; text-decoration: none; color: var(--navy); padding: 14px 0px; border-bottom: 1px solid var(--line); }
body.vm-page-home #main.ac-mj .pcard .ico { grid-row: span 2; }
body.vm-page-home #main.ac-mj .pcard .num { display: none; }
body.vm-page-home #main.ac-mj .pcard h3 { font-family: var(--sans); font-size: 15.5px; font-weight: 600; letter-spacing: 0px; }
body.vm-page-home #main.ac-mj .pcard p { margin: 0px; color: var(--muted); font-size: 13.5px; grid-column: 2; }
body.vm-page-home #main.ac-mj .pcard .more { grid-row: span 2; font-size: 20px; color: var(--muted); }
body.vm-page-home #main.ac-mj .pcard .more::after { content: "›"; }
body.vm-page-home #main.ac-mj .pcard .more span { display: none; }
body.vm-page-home #main.ac-mj .directions .wrap { border-top: 1px solid var(--line); padding-top: 44px; }
body.vm-page-home #main.ac-mj .addr { font-style: normal; display: flex; gap: 12px; align-items: flex-start; margin: 0px 0px 20px; font-size: 15.5px; line-height: 1.5; }
body.vm-page-home #main.ac-mj .addr strong { font-family: var(--serif); font-size: 22px; font-weight: 600; }
body.vm-page-home #main.ac-mj .directions .small { margin: 10px 0px 0px; font-size: 12.5px; color: var(--muted); }
body.vm-page-home #main.ac-mj .directions figure { margin: 24px 0px 0px; }
body.vm-page-home #main.ac-mj .directions img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 14px; }
body.vm-page-home #main.ac-mj .service { background: var(--navy); color: var(--ivory); }
body.vm-page-home #main.ac-mj .service .eyebrow { color: var(--sand); }
body.vm-page-home #main.ac-mj .service h2 { color: rgb(255, 255, 255); }
body.vm-page-home #main.ac-mj .service .sub { color: rgba(249, 247, 241, 0.78); font-size: 15px; }
body.vm-page-home #main.ac-mj .svc-grid { display: grid; gap: 14px; margin: 26px 0px 0px; }
body.vm-page-home #main.ac-mj .svc-grid > div { display: grid; grid-template-columns: 24px 1fr; gap: 6px 14px; padding: 16px 0px 0px; border-top: 1px solid rgba(249, 247, 241, 0.16); }
body.vm-page-home #main.ac-mj .svc-grid .ico { stroke: var(--sand); grid-row: span 2; margin-top: 2px; }
body.vm-page-home #main.ac-mj .svc-grid dt { font-weight: 600; font-size: 15px; }
body.vm-page-home #main.ac-mj .svc-grid dd { margin: 0px; color: rgba(249, 247, 241, 0.78); font-size: 14px; }
body.vm-page-home #main.ac-mj .service .link { margin-top: 26px; color: var(--pale-yellow); }
body.vm-page-home #main.ac-mj .service .link::after { color: var(--pale-yellow); }
body.vm-page-home #main.ac-mj .stories details { border: 1px solid var(--line-2); border-radius: 14px; background: var(--white); margin-top: 18px; }
body.vm-page-home #main.ac-mj .stories summary { list-style: none; cursor: pointer; padding: 14px 16px; display: flex; align-items: center; gap: 12px; font-size: 15px; font-weight: 600; }
body.vm-page-home #main.ac-mj .stories summary::-webkit-details-marker { display: none; }
body.vm-page-home #main.ac-mj .stories summary .chev { margin-left: auto; color: var(--muted); transition: transform 200ms; }
body.vm-page-home #main.ac-mj .stories details[open] summary .chev { transform: rotate(180deg); }
body.vm-page-home #main.ac-mj .story-grid3 { display: grid; padding: 0px 16px 6px; }
body.vm-page-home #main.ac-mj .scard { display: flex; flex-direction: column; gap: 4px; padding: 14px 0px; border-top: 1px solid var(--line); text-decoration: none; color: var(--navy); }
body.vm-page-home #main.ac-mj .scard .eyebrow { font-size: 9.5px; letter-spacing: 2.7px; margin: 0px; }
body.vm-page-home #main.ac-mj .scard h3 { font-size: 22px; }
body.vm-page-home #main.ac-mj .scard p { margin: 0px 0px 4px; color: var(--navy-2); font-size: 14px; max-width: 46ch; }
body.vm-page-home #main.ac-mj .scard .more { font-size: 14px; font-weight: 600; }
body.vm-page-home #main.ac-mj .scard .more::after { content: " →"; color: var(--gold); }
body.vm-page-home #main.ac-mj .stories .link { margin: 10px 16px 14px; }
body.vm-page-home #main.ac-mj .sbar { position: fixed; left: 0px; right: 0px; bottom: 0px; z-index: 30; background: var(--white); border-top: 1px solid var(--line); padding: 10px var(--gutter) calc(10px + env(safe-area-inset-bottom, 0px)); display: flex; align-items: center; justify-content: space-between; gap: 12px; transform: translateY(110%); transition: transform 240ms; }
body.vm-page-home #main.ac-mj .sbar.show { transform: none; }
body.vm-page-home #main.ac-mj .sbar .t { display: grid; line-height: 1.15; min-width: 0px; }
body.vm-page-home #main.ac-mj .sbar .t small { font-size: 10.5px; letter-spacing: 1.4px; text-transform: uppercase; color: var(--muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
body.vm-page-home #main.ac-mj .sbar .t b { font-size: 18px; font-variant-numeric: tabular-nums; }
body.vm-page-home #main.ac-mj .sbar .t b span { font-weight: 400; font-size: 12px; color: var(--muted); }
body.vm-page-home #main.ac-mj .sbar .btn { padding: 12px 18px; font-size: 15px; flex: 0 0 auto; }
@media (prefers-reduced-motion: reduce) {
body.vm-page-home #main.ac-mj .sbar,
body.vm-page-home #main.ac-mj .link::after { transition: none; }
}
@media (min-width: 900px) {
body.vm-page-home #main.ac-mj section { padding: 76px 0px; }
body.vm-page-home #main.ac-mj .hero .wrap { display: grid; grid-template-columns: minmax(0px, 47%) minmax(0px, 53%); align-items: stretch; }
body.vm-page-home #main.ac-mj .hero-copy { order: 1; padding: 52px 48px 56px max(var(--gutter), calc((100vw - 1160px) / 2 + var(--gutter))); display: flex; flex-direction: column; justify-content: center; }
body.vm-page-home #main.ac-mj .hero-media { order: 2; aspect-ratio: auto; min-height: 720px; }
body.vm-page-home #main.ac-mj .hero-media .from { left: auto; right: 28px; bottom: 24px; font-size: 13px; }
body.vm-page-home #main.ac-mj .buy { max-width: 470px; margin-top: 26px; }
body.vm-page-home #main.ac-mj .story { padding: 0px; }
body.vm-page-home #main.ac-mj .story .wrap { grid-template-columns: 1fr 1.3fr; gap: 56px; padding-top: 52px; padding-bottom: 52px; border-top: 0px; }
body.vm-page-home #main.ac-mj .story p { font-size: 16px; max-width: 40ch; }
body.vm-page-home #main.ac-mj .story h2 { font-size: clamp(34px, 4vw, 46px); }
body.vm-page-home #main.ac-mj .story img { aspect-ratio: 16 / 9; }
body.vm-page-home #main.ac-mj .story figcaption { display: block; }
body.vm-page-home #main.ac-mj .steps-mini { display: none; }
body.vm-page-home #main.ac-mj .book-grid { display: grid; grid-template-columns: minmax(0px, 1fr) 300px; gap: 20px; margin-top: 26px; align-items: start; }
body.vm-page-home #main.ac-mj .cards { grid-template-columns: 1fr 1fr; gap: 20px; }
body.vm-page-home #main.ac-mj .how { display: block; background: var(--white); border: 1px solid var(--line-2); border-radius: 16px; padding: 22px 22px 20px; position: sticky; top: 84px; }
body.vm-page-home #main.ac-mj .how h3 { font-size: 24px; margin-bottom: 8px; }
body.vm-page-home #main.ac-mj .how ol { margin: 0px; padding: 0px; list-style: none; display: grid; }
body.vm-page-home #main.ac-mj .how li { display: grid; grid-template-columns: 28px 1fr; gap: 2px 12px; padding: 14px 0px; border-top: 1px solid var(--line); }
body.vm-page-home #main.ac-mj .how li i { font-style: normal; grid-row: span 2; width: 28px; height: 28px; border-radius: 50%; border: 1px solid var(--gold); color: var(--gold-deep); font-size: 12px; font-weight: 700; display: grid; place-items: center; }
body.vm-page-home #main.ac-mj .how li b { font-size: 14.5px; }
body.vm-page-home #main.ac-mj .how li span { font-size: 13.5px; color: var(--muted); }
body.vm-page-home #main.ac-mj .how .help { display: block; margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--line); font-size: 13.5px; color: var(--navy); }
body.vm-page-home #main.ac-mj .book-cta { margin-top: 22px; display: grid; grid-template-columns: minmax(0px, 1fr) 300px; gap: 20px; align-items: center; }
body.vm-page-home #main.ac-mj .book-cta .trust { justify-content: flex-start; margin: 0px; }
body.vm-page-home #main.ac-mj .book-cta .btn { font-size: 16px; }
body.vm-page-home #main.ac-mj .book-cta .btn svg { display: block; }
body.vm-page-home #main.ac-mj .hero-media .from { display: none; }
body.vm-page-home #main.ac-mj .faq .wrap { display: grid; grid-template-columns: 0.85fr 1.15fr; gap: 56px; align-items: start; padding-top: 68px; }
body.vm-page-home #main.ac-mj .faq-list { margin-top: 0px; }
body.vm-page-home #main.ac-mj .faq .after { grid-column: 2; }
body.vm-page-home #main.ac-mj .feature .wrap { display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: center; }
body.vm-page-home #main.ac-mj .feature figure { margin: 0px; }
body.vm-page-home #main.ac-mj .plan-grid { grid-template-columns: repeat(3, 1fr); gap: 20px; margin-top: 30px; border-top: 0px; }
body.vm-page-home #main.ac-mj .pcard { display: flex; flex-direction: column; gap: 8px; background: var(--white); border: 1px solid var(--line-2); border-radius: 16px; padding: 20px; transition: border-color 160ms, transform 160ms; }
body.vm-page-home #main.ac-mj .pcard:hover { border-color: rgb(185, 178, 160); transform: translateY(-2px); }
body.vm-page-home #main.ac-mj .pcard .ico { display: none; }
body.vm-page-home #main.ac-mj .pcard .num { display: block; font-family: var(--serif); font-size: 15px; font-weight: 600; letter-spacing: 1px; color: var(--gold-deep); }
body.vm-page-home #main.ac-mj .pcard h3 { font-family: var(--serif); font-size: 24px; font-weight: 600; letter-spacing: -0.4px; }
body.vm-page-home #main.ac-mj .pcard p { font-size: 14.5px; color: var(--navy-2); margin-bottom: 8px; }
body.vm-page-home #main.ac-mj .pcard .more { font-size: 14px; font-weight: 600; color: var(--navy); margin-top: auto; }
body.vm-page-home #main.ac-mj .pcard .more::after { content: " →"; color: var(--gold); }
body.vm-page-home #main.ac-mj .pcard .more span { display: inline; }
body.vm-page-home #main.ac-mj .directions .wrap { display: grid; grid-template-columns: 1fr 1.15fr; gap: 56px; align-items: center; padding-top: 68px; }
body.vm-page-home #main.ac-mj .directions figure { margin: 0px; }
body.vm-page-home #main.ac-mj .svc-grid { grid-template-columns: repeat(3, 1fr); gap: 28px; margin-top: 36px; }
body.vm-page-home #main.ac-mj .service .sub { max-width: 66ch; }
body.vm-page-home #main.ac-mj .stories details { border: 0px; background: transparent; margin-top: 0px; }
body.vm-page-home #main.ac-mj .stories summary { display: none; }
body.vm-page-home #main.ac-mj .story-grid3 { grid-template-columns: repeat(3, 1fr); gap: 32px; margin-top: 28px; padding: 0px; border-top: 1px solid var(--line); }
body.vm-page-home #main.ac-mj .scard { border-top: 0px; padding: 26px 0px; }
body.vm-page-home #main.ac-mj .scard h3 { font-size: 26px; }
body.vm-page-home #main.ac-mj .stories .link { margin: 20px 0px 0px; }
body.vm-page-home #main.ac-mj .ymlv .ysearch { max-width: 560px; }
body.vm-page-home #main.ac-mj .ycards { display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px; overflow: visible; }
body.vm-page-home #main.ac-mj .ycard { flex: 0 0 auto; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer { display: none; }
body.vm-page-home #main.ac-mj .sbar { display: none; }
}
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer { position: fixed; top: 0px; right: 0px; bottom: 0px; width: min(92vw, 420px); z-index: 41; background: rgb(11, 26, 48); color: rgb(243, 241, 234); overflow-y: auto; transform: translateX(104%); transition: transform 260ms cubic-bezier(0.2, 0.7, 0.2, 1); font-size: 16px; --mline: rgba(255,255,255,0.12); --mline2: rgba(255,255,255,0.22); --mmuted: #aab6c4; scrollbar-width: thin; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .top { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 18px 14px; border-bottom: 1px solid var(--mline); position: sticky; top: 0px; background: rgb(11, 26, 48); z-index: 2; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .top .acts .flag { border-color: var(--mline2); }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .close { font-size: 28px; line-height: 1; color: rgb(243, 241, 234); background: none; border: 0px; cursor: pointer; padding: 0px 2px; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .d-buy { margin: 16px 18px 6px; background: rgb(16, 35, 61); border: 1px solid var(--mline2); border-radius: 16px; padding: 14px; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .d-buy .eyebrow { color: var(--sand); font-size: 11px; letter-spacing: 2.2px; margin: 0px 0px 4px; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .d-buy h3 { color: rgb(243, 241, 234); font-size: 28px; margin: 0px 0px 12px; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .d-opt { display: grid; grid-template-columns: 22px 1fr auto; gap: 10px; align-items: center; padding: 11px 10px; border: 1px solid var(--mline2); border-radius: 12px; margin-bottom: 8px; cursor: pointer; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .d-opt.on { border-color: var(--sun); background: rgb(21, 44, 74); }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .d-opt .radio { width: 20px; height: 20px; border-radius: 50%; border: 2px solid var(--mmuted); display: grid; place-items: center; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .d-opt.on .radio { border-color: var(--sun); }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .d-opt.on .radio::after { content: ""; width: 10px; height: 10px; border-radius: 50%; background: var(--sun); }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .d-opt .t { display: grid; min-width: 0px; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .d-opt .t b { font-size: 15px; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .d-opt .t span { font-size: 12.5px; color: var(--mmuted); }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .d-opt .p { text-align: right; display: grid; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .d-opt .p b { font-size: 16px; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .d-opt .p span { font-size: 11px; color: var(--mmuted); }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .d-dates { display: flex; gap: 8px; margin: 10px 0px 12px; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .d-dates button { flex: 1 1 0%; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-language-override: inherit; font-size: 13px; font-weight: 600; color: rgb(243, 241, 234); background: transparent; border: 1px solid var(--mline2); border-radius: 10px; padding: 9px 6px; cursor: pointer; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .d-dates button.on { background: var(--sun); color: var(--navy); border-color: var(--sun); }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .d-cta { display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-language-override: inherit; font-weight: 700; font-size: 17px; color: rgb(255, 255, 255); background: rgb(26, 54, 200); border: 1px solid rgb(111, 139, 255); border-radius: 10px; padding: 14px; text-decoration: none; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .d-trust { display: flex; flex-wrap: wrap; gap: 6px 14px; margin: 10px 0px 0px; padding: 0px; list-style: none; font-size: 12px; color: var(--mmuted); }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .d-trust li::before { content: "✓ "; color: rgb(143, 212, 168); }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .sec { padding: 14px 18px 4px; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .sec h3 { margin: 0px 0px 6px; font-family: var(--sans); font-size: 11px; letter-spacing: 2.4px; text-transform: uppercase; color: var(--mmuted); font-weight: 600; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .list a { display: flex; align-items: center; gap: 12px; padding: 12px 0px; text-decoration: none; color: rgb(243, 241, 234); border-bottom: 1px solid var(--mline); font-size: 16px; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .list a:last-child { border-bottom: 0px; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .list svg { width: 20px; height: 20px; fill: none; stroke: var(--sand); stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; flex: 0 0 auto; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .list .r { margin-left: auto; color: var(--mmuted); font-size: 13px; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .list .chev { margin-left: auto; color: var(--mmuted); }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer details.fold { margin: 10px 18px 0px; border: 1px solid var(--mline); border-radius: 12px; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer details.fold summary { list-style: none; cursor: pointer; padding: 12px 14px; display: flex; align-items: center; gap: 10px; font-size: 15px; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer details.fold summary::-webkit-details-marker { display: none; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer details.fold summary svg { width: 20px; height: 20px; fill: none; stroke: var(--sand); stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer details.fold summary .chev { margin-left: auto; color: var(--mmuted); transition: transform 200ms; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer details.fold[open] summary .chev { transform: rotate(180deg); }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer details.fold .inner { padding: 0px 14px 12px; display: grid; gap: 10px; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .inner .list a { font-size: 15px; padding: 10px 0px; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .search { display: flex; align-items: center; gap: 10px; background: rgb(11, 26, 48); border: 1px solid var(--mline2); border-radius: 10px; padding: 10px 12px; color: var(--mmuted); font-size: 14px; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .search svg { width: 16px; height: 16px; fill: none; stroke: var(--mmuted); stroke-width: 2; stroke-linecap: round; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .chips { display: flex; flex-wrap: wrap; gap: 8px; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .chips a { text-decoration: none; color: rgb(243, 241, 234); font-size: 13px; font-weight: 500; border: 1px solid var(--mline2); border-radius: 999px; padding: 6px 12px; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .chips a.all { color: var(--sun); border-color: transparent; padding-left: 2px; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .mini { font-size: 11px; letter-spacing: 2px; text-transform: uppercase; color: var(--mmuted); font-weight: 600; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .settings { margin: 14px 18px 0px; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .settings a { display: flex; align-items: center; justify-content: space-between; gap: 8px; text-decoration: none; color: rgb(243, 241, 234); font-size: 14px; border: 1px solid var(--mline2); border-radius: 10px; padding: 10px 12px; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .settings small { color: var(--mmuted); font-size: 11px; letter-spacing: 1.4px; text-transform: uppercase; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .d-foot { margin: 18px 18px 26px; font-size: 12px; color: var(--mmuted); line-height: 1.45; }
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .d-foot b { color: rgb(243, 241, 234); font-weight: 600; }
body.vm-page-home #main.ac-mj .ap-card .ap-pager button.ap-pause { width: auto; height: auto; border: 0px; border-radius: 6px; background: none; display: inline-flex; align-items: center; gap: 7px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-language-override: inherit; font-weight: 600; font-size: 14px; color: var(--cream); padding: 4px 10px 4px 0px; cursor: pointer; }
body.vm-page-home #main.ac-mj .ap-card .ap-pager button.ap-pause:hover { background: none; color: var(--pale-yellow); }
body.vm-page-home #main.ac-mj .ap-card .ap-pause svg { width: 16px; height: 16px; fill: currentcolor; }
body.vm-page-home #main.ac-mj .credits .credit { padding: 12px 0px; border-top: 1px solid var(--ui-line); }
body.vm-page-home #main.ac-mj .credits .credit h3 { font-size: 15px; margin: 0px; }
body.vm-page-home #main.ac-mj .credits .credit p { margin: 4px 0px 0px; font-size: 13.5px; }
body.vm-page-home #main.ac-mj .credits .credit a { color: var(--ui-text); }
body.vm-page-home #main.ac-mj .ap-dir { font-family: var(--sans); color: var(--navy); }
body.vm-page-home #main.ac-mj .ap-dir .ap-head { margin: 0px 0px 22px; max-width: 60ch; }
body.vm-page-home #main.ac-mj .ap-dir .eyebrow { display: inline-flex; align-items: center; gap: 10px; margin: 0px 0px 12px; font-size: 9.5px; font-weight: 600; letter-spacing: 3.4px; text-transform: uppercase; color: var(--gold-deep); }
body.vm-page-home #main.ac-mj .ap-dir .ap-rule { display: inline-block; width: 28px; height: 1px; background: var(--gold); transform: scaleX(0); transform-origin: left center; }
body.vm-page-home #main.ac-mj .ap-dir .ap-eyebrow-text { display: inline-block; opacity: 0; letter-spacing: 0.9em; }
body.vm-page-home #main.ac-mj .ap-dir h2 { margin: 0px 0px 10px; font-family: var(--serif); font-weight: 600; font-size: clamp(34px, 4.8vw, 50px); line-height: 1.02; letter-spacing: -0.7px; color: var(--navy); text-wrap: balance; }
body.vm-page-home #main.ac-mj .ap-dir .ap-mask { display: inline-block; overflow: hidden; vertical-align: bottom; padding-bottom: 0.18em; margin-bottom: -0.18em; }
body.vm-page-home #main.ac-mj .ap-dir .ap-w { display: inline-block; transform: translateY(112%); }
body.vm-page-home #main.ac-mj .ap-dir .ap-head p.ap-lede { margin: 0px; font-size: 15px; line-height: 1.5; color: var(--muted); opacity: 0; transform: translateY(10px); }
body.vm-page-home #main.ac-mj .ap-card { display: grid; grid-template-columns: 1fr; border: 1px solid var(--line); border-radius: 24px; overflow: hidden; background: var(--cream); }
body.vm-page-home #main.ac-mj .ap-card .ap-panel { background: linear-gradient(180deg, #2f5243 0%, var(--forest) 55%, #233f33 100%); color: var(--cream); padding: 32px 28px 28px; min-width: 0px; display: grid; grid-template-rows: auto auto auto 1fr auto; gap: 0px; }
body.vm-page-home #main.ac-mj .ap-card .ap-kicker { display: inline-flex; align-items: center; gap: 12px; margin: 0px 0px 16px; font-size: 11px; font-weight: 600; letter-spacing: 3px; text-transform: uppercase; color: var(--pale-yellow); }
body.vm-page-home #main.ac-mj .ap-card .ap-kicker::before { content: ""; width: 34px; height: 1px; background: var(--pale-yellow); }
body.vm-page-home #main.ac-mj .ap-card h3 { margin: 0px 0px 12px; font-family: var(--serif); font-weight: 600; font-size: clamp(30px, 4vw, 42px); line-height: 1.04; letter-spacing: -0.6px; color: var(--cream); text-wrap: balance; }
body.vm-page-home #main.ac-mj .ap-card .ap-text { margin: 0px 0px 22px; font-size: 15px; line-height: 1.5; color: rgb(216, 226, 217); max-width: 44ch; }
body.vm-page-home #main.ac-mj .ap-card nav { display: grid; gap: 12px; align-content: start; font-size: 15px; margin-bottom: 26px; }
body.vm-page-home #main.ac-mj .ap-card nav a { display: inline-flex; align-items: baseline; gap: 10px; color: var(--cream); text-decoration: none; font-weight: 500; min-width: 0px; }
body.vm-page-home #main.ac-mj .ap-card nav a::before { content: ""; flex: 0 0 auto; width: 14px; height: 1px; background: var(--sand); transform: translateY(-4px); transition: width 260ms cubic-bezier(0.2, 0.7, 0.2, 1); }
body.vm-page-home #main.ac-mj .ap-card nav a:hover::before { width: 24px; }
body.vm-page-home #main.ac-mj .ap-card nav a:hover { color: var(--pale-yellow); }
body.vm-page-home #main.ac-mj .ap-card nav a.ap-primary { color: var(--pale-yellow); font-weight: 700; }
body.vm-page-home #main.ac-mj .ap-card .ap-pager { display: flex; align-items: center; gap: 14px; font-size: 18px; font-variant-numeric: tabular-nums; color: rgb(185, 200, 189); }
body.vm-page-home #main.ac-mj .ap-card .ap-pager strong { color: var(--cream); font-weight: 700; }
body.vm-page-home #main.ac-mj .ap-card .ap-pager button { width: 46px; height: 46px; border-radius: 50%; border: 1.5px solid rgb(143, 163, 151); background: transparent; color: var(--cream); display: inline-grid; place-items: center; cursor: pointer; padding: 0px; transition: border-color 200ms, background 200ms; }
body.vm-page-home #main.ac-mj .ap-card .ap-pager button:hover { border-color: var(--pale-yellow); background: rgba(243, 227, 122, 0.12); }
body.vm-page-home #main.ac-mj .ap-card .ap-pager button svg { width: 18px; height: 18px; }
body.vm-page-home #main.ac-mj .ap-card nav a:focus-visible,
body.vm-page-home #main.ac-mj .ap-card button:focus-visible { outline: 2px solid var(--pale-yellow); outline-offset: 3px; border-radius: 4px; }
body.vm-page-home #main.ac-mj .ap-card .ap-pager button:focus-visible { border-radius: 50%; }
body.vm-page-home #main.ac-mj .ap-card .ap-figure { position: relative; min-width: 0px; background-color: var(--paper); background-image: radial-gradient(var(--dot) 1.2px, transparent 1.4px); background-size: 18px 18px; border-top: 1px dashed var(--line); padding: 22px 24px 20px; display: grid; grid-template-rows: auto 1fr auto; gap: 12px; }
body.vm-page-home #main.ac-mj .ap-card .ap-caption { display: flex; justify-content: space-between; gap: 12px; font-size: 11px; font-weight: 600; letter-spacing: 2.6px; text-transform: uppercase; color: var(--muted-green); }
body.vm-page-home #main.ac-mj .ap-card .ap-scene { width: 100%; max-width: 100%; height: auto; display: block; }
body.vm-page-home #main.ac-mj .ap-card .ap-scene[hidden] { display: none !important; }
body.vm-page-home #main.ac-mj .ap-card .ap-foot { display: flex; justify-content: flex-end; }
body.vm-page-home #main.ac-mj .ap-card .ap-replay { display: inline-flex; align-items: center; gap: 8px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-language-override: inherit; font-weight: 600; font-size: 14px; color: var(--forest-deep); background: none; border: 0px; padding: 4px 0px; cursor: pointer; }
body.vm-page-home #main.ac-mj .ap-card .ap-replay svg { width: 18px; height: 18px; }
body.vm-page-home #main.ac-mj .ap-card .ap-replay:focus-visible { outline: 2px solid var(--cobalt); outline-offset: 3px; border-radius: 4px; }
body.vm-page-home #main.ac-mj .ap-card .ap-kicker,
body.vm-page-home #main.ac-mj .ap-card h3,
body.vm-page-home #main.ac-mj .ap-card .ap-text,
body.vm-page-home #main.ac-mj .ap-card nav a { opacity: 0; transform: translateY(10px); }
body.vm-page-home #main.ac-mj .ap-card.is-in .ap-kicker { animation: 600ms cubic-bezier(0.2, 0.7, 0.2, 1) 60ms 1 normal forwards running ap-fade-up; }
body.vm-page-home #main.ac-mj .ap-card.is-in h3 { animation: 700ms cubic-bezier(0.2, 0.7, 0.2, 1) 160ms 1 normal forwards running ap-fade-up; }
body.vm-page-home #main.ac-mj .ap-card.is-in .ap-text { animation: 700ms cubic-bezier(0.2, 0.7, 0.2, 1) 300ms 1 normal forwards running ap-fade-up; }
body.vm-page-home #main.ac-mj .ap-card.is-in nav a { animation-duration: 600ms; animation-timing-function: cubic-bezier(0.2, 0.7, 0.2, 1); animation-iteration-count: 1; animation-direction: normal; animation-fill-mode: forwards; animation-play-state: running; animation-name: ap-fade-up; animation-timeline: auto; animation-range: normal; animation-delay: calc(440ms + var(--i, 0) * 90ms); }
body.vm-page-home #main.ac-mj .ap-dir.is-in .ap-rule { animation: 700ms cubic-bezier(0.2, 0.7, 0.2, 1) 0s 1 normal forwards running ap-rule; }
body.vm-page-home #main.ac-mj .ap-dir.is-in .ap-eyebrow-text { animation: 900ms cubic-bezier(0.2, 0.7, 0.2, 1) 150ms 1 normal forwards running ap-track; }
body.vm-page-home #main.ac-mj .ap-dir.is-in .ap-w { animation-duration: 900ms; animation-timing-function: cubic-bezier(0.2, 0.7, 0.2, 1); animation-iteration-count: 1; animation-direction: normal; animation-fill-mode: forwards; animation-play-state: running; animation-name: ap-rise; animation-timeline: auto; animation-range: normal; animation-delay: calc(200ms + var(--i, 0) * 90ms); }
body.vm-page-home #main.ac-mj .ap-dir.is-in .ap-head p.ap-lede { animation: 800ms cubic-bezier(0.2, 0.7, 0.2, 1) 700ms 1 normal forwards running ap-fade-up; }
body.vm-page-home #main.ac-mj .ap-scene .s-pop { opacity: 0; transform: scale(0.6); transform-box: fill-box; transform-origin: center center; }
body.vm-page-home #main.ac-mj .ap-scene .s-settle { opacity: 0; transform: translateY(18px); }
body.vm-page-home #main.ac-mj .ap-scene .s-grow { transform: scaleX(0); transform-box: fill-box; transform-origin: center center; }
body.vm-page-home #main.ac-mj .ap-scene .s-open { transform: scaleX(0); transform-box: fill-box; transform-origin: left center; }
body.vm-page-home #main.ac-mj .ap-scene .s-open-r { transform: scaleX(0); transform-box: fill-box; transform-origin: right center; }
body.vm-page-home #main.ac-mj .ap-scene .s-raise { transform: scaleY(0); transform-box: fill-box; transform-origin: 50% 100%; }
body.vm-page-home #main.ac-mj .ap-scene .s-spring { opacity: 0; transform: scale(0.4) rotate(-8deg); transform-box: fill-box; transform-origin: center center; }
body.vm-page-home #main.ac-mj .ap-scene .s-drop { opacity: 0; transform: translateY(-60px); }
body.vm-page-home #main.ac-mj .ap-scene .s-ring { opacity: 0; transform: scale(0.2); transform-box: fill-box; transform-origin: center center; }
body.vm-page-home #main.ac-mj .ap-scene .s-draw { stroke-dasharray: 1, 0; stroke-dashoffset: 1; }
body.vm-page-home #main.ac-mj .ap-scene .s-dash { stroke-dasharray: 0.06, 0.05; stroke-dashoffset: 1; opacity: 0; }
body.vm-page-home #main.ac-mj .ap-scene .s-spark { opacity: 0; transform-box: fill-box; transform-origin: center center; }
body.vm-page-home #main.ac-mj .ap-scene .s-fade { opacity: 0; }
body.vm-page-home #main.ac-mj .ap-scene .s-slide-l { opacity: 0; transform: translateX(-46px); }
body.vm-page-home #main.ac-mj .ap-scene .s-slide-r { opacity: 0; transform: translateX(46px); }
body.vm-page-home #main.ac-mj .ap-scene .s-spin { transform: rotate(-220deg); transform-box: fill-box; transform-origin: center center; }
body.vm-page-home #main.ac-mj .ap-scene .s-palm { opacity: 0; transform-box: fill-box; transform-origin: 50% 100%; }
body.vm-page-home #main.ac-mj .ap-card.is-in .s-pop { animation: s-pop 700ms cubic-bezier(.2,.7,.2,1) var(--d, 100ms) forwards; }
body.vm-page-home #main.ac-mj .ap-card.is-in .s-settle { animation: s-settle 800ms cubic-bezier(.2,.7,.2,1) var(--d, 350ms) forwards; }
body.vm-page-home #main.ac-mj .ap-card.is-in .s-grow { animation: s-grow 600ms cubic-bezier(.2,.7,.2,1) var(--d, 250ms) forwards; }
body.vm-page-home #main.ac-mj .ap-card.is-in .s-open { animation: s-grow 700ms cubic-bezier(.2,.7,.2,1) var(--d, 300ms) forwards; }
body.vm-page-home #main.ac-mj .ap-card.is-in .s-open-r { animation: s-grow 700ms cubic-bezier(.2,.7,.2,1) var(--d, 300ms) forwards; }
body.vm-page-home #main.ac-mj .ap-card.is-in .s-raise { animation: s-raise 550ms cubic-bezier(.2,.7,.2,1) var(--d, 900ms) forwards; }
body.vm-page-home #main.ac-mj .ap-card.is-in .s-spring { animation-duration: 600ms; animation-timing-function: cubic-bezier(0.34, 1.4, 0.4, 1); animation-iteration-count: 1; animation-direction: normal; animation-fill-mode: forwards; animation-play-state: running; animation-name: s-spring; animation-timeline: auto; animation-range: normal; animation-delay: calc(var(--d, 1250ms) + var(--i, 0) * 130ms); }
body.vm-page-home #main.ac-mj .ap-card.is-in .s-drop { animation: s-drop 700ms cubic-bezier(.3,1.5,.5,1) var(--d, 1900ms) forwards; }
body.vm-page-home #main.ac-mj .ap-card.is-in .s-ring { animation: s-ring 700ms ease-out var(--d, 2050ms) forwards; }
body.vm-page-home #main.ac-mj .ap-card.is-in .s-draw { animation: s-draw 900ms ease-out var(--d, 900ms) forwards; }
body.vm-page-home #main.ac-mj .ap-card.is-in .s-dash { animation: s-dash 1100ms ease-out var(--d, 1100ms) forwards; }
body.vm-page-home #main.ac-mj .ap-card.is-in .s-spark { animation: s-spark 900ms ease-out var(--d, 2100ms) forwards; }
body.vm-page-home #main.ac-mj .ap-card.is-in .s-fade { animation-duration: 500ms; animation-timing-function: ease-out; animation-iteration-count: 1; animation-direction: normal; animation-fill-mode: forwards; animation-play-state: running; animation-name: s-fade; animation-timeline: auto; animation-range: normal; animation-delay: calc(var(--d, 1500ms) + var(--i, 0) * 200ms); }
body.vm-page-home #main.ac-mj .ap-card.is-in .s-slide-l { animation: s-slide 800ms cubic-bezier(.2,.7,.2,1) var(--d, 300ms) forwards; }
body.vm-page-home #main.ac-mj .ap-card.is-in .s-slide-r { animation: s-slide 800ms cubic-bezier(.2,.7,.2,1) var(--d, 300ms) forwards; }
body.vm-page-home #main.ac-mj .ap-card.is-in .s-spin { animation: s-spin 1400ms cubic-bezier(.3,1.3,.4,1) var(--d, 1200ms) forwards; }
body.vm-page-home #main.ac-mj .ap-card.is-in .s-palm { animation: s-fade 600ms ease-out var(--d, 650ms) forwards, s-sway 4.2s ease-in-out calc(var(--d, 650ms) + 700ms) infinite alternate; }
@keyframes ap-rule { 
  100% { transform: scaleX(1); }
}
@keyframes ap-track { 
  100% { opacity: 1; letter-spacing: 3.4px; }
}
@keyframes ap-rise { 
  100% { transform: translateY(0px); }
}
@keyframes ap-fade-up { 
  100% { opacity: 1; transform: translateY(0px); }
}
@keyframes s-pop { 
  100% { opacity: 1; transform: scale(1); }
}
@keyframes s-settle { 
  100% { opacity: 1; transform: translateY(0px); }
}
@keyframes s-grow { 
  100% { transform: scaleX(1); }
}
@keyframes s-raise { 
  100% { transform: scaleY(1); }
}
@keyframes s-spring { 
  100% { opacity: 1; transform: scale(1) rotate(0deg); }
}
@keyframes s-drop { 
  100% { opacity: 1; transform: translateY(0px); }
}
@keyframes s-ring { 
  0% { opacity: 0; transform: scale(0.2); }
  40% { opacity: 0.6; }
  100% { opacity: 0.35; transform: scale(1); }
}
@keyframes s-draw { 
  100% { stroke-dashoffset: 0; }
}
@keyframes s-dash { 
  0% { opacity: 0; stroke-dashoffset: 1; }
  20% { opacity: 0.6; }
  100% { opacity: 0.6; stroke-dashoffset: 0; }
}
@keyframes s-spark { 
  0% { opacity: 0; transform: scale(0.4); }
  50% { opacity: 1; transform: scale(1.05); }
  100% { opacity: 0.9; transform: scale(1); }
}
@keyframes s-fade { 
  100% { opacity: 1; }
}
@keyframes s-slide { 
  100% { opacity: 1; transform: translateX(0px); }
}
@keyframes s-spin { 
  100% { transform: rotate(0deg); }
}
@keyframes s-sway { 
  0% { transform: rotate(-1.6deg); }
  100% { transform: rotate(1.6deg); }
}
@media (min-width: 900px) {
body.vm-page-home #main.ac-mj .ap-card { grid-template-columns: minmax(0px, 1fr) minmax(0px, 1.05fr); }
body.vm-page-home #main.ac-mj .ap-card .ap-figure { border-top: 0px; border-left: 1px dashed var(--line); }
body.vm-page-home #main.ac-mj .ap-card .ap-panel { padding: 40px 36px 36px; }
}
@media (prefers-reduced-motion: reduce) {
body.vm-page-home #main.ac-mj .ap-dir .ap-rule,
body.vm-page-home #main.ac-mj .ap-dir .ap-eyebrow-text,
body.vm-page-home #main.ac-mj .ap-dir .ap-w,
body.vm-page-home #main.ac-mj .ap-dir .ap-head p.ap-lede,
body.vm-page-home #main.ac-mj .ap-card .ap-kicker,
body.vm-page-home #main.ac-mj .ap-card h3,
body.vm-page-home #main.ac-mj .ap-card .ap-text,
body.vm-page-home #main.ac-mj .ap-card nav a,
body.vm-page-home #main.ac-mj .ap-scene [class*="s-"] { opacity: 1; transform: none; animation: auto ease 0s 1 normal none running none !important; }
body.vm-page-home #main.ac-mj .ap-dir .ap-eyebrow-text { letter-spacing: 3.4px; }
body.vm-page-home #main.ac-mj .ap-scene .s-draw,
body.vm-page-home #main.ac-mj .ap-scene .s-dash { stroke-dashoffset: 0; opacity: 0.6; }
}

body.vm-page-home #main.ac-mj .ac-art-d-1000ms-i-0 { --d:1000ms;--i:0; }

body.vm-page-home #main.ac-mj .ac-art-d-1000ms-i-1 { --d:1000ms;--i:1; }

body.vm-page-home #main.ac-mj .ac-art-d-1000ms-i-2 { --d:1000ms;--i:2; }

body.vm-page-home #main.ac-mj .ac-art-d-1000ms-i-3 { --d:1000ms;--i:3; }

body.vm-page-home #main.ac-mj .ac-art-d-1000ms-i-4 { --d:1000ms;--i:4; }

body.vm-page-home #main.ac-mj .ac-art-d-100ms { --d:100ms; }

body.vm-page-home #main.ac-mj .ac-art-d-1100ms { --d:1100ms; }

body.vm-page-home #main.ac-mj .ac-art-d-1200ms { --d:1200ms; }

body.vm-page-home #main.ac-mj .ac-art-d-1300ms { --d:1300ms; }

body.vm-page-home #main.ac-mj .ac-art-d-1300ms-i-0 { --d:1300ms;--i:0; }

body.vm-page-home #main.ac-mj .ac-art-d-1300ms-i-1 { --d:1300ms;--i:1; }

body.vm-page-home #main.ac-mj .ac-art-d-1300ms-i-2 { --d:1300ms;--i:2; }

body.vm-page-home #main.ac-mj .ac-art-d-1300ms-i-3 { --d:1300ms;--i:3; }

body.vm-page-home #main.ac-mj .ac-art-d-1300ms-i-4 { --d:1300ms;--i:4; }

body.vm-page-home #main.ac-mj .ac-art-d-1300ms-i-5 { --d:1300ms;--i:5; }

body.vm-page-home #main.ac-mj .ac-art-d-1300ms-i-6 { --d:1300ms;--i:6; }

body.vm-page-home #main.ac-mj .ac-art-d-1300ms-i-7 { --d:1300ms;--i:7; }

body.vm-page-home #main.ac-mj .ac-art-d-1300ms-i-8 { --d:1300ms;--i:8; }

body.vm-page-home #main.ac-mj .ac-art-d-1350ms { --d:1350ms; }

body.vm-page-home #main.ac-mj .ac-art-d-1400ms { --d:1400ms; }

body.vm-page-home #main.ac-mj .ac-art-d-1500ms { --d:1500ms; }

body.vm-page-home #main.ac-mj .ac-art-d-1500ms-i-0 { --d:1500ms;--i:0; }

body.vm-page-home #main.ac-mj .ac-art-d-1500ms-i-1 { --d:1500ms;--i:1; }

body.vm-page-home #main.ac-mj .ac-art-d-1500ms-i-2 { --d:1500ms;--i:2; }

body.vm-page-home #main.ac-mj .ac-art-d-1600ms { --d:1600ms; }

body.vm-page-home #main.ac-mj .ac-art-d-1700ms { --d:1700ms; }

body.vm-page-home #main.ac-mj .ac-art-d-1900ms { --d:1900ms; }

body.vm-page-home #main.ac-mj .ac-art-d-2000ms { --d:2000ms; }

body.vm-page-home #main.ac-mj .ac-art-d-2300ms { --d:2300ms; }

body.vm-page-home #main.ac-mj .ac-art-d-2300ms-transform-origin-left-center { --d:2300ms;transform-origin:left center; }

body.vm-page-home #main.ac-mj .ac-art-d-2500ms { --d:2500ms; }

body.vm-page-home #main.ac-mj .ac-art-d-250ms { --d:250ms; }

body.vm-page-home #main.ac-mj .ac-art-d-300ms { --d:300ms; }

body.vm-page-home #main.ac-mj .ac-art-d-350ms { --d:350ms; }

body.vm-page-home #main.ac-mj .ac-art-d-600ms { --d:600ms; }

body.vm-page-home #main.ac-mj .ac-art-d-800ms-i-0 { --d:800ms;--i:0; }

body.vm-page-home #main.ac-mj .ac-art-d-800ms-i-1 { --d:800ms;--i:1; }

body.vm-page-home #main.ac-mj .ac-art-d-800ms-i-2 { --d:800ms;--i:2; }

body.vm-page-home #main.ac-mj .ac-art-d-900ms { --d:900ms; }

body.vm-page-home #main.ac-mj .ac-art-d-900ms-i-0 { --d:900ms;--i:0; }

body.vm-page-home #main.ac-mj .ac-art-d-900ms-i-1 { --d:900ms;--i:1; }

body.vm-page-home #main.ac-mj .ac-art-d-900ms-i-2 { --d:900ms;--i:2; }

/* Preserve the live hooks without inheriting the old component's grid and
   fixed dimensions. The conversion styles are scoped to the redesigned page. */
body.vm-page-home {line-height:1.55}
body.vm-page-home #main.ac-mj {
  --serif:"Cormorant Garamond",Georgia,serif; --sans:"DM Sans",Arial,sans-serif;
  display:block; background:var(--ivory); color:var(--navy); font:400 15px/1.55 var(--sans);
}
body.vm-page-home #main.ac-mj > section {
  width:auto; max-width:none; margin:0; position:relative; inset:auto; display:block;
}
body.vm-page-home #main.ac-mj .wrap {box-sizing:border-box}
body.vm-page-home #main.ac-mj > section:not(.hero) {padding-block:24px 28px;margin-block:0}
body.vm-page-home #main.ac-mj > section:not(.hero) > .wrap {padding-block:0;margin-block:0}
body.vm-page-home #main.ac-mj > section:not(.hero) > .wrap > :first-child {margin-top:0}
body.vm-page-home #main.ac-mj > section:not(.hero) > .wrap > :last-child {margin-bottom:0}
body.vm-page-home #main.ac-mj :is(.story,.faq,.directions) > .wrap {border-block:0}
body.vm-page-home #main.ac-mj > :is(.story,.faq,.feature,.directions) {border-block:0}
body.vm-page-home #main.ac-mj > .booking {border-top:1px solid var(--line);border-bottom:0}
body.vm-page-home #main.ac-mj > .hero {padding:0;min-height:0;border:0;max-height:none;overflow:visible}
body.vm-page-home #main.ac-mj .hero > .wrap {width:100%;max-width:none;overflow:hidden}
body.vm-page-home #main.ac-mj .hero .home-photo {display:block;width:auto;height:auto;min-height:0;max-height:none;inset:auto}
body.vm-page-home #main.ac-mj .hero .home-copy {width:auto;max-width:none;margin:0;inset:auto;position:static;align-self:center}
body.vm-page-home #main.ac-mj .hero .home-copy .intro {margin:0;color:var(--navy)}
body.vm-page-home #main.ac-mj .ac-hero-rule {display:none}
body.vm-page-home #main.ac-mj .crumbs {margin:0 0 15px;display:flex;align-items:center;gap:.45em;flex-wrap:wrap;font:400 13px/1.4 var(--sans)}
body.vm-page-home #main.ac-mj .crumbs a {position:relative;display:inline-flex;min-width:44px;align-items:center}
body.vm-page-home #main.ac-mj .crumbs a::after {content:"";position:absolute;inset:50% 0 auto;height:44px;transform:translateY(-50%)}
body.vm-page-home #main.ac-mj :is(.link,.help,.credits summary,.faq summary,.vm-footer-explore a) {min-height:44px}
body.vm-page-home #main.ac-mj .credits summary {padding-top:max(0px,calc(44px - 1.55em))}
body.vm-page-home #main.ac-mj .opt input,body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .d-opt input {width:1px;height:1px;position:absolute;overflow:hidden;clip-path:inset(50%)}
body.vm-page-home #main.ac-mj .opt:focus-within,body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .d-opt:focus-within {outline:2px solid var(--cobalt);outline-offset:2px}
body.vm-page-home #main.ac-mj .hero .hero-benefits {width:100%;margin:8px 0 0;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:5px;font-size:11px}
body.vm-page-home #main.ac-mj .hero .hero-benefits li {margin:0;list-style:none}
body.vm-page-home #main.ac-mj .trust li {font-size:12px;white-space:normal}
body.vm-page-home #main.ac-mj .hero .hero-benefits .trust::before {display:none}
body.vm-page-home #main.ac-mj .story .wrap {min-height:0}
body.vm-page-home #main.ac-mj .book-grid > .experience-form {display:block;min-width:0;width:100%;margin:0;padding:0;max-width:none}
body.vm-page-home #main.ac-mj .cards.experience-grid {height:auto;max-width:none;width:100%;margin:0;padding:0}
body.vm-page-home #main.ac-mj .cards .xcard {height:auto;max-width:none;min-width:0;grid-template-columns:none;align-items:stretch;box-sizing:border-box}
body.vm-page-home #main.ac-mj .xcard input {width:1px;height:1px;min-height:0;position:absolute;overflow:hidden;clip-path:inset(50%)}
body.vm-page-home #main.ac-mj .xcard:focus-within {outline:2px solid var(--cobalt);outline-offset:3px}
body.vm-page-home #main.ac-mj .xcard>.media {display:block;margin:0;padding:0;width:100%;overflow:hidden}
body.vm-page-home #main.ac-mj .xcard>.two {display:grid;height:auto;grid-template-columns:1fr 1fr;gap:2px}
body.vm-page-home #main.ac-mj .xcard .media > img {margin:0;width:100%;height:100%;object-fit:cover;border-radius:0}
body.vm-page-home #main.ac-mj .xcard .inc {margin-inline:16px}
body.vm-page-home #main.ac-mj .xcard .head {flex-wrap:wrap;margin:14px 16px 4px;padding:0;width:auto;min-width:0}
body.vm-page-home #main.ac-mj .xcard .head h3 {min-width:0;flex:1 1 110px}
body.vm-page-home #main.ac-mj .xcard .head .price {width:auto;min-width:0;margin:0;padding:0;flex:0 0 auto}
body.vm-page-home #main.ac-mj .buy .hero-cta {margin:0}
body.vm-page-home #main.ac-mj .how.how-booking {display:block;min-width:0;max-width:none;margin:0;align-self:start}
body.vm-page-home #main.ac-mj .how li b {display:block;width:auto;height:auto;min-width:0;max-width:none;padding:0;border:0;border-radius:0;background:none;font:600 15px/1.35 var(--font-sans)}
body.vm-page-home #main.ac-mj :is(.how,.how ol,.how li) {height:auto;max-height:none;overflow:visible}
body.vm-page-home #main.ac-mj .frm-price {font-variant-numeric:tabular-nums}
body.vm-page-home #main.ac-mj .ymlv .sugg [hidden] {display:none!important}
body.vm-page-home #main.ac-mj .sugg .ac-suggestion {display:flex;gap:8px;padding:8px 12px;align-items:center;font-size:15px}
body.vm-page-home #main.ac-mj .sugg .ac-suggestion .tag {margin-inline-start:auto}
body.vm-page-home #main.ac-mj .ycard {margin:0;box-sizing:border-box}
body.vm-page-home #main.ac-mj .scard img {width:100%;height:auto;max-height:135px;object-fit:cover;border-radius:8px}
body.vm-page-home #main.ac-mj .hero-media .from {display:inline-flex}
body.vm-page-home #main.ac-mj .faq .vm-home-answers {width:auto;display:block}
body.vm-page-home #main.ac-mj .journey {color:var(--navy);background:var(--ivory);container-type:inline-size;overflow:visible}
body.vm-page-home #main.ac-mj .journey .aj-kicker {display:flex;width:fit-content;color:var(--gold-deep)}
body.vm-page-home #main.ac-mj .journey .aj-title {margin:0 0 22px;font-size:clamp(32px,5.2vw,46px);color:#152e32}
body.vm-page-home #main.ac-mj .journey .ap-card {display:grid;grid-template-columns:minmax(0,1fr);position:relative;border-radius:24px;width:100%;max-width:none}
body.vm-page-home #main.ac-mj .journey .ap-panel {min-width:0}
body.vm-page-home #main.ac-mj .journey .aj-copy {position:static;margin:0;padding:0;grid-area:auto;visibility:visible}
body.vm-page-home #main.ac-mj .journey [hidden] {display:none!important}
body.vm-page-home #main.ac-mj .journey .aj-art {display:contents}
body.vm-page-home #main.ac-mj .journey .aj-controls {display:flex;align-items:center;gap:10px;padding:0;margin-top:25px;grid-area:auto}
body.vm-page-home #main.ac-mj .journey .aj-controls button {min-width:44px;min-height:44px}
body.vm-page-home #main.ac-mj .journey .aj-controls .ap-pause {width:auto;display:inline-flex;align-items:center;gap:6px;padding:0 13px;border-radius:99px}
body.vm-page-home #main.ac-mj .journey .ap-replay {position:static;display:inline-flex;min-height:44px;border-radius:6px}
body.vm-page-home #main.ac-mj .sbar {display:flex;z-index:28}
body.vm-page-home #main.ac-mj .sbar:not(.show) {visibility:hidden;pointer-events:none}
body.vm-page-home #main.ac-mj .sbar.show {visibility:visible;transform:translateY(0)}
body.vm-page-home #main.ac-mj :is(a,button,label,input,summary):focus-visible,body[class*="vm-page-"] #mobile-menu.ac-mj-drawer :focus-visible {outline:2px solid var(--cobalt);outline-offset:2px}
body.vm-page-home #main.ac-mj .eyebrow,body.vm-page-home #main.ac-mj .buy-note,body.vm-page-home #main.ac-mj .xcard small,body.vm-page-home #main.ac-mj .steps-mini,body.vm-page-home #main.ac-mj .sbar small {font-size:clamp(11px,1vw,13px)}
body.vm-page-home #main.ac-mj .dates button,body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .d-dates button {font-size:13px;min-height:44px}
body.vm-page-home #main.ac-mj .buy-note,body.vm-page-home #main.ac-mj .scard p:not(.eyebrow),body.vm-page-home #main.ac-mj .pcard p:not(.eyebrow) {font-size:15px}
body.vm-page-home #main.ac-mj .sub {font-size:16px}
body.vm-page-home #main.ac-mj .service .sub {font-size:15px}
body.vm-page-home #main.ac-mj .service .link {align-items:flex-end}
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer {--sun:#f3c640;--sand:#e3c97a;--mline:rgba(255,255,255,.12);--mline2:rgba(255,255,255,.22);--mmuted:#aab6c4;display:block;position:fixed;inset:0 0 0 auto;width:min(92vw,420px);height:100dvh;overflow-y:auto;overscroll-behavior:contain;z-index:102;background:var(--drawer,#0b1a30);color:#f3f1ea;transform:none;max-height:none;padding:0}
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .top .brand {display:grid;grid-template-columns:26px 1fr;column-gap:6px;align-items:center;width:max-content;max-width:none;min-width:0;margin:0;padding:0;color:#fff;text-decoration:none}
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .brand .mark {width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:var(--sun)}
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .brand .mark svg {width:17px;height:17px;stroke:#071b32;stroke-width:2;fill:none;stroke-linecap:round}
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .brand .word {color:var(--sun);font:700 clamp(19px,5vw,23px)/1 "DM Sans",Arial,sans-serif}
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .brand .word b {color:#8a9a3a}
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .brand small {grid-column:1/-1;font-size:11px;white-space:nowrap}
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .top .acts, body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .top .heart {display:flex;align-items:center;gap:5px;white-space:nowrap}
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .top .heart svg {width:20px;height:20px;fill:none;stroke:#fff;stroke-width:2}
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .top .cnt {display:grid;place-items:center;width:19px;height:19px;border-radius:50%;background:#2a3b55;font-size:11px}
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .top .flag {display:grid;place-items:center;min-width:44px;padding:5px;background:transparent;color:#fff;border:1px solid var(--mline2);border-radius:8px;cursor:pointer}
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .top .flag :is(img,svg) {width:22px;height:16px}
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .top .close {min-width:44px}
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .top {padding:12px clamp(8px,2.6vw,16px);gap:4px}
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .top .heart {min-width:42px}
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer[hidden],body[class*="vm-page-"] .ac-mj-scrim[hidden] {display:none!important}
body.ac-mj-menu-open {overflow:hidden}
.vm-page-home footer.ac-mj-footer {display:block;margin:0;padding:40px 0;background:#f4f0e4;color:#071b32}
.vm-page-home footer.ac-mj-footer .vm-footer-directory {width:100%;max-width:1160px;margin:auto;padding:0 max(16px,env(safe-area-inset-left));display:grid;grid-template-columns:1fr;gap:26px;border:0;box-sizing:border-box}
.vm-page-home footer.ac-mj-footer .vm-footer-directory h2 {font:600 clamp(32px,5.2vw,46px)/1.02 "Cormorant Garamond",Georgia,serif;color:inherit}
.vm-page-home footer.ac-mj-footer .vm-footer-directory p:not(.eyebrow) {font-size:15px;max-width:45ch}
.vm-page-home footer.ac-mj-footer .vm-footer-explore {display:grid;grid-template-columns:1fr;align-items:start;gap:20px;min-width:0}
.vm-page-home footer.ac-mj-footer .vm-footer-explore h3 {margin:0 0 6px;font:600 11px/1.4 "DM Sans",Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase;color:#3c5a4b}
.vm-page-home footer.ac-mj-footer .vm-footer-explore a {display:flex;align-items:center;min-height:44px;padding:4px 0;font:400 15px/1.5 "DM Sans",Arial,sans-serif;color:#071b32;text-decoration:none;border:0}
.vm-page-home footer.ac-mj-footer .vm-footer-explore a:hover {text-decoration:underline}
.vm-page-home footer.ac-mj-footer .ac-footer-fold {min-width:0;border-top:1px solid var(--line)}
.vm-page-home footer.ac-mj-footer .ac-footer-fold summary {display:flex;align-items:center;justify-content:space-between;min-height:44px;list-style:none;cursor:pointer}
.vm-page-home footer.ac-mj-footer .ac-footer-fold summary::-webkit-details-marker {display:none}
.vm-page-home footer.ac-mj-footer .ac-footer-fold h3 {margin:0;font-size:13px}
.vm-page-home footer.ac-mj-footer .ac-footer-fold summary::after {content:"+";font-size:18px}
.vm-page-home footer.ac-mj-footer .ac-footer-fold[open] summary::after {content:"−"}
@media(min-width:900px) {
  .vm-page-home footer.ac-mj-footer .ac-footer-fold summary {min-height:32px;cursor:default;pointer-events:none}
  .vm-page-home footer.ac-mj-footer .ac-footer-fold summary::after {display:none}
}
@media(max-width:899.98px) {
  .vm-page-home footer.ac-mj-footer .vm-footer-explore {gap:0}
}
body[class*="vm-page-"] .ac-mj-scrim {position:fixed;inset:0;width:100%;height:100%;z-index:101;border:0;background:rgba(4,20,35,.52)}
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .ac-mj-essentials {display:grid;padding:0 16px}
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer a,body[class*="vm-page-"] #mobile-menu.ac-mj-drawer button {min-height:44px}
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .d-opt {min-height:60px}
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer .vm-discover-links {position:static;width:auto;border:0;box-shadow:none;background:none;display:block}
body[class*="vm-page-"] #mobile-menu.ac-mj-drawer [data-ac-language] {background:none;border:none;color:inherit;font:inherit;text-align:left}
@media(min-width:900px){
  .vm-page-home footer.ac-mj-footer .vm-footer-directory {grid-template-columns:1fr 1.2fr;gap:48px}
  .vm-page-home footer.ac-mj-footer .vm-footer-explore {grid-template-columns:repeat(3,minmax(0,1fr))}
  body.vm-page-home #main.ac-mj .journey .ap-card {grid-template-columns:minmax(0,1fr) minmax(0,1.05fr)}
  body.vm-page-home #main.ac-mj > section:not(.hero) {padding-block:40px 48px}
  /* The desktop hero image ends at the section edge with no bottom gutter. */
  body.vm-page-home #main.ac-mj > .hero + .story {padding-top:88px}
  body.vm-page-home #main.ac-mj .sbar,body[class*="vm-page-"] #mobile-menu.ac-mj-drawer {display:none}
}
@media(max-width:899px){
  body.vm-page-home #main.ac-mj .hero .hero-copy {padding-bottom:28px}
  body.vm-page-home #main.ac-mj .booking .how {margin-top:18px}
  body.vm-page-home #main.ac-mj .steps-mini {display:flex;flex-wrap:wrap;gap:8px 12px}
  body.vm-page-home #main.ac-mj .steps-mini li {gap:5px;min-width:0;font-size:13px;line-height:1.25;white-space:normal}
  body.vm-page-home #main.ac-mj .steps-mini b {flex:0 0 22px}
  body.vm-page-home #main.ac-mj .steps-mini li+li::before {display:none}
}
@media(prefers-reduced-motion:reduce){
 body.vm-page-home #main.ac-mj .sbar {transition:none}
 body.vm-page-home #main.ac-mj .ap-scene * {animation:none!important;transition:none!important;opacity:1}
}

