.hl{color:#1f1f1f;background:#f5f5f0;min-height:100vh;font-family:Helvetica Neue,Arial,sans-serif;font-size:13px;line-height:1.5}.hl-primary-nav{color:#fff;background:#ec7700;align-items:stretch;padding:0;display:flex}.hl-primary-nav-logo{color:#fff;background:#001c48;flex-direction:column;justify-content:center;min-width:200px;padding:10px 24px;display:flex}.hl-primary-nav-logo-brand{letter-spacing:1px;font-family:Georgia,serif;font-size:18px;font-style:italic;font-weight:700}.hl-primary-nav-logo-tag{color:#ec7700;letter-spacing:3px;text-transform:uppercase;margin-top:2px;font-size:9px}.hl-primary-nav-tabs{flex:1;align-items:center;display:flex}.hl-primary-nav-tabs span{color:#fff;cursor:pointer;text-transform:uppercase;letter-spacing:.5px;border-right:1px solid #ffffff26;padding:14px 18px;font-size:13px;font-weight:600}.hl-primary-nav-tabs span:hover{background:#ffffff1f}.hl-primary-nav-tabs span.active{color:#fff;background:#001c48}.hl-primary-nav-right{align-items:center;gap:18px;padding:0 22px;font-size:12px;display:flex}.hl-primary-nav-right span{cursor:pointer;align-items:center;gap:4px;display:flex}.hl-breadcrumb{color:#6b6b6b;background:#fff;border-bottom:1px solid #e3e3e0;padding:10px 32px;font-size:11px}.hl-breadcrumb a{color:#ec7700;cursor:pointer;text-decoration:none}.hl-breadcrumb a:hover{text-decoration:underline}.hl-title-bar{background:#fff;border-bottom:1px solid #e3e3e0;padding:20px 32px}.hl-title{color:#001c48;margin:0;font-size:24px;font-weight:400}.hl-subtitle{color:#666;margin-top:4px;font-size:13px}.hl-main{max-width:1280px;margin:0 auto;padding:16px 24px 48px}.hl-search-bar{background:#fff;border:1px solid #e3e3e0;border-radius:4px;margin-bottom:16px;padding:14px 18px}.hl-search-grid{grid-template-columns:1.4fr 1.4fr .9fr 1fr .9fr auto;align-items:end;gap:12px;display:grid}.hl-field{flex-direction:column;gap:4px;display:flex}.hl-field label{color:#666;text-transform:uppercase;letter-spacing:.4px;font-size:11px;font-weight:600}.hl-field input,.hl-field select{color:#1f1f1f;background:#fff;border:1px solid #c8c8c8;border-radius:2px;padding:9px 10px;font-family:inherit;font-size:13px}.hl-field input:focus,.hl-field select:focus{border-color:#ec7700;outline:none;box-shadow:0 0 0 2px #ec770026}.hl-field-inline{gap:4px;display:flex}.hl-field-inline input{flex:1;min-width:0}.hl-field-inline select{flex-shrink:0;width:auto}.hl-field-hint{color:#999;font-size:10px}.hl-btn{cursor:pointer;color:#333;text-transform:uppercase;letter-spacing:.4px;white-space:nowrap;background:#fff;border:1px solid #c8c8c8;border-radius:2px;padding:9px 18px;font-family:inherit;font-size:12px;font-weight:700;transition:all .12s}.hl-btn:hover{background:#f5f5f5}.hl-btn:disabled{opacity:.5;cursor:not-allowed}.hl-btn-primary{color:#fff;background:#ec7700;border-color:#ec7700}.hl-btn-primary:hover{background:#d66a00}.hl-btn-primary:disabled:hover{background:#ec7700}.hl-btn-navy{color:#fff;background:#001c48;border-color:#001c48}.hl-btn-navy:hover{background:#002961}.hl-btn-ghost{color:#ec7700;background:0 0;border-color:#0000;padding:9px 10px}.hl-btn-ghost:hover{background:#ec770014}.hl-btn-sm{padding:6px 12px;font-size:11px}.hl-results-header{justify-content:space-between;align-items:flex-end;margin-bottom:12px;padding:0 4px;display:flex}.hl-results-count{color:#001c48;font-size:14px;font-weight:600}.hl-results-count strong{color:#ec7700;font-weight:800}.hl-results-sort{color:#666;align-items:center;gap:6px;font-size:11px;display:flex}.hl-results-sort select{background:#fff;border:1px solid #c8c8c8;border-radius:2px;padding:5px 8px;font-size:12px}.hl-date-strip{background:#fff;border:1px solid #e3e3e0;border-radius:4px;align-items:stretch;margin-bottom:16px;display:flex;overflow:hidden}.hl-date-strip-nav{cursor:pointer;color:#001c48;background:#f8f8f5;border:none;border-right:1px solid #e3e3e0;padding:0 12px;font-size:18px;font-weight:700}.hl-date-strip-nav:last-child{border-left:1px solid #e3e3e0;border-right:none}.hl-date-strip-nav:hover{color:#fff;background:#ec7700}.hl-date-strip-nav:disabled{opacity:.3;cursor:not-allowed;color:#001c48;background:#f8f8f5}.hl-date-strip-scroll{flex:1;grid-template-columns:repeat(7,1fr);display:grid}.hl-date-cell{text-align:center;cursor:pointer;border-right:1px solid #f0f0ee;flex-direction:column;justify-content:center;gap:2px;min-height:84px;padding:10px 6px;transition:background .12s;display:flex;position:relative}.hl-date-cell:last-child{border-right:none}.hl-date-cell:hover{background:#fff7ec}.hl-date-cell.selected{color:#fff;background:#001c48}.hl-date-cell.selected .hl-date-cell-price,.hl-date-cell.selected .hl-date-cell-weekday,.hl-date-cell.selected .hl-date-cell-date,.hl-date-cell.selected .hl-date-cell-count{color:#fff}.hl-date-cell.empty{color:#bbb;cursor:not-allowed}.hl-date-cell.empty:hover{background:0 0}.hl-date-cell-weekday{text-transform:uppercase;letter-spacing:.5px;color:#999;font-size:10px;font-weight:600}.hl-date-cell-date{color:#001c48;font-size:16px;font-weight:700}.hl-date-cell-count{color:#ec7700;font-size:10px;font-weight:600}.hl-date-cell.empty .hl-date-cell-count{color:#bbb}.hl-date-cell-price{color:#1f1f1f;font-size:11px;font-weight:700}.hl-date-cell-badge{color:#fff;letter-spacing:.5px;text-transform:uppercase;background:#4caf50;border-radius:2px;padding:2px 5px;font-size:8px;font-weight:700;position:absolute;top:2px;right:2px}.hl-date-cell-badge.fastest{background:#2196f3}.hl-date-cell-badge.cheapest{background:#4caf50}.hl-initial{text-align:center;background:#fff;border:1px solid #e3e3e0;border-radius:4px;max-width:640px;margin:40px auto 0;padding:64px 24px}.hl-initial-icon{margin-bottom:12px;font-size:48px}.hl-initial-title{color:#001c48;margin-bottom:8px;font-size:20px;font-weight:700}.hl-initial-body{color:#555;font-size:14px;line-height:1.6}.hl-loading{text-align:center;background:#fff;border:1px solid #e3e3e0;border-radius:4px;margin-top:16px;padding:40px 24px}.hl-loading-spinner{border:3px solid #ffe8d6;border-top-color:#ec7700;border-radius:50%;width:36px;height:36px;margin:0 auto 14px;animation:.8s linear infinite hl-spin}@keyframes hl-spin{to{transform:rotate(360deg)}}.hl-loading-title{color:#001c48;margin-bottom:4px;font-size:16px;font-weight:700}.hl-loading-body{color:#555;margin-bottom:20px;font-size:13px}.hl-loading-skeletons{flex-direction:column;gap:10px;max-width:780px;margin:0 auto;display:flex}.hl-loading-skeleton{background:linear-gradient(90deg,#f4f4f0,#e8e8e4,#f4f4f0) 0 0/400% 100%;border-radius:4px;height:96px;animation:1.4s ease-in-out infinite hl-shimmer}@keyframes hl-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.hl-stale-banner{color:#6d4c00;background:#fff8e1;border:1px solid #ffc107;border-radius:4px;justify-content:space-between;align-items:center;gap:16px;margin-top:16px;margin-bottom:12px;padding:12px 16px;font-size:13px;display:flex}.hl-stale-banner strong{color:#3f2c00}.hl-sailings{flex-direction:column;gap:12px;display:flex}.hl-sailing-card{background:#fff;border:1px solid #e3e3e0;border-radius:4px;grid-template-columns:1fr 360px;gap:20px;padding:16px 18px;transition:box-shadow .15s,border-color .15s;display:grid}.hl-sailing-card.in-compare{border-color:#ec7700;box-shadow:0 0 0 1px #ec7700}.hl-sailing-info{flex-direction:column;gap:12px;display:flex}.hl-sailing-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.hl-sailing-service-block{flex-direction:column;gap:2px;display:flex}.hl-sailing-service-code{color:#fff;letter-spacing:.5px;background:#001c48;border-radius:2px;align-items:center;gap:6px;width:fit-content;padding:3px 8px;font-size:11px;font-weight:700;display:inline-flex}.hl-sailing-service-name{color:#001c48;font-size:13px;font-weight:600}.hl-sailing-vessel{color:#666;font-size:12px}.hl-sailing-tags{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.hl-tag{letter-spacing:.3px;text-transform:uppercase;border-radius:10px;align-items:center;gap:4px;padding:3px 8px;font-size:10px;font-weight:700;display:inline-flex}.hl-tag-green{color:#2e7d32;background:#e8f5e9}.hl-tag-orange{color:#e65100;background:#fff3e0}.hl-tag-blue{color:#1565c0;background:#e3f2fd}.hl-tag-red{color:#c62828;background:#ffebee}.hl-tag-gray{color:#555;background:#f0f0ee}.hl-timeline{padding:18px 0 6px;position:relative}.hl-timeline-track{align-items:center;display:grid;position:relative}.hl-timeline-line{z-index:0;background:#ec7700;height:2px;position:absolute;top:50%;left:8px;right:8px;transform:translateY(-50%)}.hl-timeline-dots{z-index:1;justify-content:space-between;display:flex;position:relative}.hl-timeline-dot-wrap{flex-direction:column;flex:none;align-items:center;gap:2px;display:flex;position:relative}.hl-timeline-dot-wrap.middle{flex:1;align-items:center}.hl-timeline-dot{background:#ec7700;border:3px solid #fff;border-radius:50%;width:12px;height:12px;box-shadow:0 0 0 1.5px #ec7700}.hl-timeline-dot.transshipment{width:10px;height:10px;box-shadow:none;background:#fff;border:2px solid #ec7700}.hl-timeline-port-above{white-space:nowrap;color:#001c48;text-transform:uppercase;letter-spacing:.3px;font-size:11px;font-weight:700;position:absolute;bottom:22px}.hl-timeline-dot-wrap:first-child .hl-timeline-port-above{left:0}.hl-timeline-dot-wrap:last-child .hl-timeline-port-above{right:0}.hl-timeline-port-below{white-space:nowrap;color:#555;text-align:center;font-size:10px;line-height:1.3;position:absolute;top:22px}.hl-timeline-dot-wrap:first-child .hl-timeline-port-below{text-align:left;left:0}.hl-timeline-dot-wrap:last-child .hl-timeline-port-below{text-align:right;right:0}.hl-timeline-transit{color:#ec7700;text-transform:uppercase;letter-spacing:.3px;background:#fff;border:1px solid #ec7700;border-radius:10px;padding:2px 8px;font-size:10px;font-weight:700}.hl-timeline-meta{color:#888;justify-content:space-between;gap:12px;padding-top:28px;font-size:10px;display:flex}.hl-cutoffs{color:#555;border-top:1px dashed #e0e0e0;flex-wrap:wrap;gap:14px;padding-top:10px;font-size:11px;display:flex}.hl-cutoff-item{flex-direction:column;display:flex}.hl-cutoff-label{color:#999;text-transform:uppercase;letter-spacing:.4px;font-size:9px;font-weight:700}.hl-cutoff-value{color:#1f1f1f;font-size:11px;font-weight:600}.hl-cutoff-value.warning{color:#c62828}.hl-rate-block{border-left:1px solid #e3e3e0;flex-direction:column;gap:10px;padding-left:20px;display:flex}.hl-rate-pills{grid-template-columns:1fr 1fr;gap:8px;display:grid}.hl-rate-pill{cursor:pointer;background:#fff;border:2px solid #e3e3e0;border-radius:4px;flex-direction:column;gap:4px;padding:10px 10px 12px;transition:all .12s;display:flex;position:relative}.hl-rate-pill:hover{border-color:#ec7700}.hl-rate-pill.selected{background:#fff7ec;border-color:#ec7700}.hl-rate-pill.spot{background:linear-gradient(#fff 0%,#fff7ec 100%)}.hl-rate-pill.spot.selected{background:#fff0d6}.hl-rate-pill-label{text-transform:uppercase;letter-spacing:.5px;color:#001c48;align-items:center;gap:4px;font-size:10px;font-weight:700;display:flex}.hl-rate-pill.spot .hl-rate-pill-label{color:#ec7700}.hl-rate-pill-price{color:#001c48;font-size:18px;font-weight:700;line-height:1.1}.hl-rate-pill.spot .hl-rate-pill-price{color:#ec7700}.hl-rate-pill-sub{color:#666;font-size:10px}.hl-rate-pill-features{color:#2e7d32;flex-direction:column;gap:2px;margin-top:2px;font-size:10px;display:flex}.hl-rate-pill-features span:before{content:"✓ ";color:#2e7d32;font-weight:700}.hl-rate-pill-validity{color:#888;border-top:1px dashed #e0e0e0;margin-top:2px;padding-top:4px;font-size:10px}.hl-rate-pill-radio{background:#fff;border:2px solid #ccc;border-radius:50%;width:14px;height:14px;position:absolute;top:8px;right:8px}.hl-rate-pill.selected .hl-rate-pill-radio{background:#ec7700;border-color:#ec7700;box-shadow:inset 0 0 0 3px #fff}.hl-sailing-actions{flex-wrap:wrap;gap:6px;display:flex}.hl-sailing-actions .hl-btn{flex:1;min-width:0;padding:8px 10px;font-size:11px}.hl-sailing-actions .hl-btn-primary{flex:1.4}.hl-compare-drawer{color:#fff;z-index:100;background:#001c48;align-items:center;gap:16px;padding:12px 24px;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 20px #0003}.hl-compare-drawer-label{text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:700}.hl-compare-drawer-items{flex:1;gap:8px;display:flex}.hl-compare-drawer-item{background:#ffffff14;border:1px solid #ffffff26;border-radius:3px;align-items:center;gap:8px;padding:6px 10px;font-size:11px;display:flex}.hl-compare-drawer-item-vessel{font-weight:600}.hl-compare-drawer-item-remove{color:#ffffffb3;cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:14px;line-height:1}.hl-compare-drawer-item-remove:hover{color:#fff}.hl-compare-drawer-slot{color:#ffffff80;background:#ffffff0a;border:1px dashed #fff3;border-radius:3px;align-items:center;padding:6px 12px;font-size:11px;display:flex}.hl-dialog-overlay{z-index:1000;background:#001c4899;justify-content:center;align-items:flex-start;padding:40px 20px;display:flex;position:fixed;inset:0;overflow-y:auto}.hl-dialog{background:#fff;border-radius:4px;flex-direction:column;width:100%;max-width:960px;max-height:calc(100vh - 80px);display:flex;box-shadow:0 20px 60px #0000004d}.hl-dialog-header{color:#fff;background:#001c48;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.hl-dialog-title{font-size:18px;font-weight:700}.hl-dialog-subtitle{color:#ffffffb3;margin-top:2px;font-size:12px}.hl-dialog-close{color:#fff;cursor:pointer;background:0 0;border:none;padding:4px 10px;font-size:20px;line-height:1}.hl-dialog-close:hover{background:#ffffff26}.hl-dialog-body{flex:1;padding:24px;overflow-y:auto}.hl-dialog-footer{background:#f8f8f5;border-top:1px solid #e3e3e0;justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.hl-dialog-tabs{border-bottom:2px solid #e3e3e0;margin-bottom:20px;display:flex}.hl-dialog-tab{color:#666;cursor:pointer;text-transform:uppercase;letter-spacing:.4px;border-bottom:3px solid #0000;margin-bottom:-2px;padding:10px 20px;font-size:13px;font-weight:700}.hl-dialog-tab.active{color:#ec7700;border-bottom-color:#ec7700}.hl-breakdown-section{margin-bottom:16px}.hl-breakdown-section-title{color:#001c48;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #e3e3e0;margin-bottom:6px;padding-bottom:6px;font-size:11px;font-weight:700}.hl-breakdown-line{color:#333;justify-content:space-between;padding:4px 0;font-size:12px;display:flex}.hl-breakdown-total{color:#001c48;border-top:2px solid #001c48;margin-top:10px;padding-top:10px;font-size:14px;font-weight:700}.hl-page-footer{color:#fff9;text-align:center;background:#001c48;margin-top:40px;padding:20px 32px;font-size:11px}.hl-empty{text-align:center;color:#888;background:#fff;border:1px dashed #d0d0cc;border-radius:4px;padding:40px 24px}.hl-empty-title{color:#001c48;margin-bottom:4px;font-size:15px;font-weight:600}