*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f5f0e7;color:#20231f;font:16px/1.6 Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button,.btn{cursor:pointer;border:0;display:inline-block;padding:14px 24px;background:#c7a76b;color:#111;border-radius:3px;font-weight:700}button:hover,.btn:hover{filter:brightness(1.1)}a:focus-visible,button:focus-visible{outline:3px solid #e5b832;outline-offset:4px}.review{background:#272b2e;color:white;font-size:11px;letter-spacing:1px;text-align:center;padding:9px;display:flex;justify-content:center;gap:22px;flex-wrap:wrap}.review a{text-decoration:underline}header{display:flex;align-items:center;justify-content:space-between;padding:15px 6%;background:#111714;color:#fff;gap:25px}header img{width:135px;height:70px;object-fit:contain}nav{display:flex;gap:28px;align-items:center;font-size:14px}.hero{background:#111714;color:#fff;display:grid;grid-template-columns:46% 54%;min-height:570px}.hero .copy{padding:65px 10% 65px 13%}.eyebrow{font-size:12px;letter-spacing:3px;text-transform:uppercase;color:#b49358}h1{font:normal clamp(42px,4.5vw,72px)/1.08 Georgia,serif;margin:24px 0}h2{font:normal 40px/1.2 Georgia,serif;margin:12px 0 25px}h3{font-size:22px;margin:15px 0 8px}.hero p{color:#c9cec8;max-width:370px}.hero img{width:100%;height:100%;object-fit:cover}.textlink{display:inline-block;margin:20px;color:#d9c39a}.strap{padding:21px;text-align:center;letter-spacing:2px;font-size:12px;border-bottom:1px solid #d4c9b6}section{padding:65px 7%;scroll-margin-top:20px}.sectionhead{display:flex;justify-content:space-between;align-items:end;gap:25px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{background:#fff;padding-bottom:24px}.card img{width:100%;height:230px;object-fit:cover}.card .inside{padding:0 24px}.card button{padding:0;background:none;color:#786039;margin-top:15px}.dark{background:#17211d;color:#fff}.fleet{display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:center}.fleet img{width:100%;border-radius:4px}.choices{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:22px}.choices button{background:transparent;color:inherit;border:1px solid #9caa9f}.choices button.active{background:#c7a76b;color:#111}.callout{text-align:center;background:#e6ddcb}.callout p{max-width:600px;margin:15px auto 28px}footer{background:#111714;color:#c9cec8;padding:40px 7%;display:flex;justify-content:space-between;gap:20px}footer small{display:block}.jjm{background:#d9f2ff;color:#09275c}.jjm header,.jjm footer{background:#06468a;color:#fff}.jjm header img{width:150px;height:84px}.jjm h1,.jjm h2{font-family:Arial,sans-serif;font-weight:900;font-style:italic}.jjm button,.jjm .btn{background:#ffdc16;color:#09214c;border:2px solid #09275c;border-radius:30px}.illustrated{position:relative;max-width:1440px;margin:auto}.illustrated img{width:100%;display:block}.hero-actions{display:flex;justify-content:center;gap:12px;background:#b9e7ff;padding:14px}.service-art{width:100%;display:block}.jjm .card{border:3px solid white;border-radius:22px;overflow:hidden;box-shadow:0 8px 16px #217ab32a;background:#fff4ae}.jjm .card img{height:180px}.jjm .card button{background:#ffdc16;padding:8px 18px}.jjm .grid{grid-template-columns:repeat(4,1fr)}.jjm .callout{background:#0c60aa;color:#fff}.regions{padding:22px 7%;background:#fff7cc;text-align:center}.regions a{display:inline-block;margin:6px;padding:7px 17px;border:1px solid #104a86;border-radius:30px}.regions a.active{background:#104a86;color:#fff}.regional{background:#e4f6ff;text-align:center;padding:36px 7%}.regional h1{font-size:42px;margin:10px}.regional p{max-width:650px;margin:15px auto}.notice{font-size:12px;opacity:.75}dialog{border:0;border-radius:16px;width:min(550px,94vw);padding:35px;box-shadow:0 20px 100px #0006;background:#fffaf0;color:#142b30}dialog::backdrop{background:#071c2bc9}.close{position:absolute;right:8px;top:4px;background:none;font-size:28px;padding:5px 12px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}label{display:block;font-size:13px}input,select,textarea{display:block;width:100%;padding:10px;border:1px solid #a8b4b2;border-radius:5px;background:#fff;margin:5px 0 12px}textarea{min-height:110px}.status{padding:18px;background:#e6f0e9;border-left:4px solid #3b825a}.mobilemenu{display:none}.flowbar{font-size:11px;color:#67726b;letter-spacing:1px}.full{grid-column:1/-1}@media(max-width:720px){.review{gap:9px;font-size:9px}header{padding:10px 5%;flex-wrap:wrap;gap:8px}header img{width:110px;height:55px}nav{display:none;width:100%;flex-wrap:wrap;gap:18px;padding:15px 0}.mobilemenu{display:block;padding:8px 16px}nav.open{display:flex}.hero{grid-template-columns:1fr}.hero .copy{padding:40px 7%}.hero img{height:310px}.hero h1{font-size:48px}.hero p{max-width:none}.strap{font-size:10px}section{padding:40px 6%}h2{font-size:32px}.grid,.jjm .grid{grid-template-columns:1fr 1fr;gap:14px}.grid .card:last-child{grid-column:1/-1}.jjm .grid .card:last-child{grid-column:auto}.card img{height:180px}.card .inside{padding:0 15px}.fleet{grid-template-columns:1fr;gap:25px}.sectionhead{display:block}.hero-actions{flex-wrap:wrap}.hero-actions button,.hero-actions a{padding:10px 16px}.jjm .card img{height:125px}.jjm h3{font-size:18px}.jjm header img{width:125px;height:70px}.illustrated{overflow:hidden}.illustrated img{width:160%;max-width:none;margin-left:-30%}.regional h1{font-size:30px}footer{flex-direction:column}.formgrid{grid-template-columns:1fr}.full{grid-column:auto}}@media(max-width:400px){.grid{grid-template-columns:1fr}.grid .card:last-child{grid-column:auto}.jjm .grid{grid-template-columns:1fr 1fr}.jjm .card button{font-size:12px;padding:6px 10px}}

