/* Cruise calendar — Activities Bonaire. Scoped to .cc so it cannot collide with site CSS. */
.cc{--cc-ground:#FCFBF8;--cc-surface:#FFFFFF;--cc-ink:#06222A;--cc-text:#16302F;--cc-muted:#5C7375;--cc-line:#E7E2D8;
--cc-teal:#0E5563;--cc-ocean:#0E7C86;--cc-head:#0E5563;--cc-on-head:#FFFFFF;--cc-aqua-soft:#E2F4F5;--cc-gold:#E9C46A;--cc-gold-deep:#D9A94E;--cc-on-gold:#06222A;
--cc-event:#FBF0D2;--cc-event-ink:#5A4410;--cc-warn:#9A5B00;--cc-sand:#F8F6F1;
--cc-display:"Pacifico",cursive;--cc-sans:"Nourd","Outfit",system-ui,-apple-system,sans-serif;--cc-r:18px;}

.cc{color:var(--cc-text);font-family:var(--cc-sans);font-size:16px;line-height:1.55;max-width:1200px;margin-inline:auto;display:flex;flex-direction:column;gap:24px}
.cc *{box-sizing:border-box}
.cc .cc-h{font-family:var(--cc-sans);font-weight:700;letter-spacing:-.01em;color:var(--cc-ink);margin:0;line-height:1.15;text-wrap:balance}
.cc .cc-title{font-family:var(--cc-display);font-weight:400;letter-spacing:0;line-height:1.28;padding-bottom:.06em;font-size:clamp(1.7rem,3.1vw,2.45rem);margin-top:.2em}
.cc .cc-sub{font-size:22px}
.cc .cc-eyebrow{font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;color:var(--cc-ocean);font-weight:700}
.cc .cc-lead{color:var(--cc-muted);max-width:62ch;margin:10px 0 0}
.cc .cc-num{font-variant-numeric:tabular-nums}
.cc .cc-next{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));border:1px solid var(--cc-line);border-radius:var(--cc-r);background:var(--cc-surface);overflow:hidden}
.cc .cc-next > div{padding:18px 20px;border-right:1px solid var(--cc-line);border-bottom:1px solid var(--cc-line);margin:0 -1px -1px 0}
.cc .cc-k{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--cc-muted);font-weight:700}
.cc .cc-v{font-family:var(--cc-sans);font-size:23px;font-weight:800;letter-spacing:-.02em;color:var(--cc-ink);margin-top:2px;line-height:1.2}
.cc .cc-s{color:var(--cc-muted);font-size:14px}
.cc .cc-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}
.cc .cc-monthnav{display:flex;align-items:center;gap:8px}
.cc .cc-monthnav .cc-sub{min-width:9.5em;text-align:center}
.cc .cc-btn,.cc .cc-select{font:inherit;font-weight:600;font-size:15px;color:var(--cc-ink);background:var(--cc-surface);border:1px solid var(--cc-line);border-radius:999px;padding:9px 16px;cursor:pointer}
.cc .cc-select{padding-right:12px}
.cc .cc-btn:hover{border-color:var(--cc-ocean)}
.cc .cc-btn:focus-visible,.cc .cc-select:focus-visible,.cc .cc-cta:focus-visible,.cc .cc-day:focus-visible{outline:2px solid var(--cc-ocean);outline-offset:2px}
.cc .cc-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.cc .cc-filters label{font-size:14px;color:var(--cc-muted)}
.cc .cc-grid{display:grid;grid-template-columns:repeat(7,1fr);border:1px solid var(--cc-line);border-radius:var(--cc-r);overflow:hidden;background:var(--cc-line);gap:1px}
.cc .cc-dow{background:var(--cc-head);color:var(--cc-on-head);font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;padding:8px 10px}
.cc .cc-day{background:var(--cc-surface);min-height:108px;padding:8px 7px 9px;display:flex;flex-direction:column;gap:4px;text-align:left;border:0;border-radius:0;cursor:pointer;color:inherit;font:inherit;margin:0}
.cc .cc-day.cc-out{background:var(--cc-sand);cursor:default}
.cc .cc-day.cc-sel{box-shadow:inset 0 0 0 2px var(--cc-ocean)}
.cc .cc-dn{font-size:13px;font-weight:700;color:var(--cc-muted)}
.cc .cc-day.cc-today .cc-dn{color:var(--cc-on-gold);background:var(--cc-gold);border-radius:999px;padding:0 8px;align-self:flex-start}
.cc .cc-chip{font-size:12px;line-height:1.3;padding:4px 7px;border-radius:8px;background:var(--cc-aqua-soft);color:var(--cc-ink);overflow-wrap:anywhere}
.cc .cc-chip.cc-ev{background:var(--cc-event);color:var(--cc-event-ink)}
.cc .cc-chip b{font-weight:700}
.cc .cc-dots{display:none;gap:3px;flex-wrap:wrap}
.cc .cc-dot{width:7px;height:7px;border-radius:50%;background:var(--cc-ocean)}
.cc .cc-dot.cc-ev{background:var(--cc-gold-deep)}
.cc .cc-detail{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
.cc .cc-calls{display:flex;flex-direction:column;border:1px solid var(--cc-line);border-radius:var(--cc-r);background:var(--cc-surface);overflow:hidden}
.cc .cc-call{display:grid;grid-template-columns:7.5em minmax(0,1fr) auto;gap:4px 16px;padding:15px 20px;border-bottom:1px solid var(--cc-line);align-items:center}
.cc .cc-call:last-child{border-bottom:0}
.cc .cc-date{font-weight:700;color:var(--cc-ink)}
.cc .cc-ship{font-family:var(--cc-sans);font-size:18px;font-weight:700;letter-spacing:-.01em;color:var(--cc-ink)}
.cc .cc-meta{color:var(--cc-muted);font-size:14px}
.cc .cc-times{text-align:right;white-space:nowrap}
.cc .cc-big{font-weight:700;color:var(--cc-ink)}
.cc .cc-flag{color:var(--cc-warn);font-size:12.5px;font-weight:700}
.cc .cc-call.cc-event{background:var(--cc-event)}
.cc .cc-call.cc-event .cc-date,.cc .cc-call.cc-event .cc-ship,.cc .cc-call.cc-event .cc-meta{color:var(--cc-event-ink)}
.cc .cc-cta{display:inline-block;background:var(--cc-gold);color:var(--cc-on-gold);text-decoration:none;font-weight:700;font-size:15px;padding:12px 22px;border-radius:999px}
.cc .cc-cta:hover{background:var(--cc-gold-deep)}
.cc .cc-ctarow{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;padding:20px 24px;background:var(--cc-head);color:var(--cc-on-head);border-radius:var(--cc-r)}
.cc .cc-ctarow p{margin:0;max-width:60ch}
.cc .cc-empty{padding:20px;color:var(--cc-muted)}
.cc .cc-foot{color:var(--cc-muted);font-size:13.5px;max-width:78ch;margin:0}
@media (max-width:720px){
  .cc .cc-day{min-height:56px;align-items:center;padding:6px 2px}
  .cc .cc-day .cc-chip{display:none}
  .cc .cc-dots{display:flex;justify-content:center}
  .cc .cc-dow{text-align:center;padding:7px 0;font-size:11px;letter-spacing:.06em}
  .cc .cc-call{grid-template-columns:minmax(0,1fr) auto}
  .cc .cc-date{grid-column:1/-1}
  .cc .cc-monthnav .cc-sub{min-width:0;font-size:20px}
}
