/* 簡約款・海洋藍調：深淺藍漸層、每個區塊之間有波浪線、照片橫向滑動。 */
.s-ocean { --bg: #f2f8fc; --bg2: #e1eff8; --fg: #0d2a3f; --muted: #4d6b80; --line: #c6dceb; --accent: #0b7fbf; --on-accent: #fff; --card: #fff;
  --radius: 16px; --radius-btn: 999px; --shadow: 0 10px 28px rgba(11, 64, 110, .12); --h1: clamp(2.4rem, 7vw, 4.4rem); }
.s-ocean .top { background: rgba(242, 248, 252, .9); }
.s-ocean .hero-cover .hero-img::after { background: linear-gradient(180deg, rgba(4, 40, 70, .1), rgba(4, 40, 70, .78)); }
.s-ocean .hero-cover { position: relative; }
.s-ocean .hero-cover::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 40px; z-index: 2;
  background: radial-gradient(40px 22px at 40px 0, transparent 98%, var(--bg) 100%) 0 18px / 80px 22px repeat-x; }
.s-ocean .sec { position: relative; }
.s-ocean .sec:nth-of-type(even) { background: linear-gradient(180deg, var(--bg2), #d2e7f4); }
.s-ocean .sec + .sec::before { content: ""; position: absolute; top: -12px; left: 0; right: 0; height: 24px;
  background: radial-gradient(30px 14px at 30px 12px, var(--accent) 1.5px, transparent 2.5px) 0 0 / 60px 24px repeat-x; opacity: .35; }
.s-ocean .sec-h span { background: linear-gradient(90deg, #0b7fbf, #36b5d8); -webkit-background-clip: text; background-clip: text; color: transparent; }
.s-ocean .card { border: 0; }
.s-ocean .card .price { color: #0b7fbf; }
.s-ocean .btn { background: linear-gradient(90deg, #0b7fbf, #36b5d8); border: 0; }
.s-ocean .btn-2 { background: transparent; color: #fff; border: 2px solid #fff; }
.s-ocean .sec .btn-2 { color: var(--accent); border-color: var(--accent); }
.s-ocean .day i { background: #fff; border-radius: 999px; }
.s-ocean .foot { background: #0d2a3f; color: #b8d4e6; border: 0; }
.s-ocean .foot-name { color: #fff; }
