:root{--navy:#112e39;--navy-deep:#0b242d;--ivory:#fff8ef;--paper:#faf5ed;--gold:#d8b46a;--ink:#233137;--muted:#566269;--line:#ded4c6;--red:#7b0614;scroll-behavior:smooth}
*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 50% 0%,rgba(255,210,190,.34),rgba(160,13,32,.2) 28%,rgba(43,3,8,.96) 72%),linear-gradient(135deg,#2b0308 0%,#7b0614 42%,#140103 100%);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.65}a{color:#7b0614;text-underline-offset:.22em}a:hover{text-decoration-thickness:2px}a,button,summary,input{touch-action:manipulation}a:focus-visible,summary:focus-visible,input:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:3px solid #a27320;outline-offset:5px}img{max-width:100%;height:auto}h1,h2,h3,p{margin:0 0 1rem}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.2}h1{font-size:clamp(2.1rem,4.3vw,4.35rem);max-width:1050px;letter-spacing:-.025em}h2{font-size:clamp(1.65rem,2.5vw,2.5rem)}h3{font-size:1.55rem}p,li,a,h1,h2,h3{overflow-wrap:anywhere}.skip-link{position:absolute;left:1rem;top:-100px;z-index:5;padding:1rem;background:var(--ivory)}.skip-link:focus{top:1rem}.site-header,main,.site-footer{width:min(1240px,calc(100% - 56px));margin-inline:auto}.site-header{padding:32px 0 0;color:var(--ivory);display:grid;grid-template-columns:1fr auto;gap:22px 30px}.site-header a{color:inherit}.brand{font-family:Georgia,serif;font-size:1.65rem;letter-spacing:.1em;text-decoration:none;align-self:center;line-height:1.2}.brand span{display:block;margin-top:9px;font-family:Arial,sans-serif;font-size:.73rem;letter-spacing:.13em;color:#f0d6a1}.header-contact{display:flex;gap:6px 20px;max-width:650px;justify-content:flex-end;align-items:center;flex-wrap:wrap;font-size:.9rem}.header-contact span{font-size:.8rem;opacity:.9}.button{display:inline-flex;min-height:46px;padding:12px 23px;justify-content:center;align-items:center;text-decoration:none;font-size:.91rem;font-weight:600;border-radius:3px;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px);text-decoration:none}.button-gold{background:var(--gold);color:#152932!important;border:1px solid var(--gold)}.button-gold:hover{background:#edd19b}.button-outline{border:1px solid #d8b46a99;color:var(--ivory)!important}.button-outline:hover{background:#ffffff10}.cruise-menu{grid-column:1/-1;border-top:1px solid #d8b46a66;border-bottom:1px solid #d8b46a66;padding:12px 0}.cruise-menu summary{cursor:pointer;font-size:.92rem;list-style-position:inside;width:fit-content;padding:5px 0}.cruise-menu nav{display:flex;flex-wrap:wrap;gap:12px 30px;padding:18px 0 6px}.cruise-menu nav a{font-size:.9rem;min-height:36px}.breadcrumbs{padding:20px 0;color:#f0d6a1;font-size:.77rem}.breadcrumbs ol{padding:0;display:flex;flex-wrap:wrap;list-style:none;gap:6px 12px;margin:0}.breadcrumbs li:not(:last-child)::after{content:'/';padding-left:12px;opacity:.5}.breadcrumbs a{color:var(--ivory)}.breadcrumbs [aria-current]{opacity:.85}.hero{background:linear-gradient(140deg,#112e39,#0b242d);color:var(--ivory);padding:clamp(28px,5vw,68px);border:1px solid #d8b46a80;border-bottom:3px solid var(--gold);position:relative}.hero h1{margin-bottom:24px}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:.71rem;font-weight:600;color:#806329;margin-bottom:20px}.hero .eyebrow,.enquiry-panel .eyebrow{color:#f0d6a1}.hero-intro{max-width:890px;font-size:clamp(1rem,1.3vw,1.18rem);color:#e1e8e7;line-height:1.85}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.reference-notice{font-size:.8rem;color:#e2d7c7;margin:26px 0 0;padding-top:20px;border-top:1px solid #d8b46a40;max-width:920px}.planning-panel{display:grid;grid-template-columns:1.55fr 1fr;background:var(--ivory);gap:36px;padding:clamp(25px,4vw,52px);margin-top:24px}.planning-panel>div{max-width:710px}.planning-panel p{color:var(--muted)}.planning-checklist{border-left:1px solid var(--line);padding-left:36px}.planning-checklist h2{font-size:1.5rem}.planning-checklist ol{padding-left:20px;line-height:1.85;margin-bottom:20px}.planning-checklist a{font-size:.9rem}.collection{background:var(--paper);padding:clamp(25px,4vw,52px);margin-top:24px}.line-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:30px}.line-card{padding:28px;border:1px solid var(--line);background:#fffaf4;display:flex;flex-direction:column}.line-card h3 a{color:var(--navy);text-decoration:none}.line-card p{color:var(--muted);font-size:.94rem;line-height:1.75}.line-card>a{margin-top:auto;font-size:.86rem}.card-kicker{text-transform:uppercase;font-size:.61rem;letter-spacing:.12em;color:#806329;margin-bottom:19px}.route-panel,.reference-section,.faq-panel,.related-panel{background:var(--ivory);margin-top:24px;padding:clamp(25px,4vw,52px);min-width:0}.port-list{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;counter-reset:ports}.port-list li{counter-increment:ports;background:#ece8df;padding:10px 14px;font-size:.85rem}.port-list li::before{content:counter(ports,decimal-leading-zero)' ';color:#806329;margin-right:8px}.reference-content{font-size:1rem;min-width:0}.reference-content *{max-width:100%}.reference-content h2{font-size:1.55rem;margin-top:22px}.reference-content h3{font-size:1.3rem}.reference-content p{margin:15px 0}.reference-content span{font-family:inherit;font-size:inherit;color:inherit;background:transparent;line-height:inherit}.reference-content b,.reference-content strong{font-weight:600}.reference-content a{color:#7b0614}.reference-content img{display:inline-block;vertical-align:middle;margin:8px;object-fit:contain;max-width:calc(100% - 16px)}.legacy-grid{display:flex;flex-direction:column;gap:12px;padding:12px 0}.legacy-row{display:flex;flex-wrap:wrap;gap:20px;min-width:0}.legacy-cell{flex:1 1 240px;min-width:0;max-width:100%;padding:16px;border:1px solid var(--line);background:#fffaf4;overflow-wrap:anywhere}.legacy-cell .legacy-cell{padding:10px}.table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;border:1px solid var(--line);background:#fffaf4;margin:24px 0;scrollbar-color:#8b6834 #eee6d9}.reference-table{width:100%;min-width:660px;border-collapse:collapse;text-align:left}.reference-table td,.reference-table th{border:1px solid var(--line);padding:12px 15px;vertical-align:top;white-space:normal;min-width:85px;font-size:.94rem}.reference-table th{background:var(--navy);color:var(--ivory);font-weight:600}.reference-table tr:nth-child(even) td{background:#f1ebe1}.reference-table td[colspan]{line-height:1.65}.reference-table .legacy-cell{border:0}.table-scroll+.table-scroll{margin-top:18px}.anchor-marker{display:block;scroll-margin-top:20px}.reference-note{padding:18px;border-left:3px solid #a27320;background:#f1e9db;font-size:.85rem;margin-top:18px}.faq-panel details{border-bottom:1px solid var(--line);padding:18px 0}.faq-panel summary{cursor:pointer;font-weight:600;padding:6px 0}.faq-panel details p{margin:16px 0 0;color:var(--muted);max-width:950px}.related-panel{display:flex;gap:12px 24px;flex-wrap:wrap}.related-panel h2{flex-basis:100%;font-size:1.6rem;margin-bottom:8px}.related-panel a{font-size:.9rem;min-height:32px}.enquiry-panel{background:var(--navy);color:var(--ivory);padding:clamp(28px,4vw,54px);border:1px solid #d8b46a80;margin-top:24px}.enquiry-panel>p{max-width:850px;color:#e1e8e7}.enquiry-panel h2{font-size:clamp(1.8rem,3vw,3rem)}.enquiry-panel .actions+p{font-size:.85rem;margin:20px 0 0}.site-footer{padding:44px 0;color:var(--ivory);font-size:.8rem}.footer-brand{font-family:Georgia,serif;font-size:1.1rem;letter-spacing:.08em}.site-footer nav{display:flex;flex-wrap:wrap;gap:10px 26px;margin:22px 0}.site-footer a{color:var(--ivory)}.site-footer>p:last-of-type{max-width:800px;color:#ebd5bb}.reference-filter{margin:16px 0 24px;padding:18px;background:#eae5dc;border:1px solid var(--line)}.reference-filter label{display:block;font-weight:600;margin-bottom:8px}.reference-filter input{width:min(100%,580px);min-height:46px;border:1px solid #8c8070;border-radius:2px;background:#fffaf4;padding:11px;font:inherit}.reference-filter output{display:block;margin-top:10px;font-size:.85rem;color:#48565b}.reference-content [hidden]{display:none!important}.media-unavailable{display:inline-block;font-size:.8rem;color:#566269;padding:10px;border:1px solid var(--line);max-width:100%}
@media(min-width:1000px){.cruise-menu summary{font-size:1rem}.planning-panel{margin-top:28px}.hero{min-height:360px}}
@media(max-width:980px){.site-header{grid-template-columns:1fr}.header-contact{justify-content:flex-start;max-width:none}.line-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.planning-panel{grid-template-columns:1fr}.planning-checklist{padding-left:0;border-left:0;border-top:1px solid var(--line);padding-top:25px}}
@media(max-width:600px){.site-header,main,.site-footer{width:calc(100% - 28px)}.site-header{padding-top:24px;gap:18px}.brand{font-size:1.5rem}.header-contact{gap:8px 14px;font-size:.84rem}.header-contact .button{flex-basis:100%;max-width:400px;margin-top:8px}.hero{padding:28px 23px}.hero-intro{font-size:1rem;line-height:1.75}.hero h1{font-size:2.15rem}.hero .actions{flex-direction:column;align-items:stretch}.hero .actions a{width:100%}.eyebrow{letter-spacing:.15em}.planning-panel,.collection,.route-panel,.reference-section,.faq-panel,.related-panel,.enquiry-panel{padding:25px 22px;margin-top:18px}.line-grid{grid-template-columns:1fr}.line-card{padding:24px}.legacy-cell{flex-basis:100%;padding:12px}.reference-content{font-size:1rem}.breadcrumbs{padding:16px 0}.breadcrumbs li:last-child{max-width:100%}.reference-table td,.reference-table th{padding:10px 12px}.enquiry-panel .actions{flex-direction:column}.site-footer{padding:32px 5px}.site-footer nav{gap:14px 20px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}}
.archive-context{font-size:.85rem;color:var(--muted);border-left:3px solid #a27320;padding:8px 16px;margin-bottom:25px}
@media print{body{background:white;color:black}.site-header,.site-footer,.enquiry-panel,.cruise-menu,.reference-filter,.actions{display:none}main{width:100%}.hero{background:white;color:black;border:0;padding:15px}.hero-intro,.reference-notice,.hero .eyebrow{color:black}.table-scroll{overflow:visible}.reference-table{min-width:0}.planning-panel,.reference-section{padding:15px}}
.itinerary-preface-grid{display:flex;flex-wrap:wrap;gap:16px;margin:20px 0;min-width:0}.itinerary-preface-cell{flex:1 1 240px;min-width:0;max-width:100%;padding:16px;border:1px solid var(--line);background:#fffaf4;overflow-wrap:anywhere}.itinerary-preface-cell img{max-width:calc(100% - 16px)}
