  .rpf-schedule,  .rpf-schedule * { box-sizing: border-box; }  .rpf-schedule {    width: 100%;    max-width: var(--container, 1280px);    min-width: 0;    margin: 0 auto;    padding: 30px 16px;    color: var(--text-main, #0f172a);    font-family: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;    line-height: 1.5;  }  .rpf-schedule__title {    margin: 0 0 24px;    padding-left: 12px;    border-left: 5px solid var(--accent, #f59e0b);    color: var(--primary, #0c5c9c);    font-size: clamp(22px, 3vw, 26px);    font-weight: 700;    line-height: 1.3;    overflow-wrap: break-word;  }  .rpf-schedule__cards { display: grid; grid-template-columns: minmax(0, 1fr); gap: 26px; }  .rpf-card { min-width: 0; border: 1px solid var(--border, #e2e8f0); border-radius: var(--radius, 12px); background: var(--bg-card, #fff); box-shadow: 0 4px 18px rgba(15, 23, 42, .04); }  .rpf-card__head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding: 20px 22px; border-bottom: 1px solid var(--border, #e2e8f0); border-radius: var(--radius, 12px) var(--radius, 12px) 0 0; background: linear-gradient(135deg, #fff, #edf5fb); }  .rpf-card__route { min-width: 0; }  .rpf-card__title { margin: 0 0 5px; color: var(--primary-dark, #084c82); font-size: 21px; font-weight: 700; line-height: 1.35; }  .rpf-card__piers { margin: 0; color: #475569; font-size: 14px; overflow-wrap: break-word; }  .rpf-card__badge { flex: 0 0 auto; padding: 6px 11px; border: 1px solid #c7dff0; border-radius: 999px; background: #eaf4fc; color: #084c82; font-size: 12px; font-weight: 700; line-height: 1.4; }  .rpf-card__hint { display: none; margin: 0; padding: 9px 16px; border-bottom: 1px solid var(--border, #e2e8f0); background: #f8fafc; color: #475569; font-size: 12px; }  .rpf-scroll { position: relative; width: 100%; max-width: 100%; min-width: 0; overflow-x: auto; overscroll-behavior-x: contain; -webkit-overflow-scrolling: touch; border-radius: 0 0 var(--radius, 12px) var(--radius, 12px); }  .rpf-scroll:focus-visible { outline: 3px solid var(--primary, #0c5c9c); outline-offset: -3px; }  .rpf-table { width: 100%; min-width: 680px; margin: 0; border-collapse: separate; border-spacing: 0; text-align: left; font-size: 15px; font-variant-numeric: tabular-nums; }  .rpf-table caption { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); clip-path: inset(50%); white-space: nowrap; }  .rpf-table th, .rpf-table td { padding: 15px 18px; border: 0; border-bottom: 1px solid var(--border, #e2e8f0); vertical-align: middle; white-space: nowrap; }  .rpf-table thead th { background: #f1f5f9; color: #334155; font-size: 13px; font-weight: 700; }  .rpf-table tbody th { color: var(--primary-dark, #084c82); font-size: 16px; font-weight: 750; }  .rpf-table tbody td { color: #475569; }  .rpf-table tbody tr > * { background: #fff; }  .rpf-table tbody tr:nth-child(even) > * { background: #f8fafc; }  .rpf-table tbody tr:last-child > * { border-bottom: 0; }  .rpf-table tr > :first-child { position: sticky; left: 0; z-index: 1; box-shadow: 3px 0 6px -4px rgba(15, 23, 42, .22); }  .rpf-table thead tr > :first-child { z-index: 2; }  .rpf-table .rpf-fare { color: #0f172a; font-weight: 700; }  .rpf-table .rpf-class { font-size: 14px; }  @media (hover: hover) {    .rpf-table tbody tr:hover > * { background: #edf5fb; }  }  @media (max-width: 640px) {    .rpf-schedule { padding: 26px 16px; }    .rpf-schedule__cards { gap: 22px; }    .rpf-card__head { flex-direction: column; gap: 12px; padding: 18px 16px; }    .rpf-card__title { font-size: 20px; }    .rpf-card__hint { display: block; }    .rpf-table th, .rpf-table td { padding: 14px 16px; }  }                      .rps-speedboat,  .rps-speedboat * { box-sizing: border-box; }  .rps-speedboat {    width: 100%;    max-width: var(--container, 1280px);    min-width: 0;    margin: 0 auto;    padding: 30px 16px;    color: #183b35;    font-family: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;    line-height: 1.5;  }  .rps-speedboat__title {    margin: 0 0 24px;    padding-left: 12px;    border-left: 5px solid var(--accent, #f59e0b);    color: #115e59;    font-size: clamp(22px, 3vw, 26px);    font-weight: 700;    line-height: 1.3;    overflow-wrap: break-word;  }  .rps-speedboat__cards { display: grid; grid-template-columns: minmax(0, 1fr); gap: 26px; }  .rps-card { min-width: 0; border: 1px solid #c9ddd6; border-radius: var(--radius, 12px); background: #fff; box-shadow: 0 4px 18px rgba(17, 94, 89, .06); }  .rps-card__head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding: 20px 22px; border-bottom: 2px solid #d8b978; border-radius: var(--radius, 12px) var(--radius, 12px) 0 0; background: linear-gradient(120deg, #0b3d3a 0%, #115e59 52%, #0f766e 100%); }  .rps-card__route { min-width: 0; }  .rps-card__title { margin: 0 0 5px; color: #fff; font-size: 21px; font-weight: 700; line-height: 1.35; }  .rps-card__piers { margin: 0; color: #e2f4ed; font-size: 14px; overflow-wrap: break-word; }  .rps-card__badge { flex: 0 0 auto; padding: 6px 11px; border: 1px solid #e6cf9e; border-radius: 999px; background: #0b3d3a; color: #fff0c9; font-size: 12px; font-weight: 700; line-height: 1.4; }  .rps-card__hint { display: none; margin: 0; padding: 9px 16px; border-bottom: 1px solid #dcebe5; background: #f0f8f4; color: #335b50; font-size: 12px; }  .rps-scroll { position: relative; width: 100%; max-width: 100%; min-width: 0; overflow-x: auto; overscroll-behavior-x: contain; -webkit-overflow-scrolling: touch; border-radius: 0 0 var(--radius, 12px) var(--radius, 12px); }  .rps-scroll:focus-visible { outline: 3px solid #0f766e; outline-offset: -3px; }  .rps-table { width: 100%; min-width: 680px; margin: 0; border-collapse: separate; border-spacing: 0; text-align: left; font-size: 15px; font-variant-numeric: tabular-nums; }  .rps-table caption { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); clip-path: inset(50%); white-space: nowrap; }  .rps-table th, .rps-table td { padding: 15px 18px; border: 0; border-bottom: 1px solid #dcebe5; vertical-align: middle; white-space: nowrap; }  .rps-table thead th { background: #eaf5ef; color: #174e43; font-size: 13px; font-weight: 700; }  .rps-table tbody th { color: #115e59; font-size: 16px; font-weight: 750; }  .rps-table tbody td { color: #405950; }  .rps-table tbody tr > * { background: #fff; }  .rps-table tbody tr:nth-child(even) > * { background: #f5faf7; }  .rps-table tbody tr:last-child > * { border-bottom: 0; }  .rps-table tr > :first-child { position: sticky; left: 0; z-index: 1; box-shadow: 3px 0 6px -4px rgba(11, 61, 58, .25); }  .rps-table thead tr > :first-child { z-index: 2; }  .rps-table .rps-fare { color: #115e59; font-weight: 700; }  .rps-table .rps-class { font-size: 14px; }  @supports (content-visibility: auto) {    .rps-card { content-visibility: auto; contain-intrinsic-size: auto 1000px; }  }  @media (hover: hover) {    .rps-table tbody tr:hover > * { background: #e9f6f0; }  }  @media (max-width: 640px) {    .rps-speedboat { padding: 26px 16px; }    .rps-speedboat__cards { gap: 22px; }    .rps-card__head { flex-direction: column; gap: 12px; padding: 18px 16px; }    .rps-card__title { font-size: 20px; }    .rps-card__hint { display: block; }    .rps-table th, .rps-table td { padding: 14px 16px; }    @supports (content-visibility: auto) {      .rps-card { contain-intrinsic-size: auto 1060px; }    }  }                      .sch-item.sch-action.rp-schedule-cta-wrap {  box-sizing: border-box;  display: flex;  align-items: center;  justify-content: center;  width: 100%;  max-width: 100%;  min-width: 0;  min-height: 58px;  padding: 4px;  content-visibility: auto;  contain-intrinsic-size: auto 50px;}.btn-book.rp-schedule-cta {  box-sizing: border-box;  position: relative;  isolation: isolate;  display: inline-flex !important;  flex: 0 1 260px;  align-items: center;  justify-content: center;  gap: 10px;  width: 100%;  max-width: 260px;  min-width: 0;  min-height: 50px;  margin: 0;  padding: 11px 14px;  border: 1px solid #B9944B !important;  border-radius: 12px !important;  background-color: #0B3B75 !important;  background-image: linear-gradient(135deg,#174F85 0%,#0B3B75 48%,#08284F 100%) !important;  color: #FFF4DE !important;  font-family: system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;  font-size: 14px !important;  font-weight: 700 !important;  line-height: 1.35;  letter-spacing: .1px;  text-align: center;  text-decoration: none;  white-space: normal;  overflow-wrap: anywhere;  box-shadow: 0 4px 12px rgba(8,40,79,.16),inset 0 1px 0 rgba(255,235,183,.12) !important;  outline: revert !important;  outline-offset: 3px;  overflow: hidden;  cursor: pointer;  touch-action: manipulation;  -webkit-tap-highlight-color: transparent;  transition: box-shadow .2s ease;}.rp-schedule-cta .rp-schedule-cta__orbit {  position: absolute;  inset: 0;  width: 100%;  height: 100%;  display: block;  overflow: visible;  z-index: 0;  pointer-events: none;}.rp-schedule-cta__orbit rect {  fill: none;  stroke: #FFD044;  stroke-width: 2;  stroke-linecap: round;  stroke-dasharray: 16 84;  stroke-dashoffset: 0;  animation: rp-schedule-cta-orbit 4.8s linear infinite;  animation-play-state: paused;}.rp-schedule-cta--active .rp-schedule-cta__orbit rect {  animation-play-state: running;}.rp-schedule-cta .rp-schedule-cta__label {  position: relative;  z-index: 1;  flex: 1 1 auto;  min-width: 0;  max-width: 100%;  overflow-wrap: anywhere;  pointer-events: none;}.rp-schedule-cta .rp-schedule-cta__arrow {  box-sizing: border-box;  position: relative;  z-index: 1;  display: inline-flex;  align-items: center;  justify-content: center;  flex: 0 0 26px;  width: 26px;  height: 26px;  border: 1px solid rgba(255,226,151,.7);  border-radius: 8px;  background: linear-gradient(135deg,#FFF0BA 0%,#DDB65B 58%,#B98325 100%);  color: #182C44;  font-size: 17px;  font-weight: 700;  line-height: 1;  box-shadow: inset 0 1px 0 rgba(255,255,255,.45);  pointer-events: none;  transition: transform .2s ease;}@keyframes rp-schedule-cta-orbit {  to { stroke-dashoffset: -100; }}@media (hover:hover) and (pointer:fine) {  .btn-book.rp-schedule-cta:hover {    background-image: linear-gradient(135deg,#1B598F 0%,#10467E 48%,#0A315C 100%) !important;    box-shadow: 0 6px 16px rgba(8,40,79,.22),inset 0 1px 0 rgba(255,235,183,.14) !important;  }  .rp-schedule-cta:hover .rp-schedule-cta__arrow { transform: translateX(2px); }}.btn-book.rp-schedule-cta:focus-visible {  outline: 3px solid #B98325 !important;  outline-offset: -4px;}.btn-book.rp-schedule-cta:active {  background-image: linear-gradient(135deg,#103A65,#072343) !important;  box-shadow: 0 2px 6px rgba(8,40,79,.16),inset 0 1px 3px rgba(0,0,0,.18) !important;}@media (max-width:640px) {  .btn-book.rp-schedule-cta {    flex-basis: 100%;    max-width: 100%;    gap: 8px;    padding: 11px 12px;  }}@media (max-width:360px) {  .btn-book.rp-schedule-cta { gap: 6px; padding: 11px 10px; }  .rp-schedule-cta .rp-schedule-cta__arrow {    flex-basis: 24px;    width: 24px;    height: 24px;  }}@media (prefers-reduced-motion:reduce) {  .rp-schedule-cta .rp-schedule-cta__orbit { display: none !important; }  .rp-schedule-cta__orbit rect { animation: none !important; }  .rp-schedule-cta,.rp-schedule-cta .rp-schedule-cta__arrow { transition: none !important; }  .rp-schedule-cta:hover .rp-schedule-cta__arrow { transform: none !important; }}.sch-item.sch-action.rp-schedule-cta-wrap {  flex-direction: row;  min-height: 52px;}.btn-book.rp-schedule-cta {  flex: 0 1 auto;  width: 640px;  max-width: 100%;  min-width: 0;  height: auto;  min-height: 44px;  padding: 8px 14px;}