/* Shared catalogue: restore the earlier approved hierarchy, using current site tokens. */
.shared-opening{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:48px;align-items:end;padding-block:55px 43px}.shared-opening h1{font-size:clamp(76px,7.5vw,108px);line-height:.94;margin-top:20px;text-transform:uppercase}.shared-opening>div>p:not(.eyebrow){font-size:19px;line-height:1.7;color:var(--muted);max-width:640px;margin-top:24px}.shared-rate-key{font-size:14px;line-height:1.7;max-width:255px;border-left:1px solid var(--line);padding-left:27px}.shared-rate-key p{font-size:14px!important;margin:0!important}.shared-rate-key strong{display:block;font-size:18px;color:var(--ink);margin-top:3px}.shared-rate-key p>span{display:block;color:var(--muted);margin-top:15px}.shared-cruise-link{padding-bottom:32px}.shared-catalogue{padding-bottom:var(--section-space)}
.catalogue-head,.tour-rate{display:grid;grid-template-columns:90px minmax(0,1fr) 302px;gap:30px;padding-inline:24px}.catalogue-head{padding-bottom:14px;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.catalogue-head>div,.rate-end{display:grid;grid-template-columns:142px 130px;gap:30px;align-items:center}.tour-rate{padding-block:27px;border-top:1px solid var(--line);align-items:center}.tour-duration strong{font:700 48px/1 Barlow,Impact,sans-serif;display:block}.tour-duration span{display:block;font-size:14px;line-height:1.5;margin-top:5px}.tour-rate-copy h3{line-height:1.1}.tour-rate-copy>p{margin-top:11px;font-size:16px;line-height:1.6;color:var(--muted);max-width:590px}.tour-rate-price{display:flex;flex-direction:column;gap:7px;margin:0}.tour-rate-price strong{font:700 44px/1 Barlow,Impact,sans-serif}.tour-rate-price strong.unpriced{font-size:31px;line-height:1.05}.tour-rate-price>span{font-size:13px;line-height:1.5}.tour-rate-action{display:inline-flex;align-items:center;justify-content:flex-start;min-height:48px;padding:10px 0;border-bottom:1px solid currentColor;font-size:14px;font-weight:600;text-decoration:none}.tour-rate-action:hover{color:var(--accent);text-decoration:none;border-bottom-width:2px}.tour-rate-signature{background:#112d36;color:#f4f6ef;border-color:#112d36;--focus:#c6ad79}.tour-rate-signature .tour-rate-copy>p{color:#d4e1dd}.tour-rate-signature .tour-duration strong,.tour-rate-signature h3{color:var(--gold)}.tour-rate-signature .tour-rate-action:hover{color:var(--gold)}
@media(max-width:1100px){.catalogue-head,.tour-rate{grid-template-columns:74px minmax(0,1fr) 265px;gap:24px;padding-inline:20px}.catalogue-head>div,.rate-end{grid-template-columns:125px 116px;gap:24px}.shared-opening{gap:30px}.shared-rate-key{max-width:210px;padding-left:22px}}
@media(max-width:900px){.catalogue-head,.tour-rate{grid-template-columns:60px minmax(0,1fr) 220px;gap:20px;padding-inline:18px}.catalogue-head>div,.rate-end{grid-template-columns:106px 94px;gap:20px}.tour-rate-price strong{font-size:40px}.shared-opening h1{font-size:76px}}
@media(max-width:700px){.shared-opening{display:block;padding-block:36px 30px}.shared-opening h1{font-size:68px}.shared-opening>div>p:not(.eyebrow){font-size:18px;margin-top:22px}.shared-rate-key{border-left:0;border-top:1px solid var(--line);padding:19px 0 0;margin-top:24px;max-width:none}.shared-rate-key strong{display:inline;margin-left:12px;font-size:16px}.shared-rate-key p>span{display:none}.shared-cruise-link{padding-bottom:24px}.catalogue-head{display:none}.tour-rate{grid-template-columns:43px minmax(0,1fr);gap:18px;padding:24px 14px;align-items:start}.tour-duration{grid-column:1;grid-row:1/3}.tour-duration strong{font-size:40px}.tour-rate-copy{grid-column:2}.tour-rate-copy>p{margin-top:12px}.rate-end{grid-column:2;grid-template-columns:minmax(0,1fr) 86px;gap:18px;width:100%;align-items:center}.tour-rate-price strong{font-size:38px}.tour-rate-price strong.unpriced{font-size:30px;max-width:112px}.tour-rate-action{min-height:48px}.shared-catalogue{padding-bottom:var(--section-space)}}
@media(max-width:420px){.shared-opening h1{font-size:58px}.shared-opening>div>p:not(.eyebrow){font-size:17px}.tour-rate{grid-template-columns:33px minmax(0,1fr);gap:16px 13px;padding-inline:12px}.tour-rate-price strong{font-size:35px}.rate-end{gap:12px;grid-template-columns:minmax(0,1fr) 72px}.tour-rate-price strong.unpriced{font-size:29px;max-width:98px}.tour-duration strong{font-size:36px}.tour-rate-copy h3{font-size:29px}}