/* Review revision: enlarge the original JJM mark by 50%. */
.jjm header img{width:225px;height:126px}@media(max-width:720px){.jjm header img{width:187.5px;height:105px}}

.staging-note{padding:8px 16px;text-align:center;background:#272b2e;color:white;font-size:12px}.skip{position:absolute;left:10px;top:-100px;z-index:99;background:white;color:#111;padding:12px}.skip:focus{top:10px}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #1978cb;outline-offset:3px}dialog{max-height:92vh;overflow:auto}p{overflow-wrap:break-word}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
/* Luxe Avant: reuse the existing photograph across the entire hero. */
body:not(.jjm) .hero{position:relative;isolation:isolate;display:block;overflow:hidden;min-height:570px}
body:not(.jjm) .hero>img{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover;object-position:center 55%}
body:not(.jjm) .hero::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(8,16,12,.86) 0%,rgba(8,16,12,.72) 26%,rgba(8,16,12,.32) 54%,rgba(8,16,12,.04) 80%)}
body:not(.jjm) .hero .copy{position:relative;z-index:2;width:52%;max-width:680px;padding:65px 6vw}
body:not(.jjm) .hero p{color:#edf0eb;text-shadow:0 1px 4px #0007}
body:not(.jjm) .hero .eyebrow{color:#dbbd84}
@media(max-width:720px){body:not(.jjm) .hero{min-height:620px}body:not(.jjm) .hero>img{object-position:62% center}body:not(.jjm) .hero::after{background:linear-gradient(180deg,rgba(8,16,12,.82),rgba(8,16,12,.55) 65%,rgba(8,16,12,.24))}body:not(.jjm) .hero .copy{width:100%;max-width:none;padding:40px 7%}body:not(.jjm) .hero h1{font-size:48px}}


/* Preserve the supplied comfort artwork, including its headline. */
#fleet>img{display:block;width:100%;height:auto;object-fit:contain}

.jjm #tours .grid{row-gap:24px}.jjm #tours .card .inside{display:flex;flex-direction:column;align-items:flex-start}.jjm #tours .card button{margin-top:auto}.jjm #tours .season-label{font-weight:700;font-size:13px;margin:0}.jjm #tours .notice{font-size:12px;margin:6px 0 16px}

.triplink{display:inline-block;font-weight:700}.jjm .card .triplink{padding:8px 18px;background:#ffdc16;color:#09214c;border:2px solid #09275c;border-radius:30px;font-weight:700;margin-top:15px}.jjm .card .triplink:hover{filter:brightness(1.08)}@media(max-width:400px){.jjm .card .triplink{font-size:12px;padding:6px 10px}}

body:not(.jjm) #tours .triplink{display:inline-block;padding:14px 24px;background:#c7a76b;color:#111;border:1px solid #c7a76b;border-radius:3px;font-weight:700}body:not(.jjm) #tours .triplink:hover{filter:brightness(1.1)}
