{"asOf":"2026-06-01","count":68,"marinas":[{"id":"HI-HR-ACI-DUBROVNIK","canonicalHarborId":"603e36ec-dbae-5568-823a-e802899385e6","slug":"aci-dubrovnik","name":"ACI Marina Dubrovnik","unlocode":"HRDBV","country":"Croatia","countryCode":"HR","region":"adriatic","cruisingGround":"South Dalmatia","locality":"Komolac, Rijeka Dubrovačka","coordinates":{"lat":42.6689,"lon":18.1275},"timezone":"Europe/Zagreb","summary":"Dubrovnik's main yacht marina sits up the Rijeka Dubrovačka inlet, not under the city walls. The old town is a transfer, cruise-ship days change the city, and the inlet is a wind corridor.","identity":{"operator":{"value":"ACI d.d.","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Lučka kapetanija Dubrovnik","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"17","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"RIVER","yachtFocus":"CRUISING","coordination":"ADVISED","maxLoaM":{"value":60,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":12,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":4.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.4,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"aci-dubrovnik-main","name":"Main basin","controllingDepthM":{"value":4.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"aci-dubrovnik-visitors","basinId":"aci-dubrovnik-main","name":"Visitor pontoons / quay","mooring":"STERN_TO_LAZY_LINE","berthCount":{"value":380,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":60,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <25 m","loaFromM":8,"loaToM":25,"count":{"value":355,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 25–60 m","loaFromM":25,"loaToM":60,"count":{"value":25,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"aci-dubrovnik-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"hr-charter","kind":"COMMERCIAL_CHARTER","summary":"Croatian charter licensing and sojourn tax are operational constraints, not paperwork trivia.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Seasonal watch; Dubrovnik is a designated entry port."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["32A","63A","125A","400A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":false},"fees":[{"referenceLoaM":30,"currency":"EUR","highSeasonDaily":{"value":180,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"EUR"},"notes":"High-season daily band — not a quote"},{"referenceLoaM":50,"currency":"EUR","highSeasonDaily":{"value":520,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"EUR"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"07:00–22:00 in season","nightWatch":true},"contacts":[{"id":"aci-dubrovnik-vhf","role":"HARBOURMASTER","channel":"VHF","value":"17","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"aci-dubrovnik-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"aci-dubrovnik-air","kind":"AIRPORT","name":"Dubrovnik (DBV)","transferMinutes":{"value":[20,40],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"DBV"}},{"id":"aci-dubrovnik-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[{"marinaId":"HI-ME-PORTO-MONTENEGRO","hours":{"value":4,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"h"}}],"congestion":{"peakLabel":"HIGH June–September","windows":[{"months":[6,7,8,9],"typicalOccupancy":{"value":0.92,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["charter turnaround","cruise-city visitors"]}],"forecastNote":"Cruise-ship days congest the city, not the inlet — still a crew-logistics fact."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["charter turnaround","cruise-city visitors"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Dubrovnik general hospital","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"ACI Marina Dubrovnik guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"ACI Marina Dubrovnik captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"ACI reservation system. Charter fleets consume a large share of standard berths."},"guestAmenities":["ACI club","Konavle hinterland","old town 20 min"],"captainNotes":["This is Komolac, not the old-port postcard.","Bora in the inlet can be violent; lazy lines are the default."],"conflicts":[]},{"id":"HI-NO-OSLO-AKER-BRYGGE","canonicalHarborId":"6015659d-693a-5b08-a554-d8358ca5977f","slug":"oslo-aker-brygge","name":"Aker Brygge / Oslo","unlocode":"NOOSL","country":"Norway","countryCode":"NO","region":"northern-europe","cruisingGround":"Oslofjord","locality":"Oslo","coordinates":{"lat":59.91,"lon":10.727},"timezone":"Europe/Oslo","summary":"Oslo's showcase waterfront. Guest berths are scarce, the fjord is the cruising ground, and winter is ice and darkness. Large yachts use the commercial harbour by arrangement.","identity":{"operator":{"value":"Oslo gjestehavn / harbour operators","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Port of Oslo","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"16","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"NATURAL","yachtFocus":"MIXED","coordination":"ADVISED","maxLoaM":{"value":40,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":8,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":4,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":3.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.4,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"oslo-aker-brygge-main","name":"Main basin","controllingDepthM":{"value":3.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"oslo-aker-brygge-visitors","basinId":"oslo-aker-brygge-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":80,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":40,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <22 m","loaFromM":8,"loaToM":22,"count":{"value":74,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 22–40 m","loaFromM":22,"loaToM":40,"count":{"value":6,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"oslo-aker-brygge-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Oslo is a capital port. Yacht desks are scheduled."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":false},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["16A","32A","63A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":false},"fees":[{"referenceLoaM":30,"currency":"EUR","highSeasonDaily":{"value":150,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"EUR"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"seasonal","nightWatch":true},"contacts":[{"id":"oslo-aker-brygge-vhf","role":"HARBOURMASTER","channel":"VHF","value":"16","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"oslo-aker-brygge-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"oslo-aker-brygge-air","kind":"AIRPORT","name":"Oslo Gardermoen (OSL)","transferMinutes":{"value":[40,70],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"OSL"}},{"id":"oslo-aker-brygge-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH July","windows":[{"months":[7],"typicalOccupancy":{"value":0.9,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["Oslofjord season","city events"]}],"forecastNote":"Do not plan a 60 m alongside from a tourist photograph of Aker Brygge."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["Oslofjord season","city events"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Oslo University Hospital","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Aker Brygge / Oslo guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Aker Brygge / Oslo captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Guest harbour vs commercial quay booking."},"guestAmenities":["Aker Brygge","city","ferries"],"captainNotes":["Commercial Oslo and the guest harbour are different desks.","The fjord weather is not the inner harbour weather."],"conflicts":[]},{"id":"HI-US-ALA-WAI-HONOLULU","canonicalHarborId":"af3efac9-bbf1-50f5-ae9c-88d06823a806","slug":"ala-wai-honolulu","name":"Ala Wai Harbor","unlocode":"USHNL","country":"United States","countryCode":"US","region":"north-america","cruisingGround":"Hawaiian Islands","locality":"Honolulu / Waikiki","coordinates":{"lat":21.2865,"lon":-157.841},"timezone":"Pacific/Honolulu","summary":"Hawaii's principal yacht harbor, wedged between Waikiki and the Ala Wai Canal. A state facility with wait-lists measured in years for residents and a small, precious transient inventory after a Pacific crossing.","identity":{"operator":{"value":"State of Hawaiʻi Division of Boating","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"State DLNR / USCG Honolulu","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"16/09","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BASIN","yachtFocus":"CRUISING","coordination":"ADVISED","maxLoaM":{"value":35,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":8,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":3,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":2.7,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.6,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"ala-wai-honolulu-main","name":"Main basin","controllingDepthM":{"value":2.7,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"ala-wai-honolulu-visitors","basinId":"ala-wai-honolulu-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":700,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":35,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <22 m","loaFromM":8,"loaToM":22,"count":{"value":692,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 22–35 m","loaFromM":22,"loaToM":35,"count":{"value":8,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"ala-wai-honolulu-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"ala-wai-honolulu-cane","kind":"HURRICANE_PROTOCOL","summary":"Hurricane / cyclone plan is first-class operational truth here. Haul-out priority and evacuation rules override ordinary reservations.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Honolulu is a major CBP port; yacht desks still sleep."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":false},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["120V","208V","240V","480V"],"amps":["16A","32A","63A"],"hz":["60Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":false},"fees":[{"referenceLoaM":30,"currency":"USD","highSeasonDaily":{"value":90,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"07:45–16:00 weekdays","nightWatch":true},"contacts":[{"id":"ala-wai-honolulu-vhf","role":"HARBOURMASTER","channel":"VHF","value":"16/09","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"ala-wai-honolulu-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"ala-wai-honolulu-air","kind":"AIRPORT","name":"Daniel K. Inouye (HNL)","transferMinutes":{"value":[15,30],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"HNL"}},{"id":"ala-wai-honolulu-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH Transpac landfall and winter south-swell periods","windows":[{"months":[6,7],"typicalOccupancy":{"value":0.95,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["resident wait-list","Pacific arrivals"]}],"forecastNote":"A 700-slip harbor with almost no true visitor product. Plan Ko Olina or a commercial alternative for larger yachts."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"VERY_HIGH","why":["resident wait-list","Pacific arrivals"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Queen's Medical Center","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Ala Wai Harbor guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Ala Wai Harbor captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"State transient vs resident wait-list. Different statutes."},"guestAmenities":["Waikiki","Ala Moana"],"captainNotes":["State harbor rules and liveaboard politics are part of the truth.","South swell makes the entrance exciting."],"conflicts":[]},{"id":"HI-BS-ALBANY-BAHAMAS","canonicalHarborId":"dc8466d6-f112-5a73-9216-79b59daf5e0d","slug":"albany-bahamas","name":"Albany Marina","country":"Bahamas","countryCode":"BS","region":"caribbean","cruisingGround":"Bahamas / New Providence","locality":"Southwestern New Providence","coordinates":{"lat":25,"lon":-77.532},"timezone":"America/Nassau","summary":"A private-club megayacht marina on the south shore of New Providence: golf, residences, and published berths for very large yachts. Atlantis / Hurricane Hole is a different Nassau.","identity":{"operator":{"value":"Albany","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Bahamas Customs / Port Department","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"16/10","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BASIN","yachtFocus":"MEGA","coordination":"COORDINATED","maxLoaM":{"value":120,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":20,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":5.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.9,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"albany-bahamas-main","name":"Main basin","controllingDepthM":{"value":5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"albany-bahamas-visitors","basinId":"albany-bahamas-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":70,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":120,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <30 m","loaFromM":8,"loaToM":30,"count":{"value":30,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 30–120 m","loaFromM":30,"loaToM":120,"count":{"value":40,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"albany-bahamas-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"albany-bahamas-cane","kind":"HURRICANE_PROTOCOL","summary":"Hurricane / cyclone plan is first-class operational truth here. Haul-out priority and evacuation rules override ordinary reservations.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Arrange. Nassau Harbour is the 24-hour commercial alternative."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel","MGO"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["120V","208V","240V","480V"],"amps":["32A","63A","125A","400A"],"hz":["60Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"ISPS-capable quay control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":true},"fees":[{"referenceLoaM":50,"currency":"USD","highSeasonDaily":{"value":900,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–18:00","nightWatch":true},"contacts":[{"id":"albany-bahamas-vhf","role":"HARBOURMASTER","channel":"VHF","value":"16/10","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"albany-bahamas-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"albany-bahamas-air","kind":"AIRPORT","name":"Lynden Pindling (NAS)","transferMinutes":{"value":[15,25],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"NAS"}},{"id":"albany-bahamas-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH December–April","windows":[{"months":[12,1,2,3,4],"typicalOccupancy":{"value":0.88,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["Bahamas winter circuit","club residents"]}],"forecastNote":"Private-club access rules can reject a physically compatible yacht."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["Bahamas winter circuit","club residents"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Doctors Hospital / PMH Nassau","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Albany Marina guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Albany Marina captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Club access + marina reservation. Two gates."},"guestAmenities":["golf","residences","beach club"],"captainNotes":["South-shore weather is not Nassau Harbour weather.","Cruising permit and last-port rules still apply."],"conflicts":[]},{"id":"HI-NL-AMSTERDAM-MARINA","canonicalHarborId":"53df5d8c-a713-5769-8927-83a951c8787d","slug":"amsterdam-marina","name":"Amsterdam Marina","unlocode":"NLAMS","country":"Netherlands","countryCode":"NL","region":"northern-europe","cruisingGround":"North Sea Canal / IJsselmeer approaches","locality":"Amsterdam-Noord","coordinates":{"lat":52.399,"lon":4.893},"timezone":"Europe/Amsterdam","summary":"A North Sea Canal marina facing the city. Bridges, locks, commercial traffic and a low-country air-draft culture. Sixhaven and the historic inner harbours are different Amsterdam products.","identity":{"operator":{"value":"Amsterdam Marina","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Port of Amsterdam / Rijkswaterstaat","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"22","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"CANAL","yachtFocus":"MIXED","coordination":"ADVISED","maxLoaM":{"value":60,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":10,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":3.6,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxAirDraftM":{"value":18,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"Fixed overhead constraint","unit":"m"}},"hydrography":{"controllingDepthM":{"value":3.4,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.3,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"amsterdam-marina-main","name":"Main basin","controllingDepthM":{"value":3.4,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"amsterdam-marina-visitors","basinId":"amsterdam-marina-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":80,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":60,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <24 m","loaFromM":8,"loaToM":24,"count":{"value":70,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 24–60 m","loaFromM":24,"loaToM":60,"count":{"value":10,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"amsterdam-marina-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"ams-air","kind":"AIR_DRAFT","summary":"Low-country bridges. Confirm the route, not just the destination marina.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Amsterdam is a major port; yacht desks are not 24h."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["32A","63A","125A","400A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":false},"fees":[{"referenceLoaM":30,"currency":"EUR","highSeasonDaily":{"value":140,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"EUR"},"notes":"High-season daily band — not a quote"},{"referenceLoaM":50,"currency":"EUR","highSeasonDaily":{"value":360,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"EUR"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"09:00–17:00","nightWatch":true},"contacts":[{"id":"amsterdam-marina-vhf","role":"HARBOURMASTER","channel":"VHF","value":"22","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"amsterdam-marina-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"amsterdam-marina-air","kind":"AIRPORT","name":"Schiphol (AMS)","transferMinutes":{"value":[25,50],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"AMS"}},{"id":"amsterdam-marina-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH SAIL Amsterdam years and summer","windows":[{"months":[7,8],"typicalOccupancy":{"value":0.85,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["city destination","IJsselmeer transit"]}],"forecastNote":"Air draft, not occupancy, is the usual rejector for sailing yachts bound into the city."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["city destination","IJsselmeer transit"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Amsterdam UMC","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Amsterdam Marina guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Amsterdam Marina captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Marina reservation ≠ canal bridge opening ≠ IJmuiden lock."},"guestAmenities":["NDSM / Noord","city ferry","Amsterdam centre"],"captainNotes":["Say which Amsterdam: Marina, Sixhaven, or the inner canals.","Locks and bridges are LOCK_BOOKING / BRIDGE_OPENING."],"conflicts":[]},{"id":"HI-US-BAHIA-MAR-FTL","canonicalHarborId":"701a76b4-e074-57f3-a49b-98f090f9d072","slug":"bahia-mar-ftl","name":"Bahia Mar Yachting Center","unlocode":"USFLL","country":"United States","countryCode":"US","region":"north-america","cruisingGround":"Florida / Bahamas jump-off","locality":"Fort Lauderdale","coordinates":{"lat":26.1176,"lon":-80.1079},"timezone":"America/New_York","summary":"The historic Fort Lauderdale show marina on the Intracoastal. FLIBS turns the docks into a city. Bridge, draft and ICW geometry matter more here than in any Mediterranean postcard harbour.","identity":{"operator":{"value":"Bahia Mar / Suntex","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"City of Fort Lauderdale / USCG","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"16/09","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"CANAL","yachtFocus":"SUPER","coordination":"COORDINATED","maxLoaM":{"value":80,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":12,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":3.6,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":3.2,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.8,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"siltation":"ICW controlling depths change after storms and shoaling."},"basins":[{"id":"bahia-mar-ftl-main","name":"Main basin","controllingDepthM":{"value":3.2,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"bahia-mar-ftl-visitors","basinId":"bahia-mar-ftl-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":250,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":80,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <25 m","loaFromM":8,"loaToM":25,"count":{"value":210,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 25–80 m","loaFromM":25,"loaToM":80,"count":{"value":40,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"bahia-mar-ftl-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"bahia-mar-ftl-cane","kind":"HURRICANE_PROTOCOL","summary":"Hurricane / cyclone plan is first-class operational truth here. Haul-out priority and evacuation rules override ordinary reservations.","sourceId":"HM","confidence":"VERIFIED"},{"id":"bahia-mar-ftl-bridge","kind":"BRIDGE","summary":"Air draft is constrained by a bridge at approximately 19 m. This is not a soft guideline.","sourceId":"HO","confidence":"VERIFIED"},{"id":"ftl-icw","kind":"BRIDGE","summary":"Intracoastal bridges and controlling depth are first-class constraints. A berth reservation is not a transit clearance.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"US CBP in Port Everglades; overtime is scheduled, not assumed."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["120V","208V","240V","480V"],"amps":["32A","63A","125A","400A"],"hz":["60Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":true},"fees":[{"referenceLoaM":30,"currency":"USD","highSeasonDaily":{"value":220,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"},{"referenceLoaM":50,"currency":"USD","highSeasonDaily":{"value":520,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–17:00","nightWatch":true},"contacts":[{"id":"bahia-mar-ftl-vhf","role":"HARBOURMASTER","channel":"VHF","value":"16/09","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"bahia-mar-ftl-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"bahia-mar-ftl-air","kind":"AIRPORT","name":"Fort Lauderdale–Hollywood (FLL)","transferMinutes":{"value":[12,25],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"FLL"}},{"id":"bahia-mar-ftl-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"VERY_HIGH during FLIBS; HIGH winter","windows":[{"months":[10,11,12,1,2,3],"typicalOccupancy":{"value":0.95,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["FLIBS","winter snowbird fleet","Bahamas staging"]}],"forecastNote":"Show week is a closed market. ICW draft can reject a yacht the reservation desk accepted."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"VERY_HIGH","why":["FLIBS","winter snowbird fleet","Bahamas staging"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Broward Health / Holy Cross","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Bahia Mar Yachting Center guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Bahia Mar Yachting Center captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY","LOCK_BOOKING","BRIDGE_OPENING"],"notes":"FLIBS allocation ≠ winter transient ≠ Port Everglades alongside."},"guestAmenities":["beach","Las Olas","show infrastructure"],"captainNotes":["17th Street and other bridges are part of the approach brief.","Port Everglades is the deep commercial/megayacht cousin."],"conflicts":[]},{"id":"HI-ES-CLUB-DE-MAR-PALMA","canonicalHarborId":"35de81a4-3282-5dcb-9643-e515a590f603","slug":"club-de-mar-palma","name":"Club de Mar Palma","unlocode":"ESPMI","country":"Spain","countryCode":"ES","region":"west-med","cruisingGround":"Balearics","locality":"Palma de Mallorca","coordinates":{"lat":39.5622,"lon":2.6304},"timezone":"Europe/Madrid","summary":"Palma's club marina on the west side of the commercial harbour, adjacent to the STP shipyard cluster. This is the Balearic refit and wintering capital, not a pretty-village stop.","identity":{"operator":{"value":"Club de Mar Mallorca","sourceId":"YC","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Autoridad Portuaria de Baleares","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"09","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BREAKWATER","yachtFocus":"SUPER","coordination":"COORDINATED","maxLoaM":{"value":120,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":20,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":7,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":6.5,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.3,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"club-de-mar-palma-club","name":"Club de Mar basin","controllingDepthM":{"value":6.5,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"club-de-mar-palma-main","basinId":"club-de-mar-palma-club","name":"Club pontoons & quay","mooring":"ALONGSIDE","berthCount":{"value":120,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":120,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"cdm-s","label":"<25 m","loaFromM":10,"loaToM":25,"count":{"value":60,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["32A","63A"]},{"id":"cdm-l","label":"25–120 m","loaFromM":25,"loaToM":120,"count":{"value":40,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["125A","400A"]}],"restrictions":[{"id":"palma-pos","kind":"POSIDONIA","summary":"Bay of Palma anchoring is tightly regulated; do not assume a fall-back anchorage.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Port of Palma is a 24-hour commercial port of entry."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel","MGO"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["32A","63A","125A","400A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Club + port security","sourceId":"YC","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["STP cluster","Palma yacht services"],"concierge":true},"yard":{"traveliftT":{"value":900,"sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"STP / neighbouring yards, not the club itself"},"refit":true,"dryDock":true,"notes":"Treat Palma as a refit ecosystem, not a single yard number."},"fees":[{"referenceLoaM":30,"currency":"EUR","highSeasonDaily":{"value":260,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"EUR"}},{"referenceLoaM":50,"currency":"EUR","highSeasonDaily":{"value":720,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"EUR"}}],"hours":{"office":"08:30–20:00 in season","nightWatch":true},"contacts":[{"id":"cdm-vhf","role":"HARBOURMASTER","channel":"VHF","value":"09","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"}],"shoreAccess":[{"id":"pmi","kind":"AIRPORT","name":"Palma de Mallorca (PMI)","transferMinutes":{"value":[15,30],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"PMI"}}],"connections":[{"marinaId":"HI-ES-PORT-ADRIANO","hours":{"value":1.2,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"h"}},{"marinaId":"HI-ES-MARINA-IBIZA","hours":{"value":8,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"h"}}],"congestion":{"peakLabel":"HIGH April–October; wintering fleet is the other peak","windows":[{"months":[6,7,8,9],"typicalOccupancy":{"value":0.92,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["charter base","Balearic season"]},{"months":[11,12,1,2,3],"typicalOccupancy":{"value":0.85,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["wintering / refit"]}],"forecastNote":"Winter occupancy is a refit fact, not a tourist fact."},"reliability":[{"id":"refit","label":"Refit ecosystem","band":"HIGH","why":["STP and multiple specialist yards within a taxi ride"],"method":"Infrastructure inventory","estimate":false}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Son Espases","medevac":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Club buildings are modern; commercial port roads are not charming."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Club de Mar Palma guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Club de Mar Palma captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"YC","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Club berths and STP yard berths are different allocation systems."},"guestAmenities":["club restaurant","Palma cathedral 20 min walk / short taxi","crew services"],"captainNotes":["Palma is the Balearic technical capital. Book yard slots independently of marina reservations."],"conflicts":[]},{"id":"HI-DK-COPENHAGEN-OCEAN-QUAY","canonicalHarborId":"2861646d-c23d-5c9c-87b5-926498edcc54","slug":"copenhagen-ocean-quay","name":"Copenhagen Ocean Quay","unlocode":"DKCPH","country":"Denmark","countryCode":"DK","region":"northern-europe","cruisingGround":"Øresund / Baltic approaches","locality":"Copenhagen","coordinates":{"lat":55.703,"lon":12.597},"timezone":"Europe/Copenhagen","summary":"Copenhagen's larger-yacht reception in a working harbour city. Langelinie, the canals and Ocean Quay are not interchangeable. Baltic ice is a winter fact further east; here the fact is wind, ferry wash and event weeks.","identity":{"operator":{"value":"Copenhagen Malmö Port / yacht operators","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"By & Havn / Danish Maritime Authority","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"12","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BREAKWATER","yachtFocus":"SUPER","coordination":"ADVISED","maxLoaM":{"value":140,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":22,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":7,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":6.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.4,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"copenhagen-ocean-quay-main","name":"Main basin","controllingDepthM":{"value":6.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"copenhagen-ocean-quay-visitors","basinId":"copenhagen-ocean-quay-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":20,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":140,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <40 m","loaFromM":8,"loaToM":40,"count":{"value":8,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 40–140 m","loaFromM":40,"loaToM":140,"count":{"value":12,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"copenhagen-ocean-quay-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"A capital-city commercial port. Yacht desk is scheduled."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel","MGO"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["32A","63A","125A","400A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":true},"fees":[{"referenceLoaM":50,"currency":"EUR","highSeasonDaily":{"value":700,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"EUR"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–16:00","nightWatch":true},"contacts":[{"id":"copenhagen-ocean-quay-vhf","role":"HARBOURMASTER","channel":"VHF","value":"12","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"copenhagen-ocean-quay-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"copenhagen-ocean-quay-air","kind":"AIRPORT","name":"Copenhagen (CPH)","transferMinutes":{"value":[20,40],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"CPH"}},{"id":"copenhagen-ocean-quay-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH July and harbour-event weeks","windows":[{"months":[7],"typicalOccupancy":{"value":0.8,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["Baltic season","city events"]}],"forecastNote":"Megayacht inventory is tiny. The city has many small marinas that will not take 50 m."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"MODERATE","why":["Baltic season","city events"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Rigshospitalet","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Copenhagen Ocean Quay guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Copenhagen Ocean Quay captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Commercial quay planning vs marina visitor list."},"guestAmenities":["Nordhavn","city","crew flights"],"captainNotes":["Do not confuse with Nyhavn.","Øresund current and ferry lanes belong on the chart table."],"conflicts":[]},{"id":"HI-GB-COWES-YACHT-HAVEN","canonicalHarborId":"df007adb-ab99-52fe-984c-5f396b3a8fcd","slug":"cowes-yacht-haven","name":"Cowes Yacht Haven","country":"United Kingdom","countryCode":"GB","region":"northern-europe","cruisingGround":"Solent","locality":"Cowes, Isle of Wight","coordinates":{"lat":50.7633,"lon":-1.297},"timezone":"Europe/London","summary":"The racing harbour. Cowes Week turns a competent marina into a closed city. Tides in the Medina, ferry wash and a short season of extreme berth pressure.","identity":{"operator":{"value":"Cowes Yacht Haven","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Cowes Harbour Commission","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"80","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"RIVER","yachtFocus":"RACING","coordination":"COORDINATED","maxLoaM":{"value":45,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":9,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":3,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":2.8,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":3.8,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"cowes-yacht-haven-main","name":"Main basin","controllingDepthM":{"value":2.8,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"cowes-yacht-haven-visitors","basinId":"cowes-yacht-haven-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":260,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":45,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <22 m","loaFromM":8,"loaToM":22,"count":{"value":248,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 22–45 m","loaFromM":22,"loaToM":45,"count":{"value":12,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"cowes-yacht-haven-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Seasonal. Southampton remains the robust commercial entry."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":false},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["16A","32A","63A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":false},"fees":[{"referenceLoaM":30,"currency":"GBP","highSeasonDaily":{"value":200,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"GBP"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–20:00 in season","nightWatch":true},"contacts":[{"id":"cowes-yacht-haven-vhf","role":"HARBOURMASTER","channel":"VHF","value":"80","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"cowes-yacht-haven-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"cowes-yacht-haven-air","kind":"AIRPORT","name":"Southampton (SOU)","transferMinutes":{"value":[40,80],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"SOU"}},{"id":"cowes-yacht-haven-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"EXTREME during Cowes Week","windows":[{"months":[8],"typicalOccupancy":{"value":1,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["Cowes Week","Solent racing calendar"]}],"forecastNote":"If the date is Cowes Week, ordinary visitor inventory does not exist."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"VERY_HIGH","why":["Cowes Week","Solent racing calendar"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"St Mary's Hospital, Newport IOW; mainland for major trauma","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Cowes Yacht Haven guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Cowes Yacht Haven captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Event allocation vs ordinary visitor list. Two products."},"guestAmenities":["Cowes High Street","yacht clubs","Medina"],"captainNotes":["Shepards and East Cowes are overflow, not synonyms.","Tide on the visitors' piles is a grounding conversation."],"conflicts":[]},{"id":"HI-TR-D-MARIN-GOCEK","canonicalHarborId":"46d01f34-35df-5dc1-925e-fd12e9d880aa","slug":"d-marin-gocek","name":"D-Marin Göcek","country":"Türkiye","countryCode":"TR","region":"east-med","cruisingGround":"Turkish Riviera / Fethiye gulf","locality":"Göcek","coordinates":{"lat":36.7542,"lon":28.9406},"timezone":"Europe/Istanbul","summary":"Göcek is a gulf of twelve islands and several marinas. D-Marin is the deep-service node: wintering, technical, and a launching pad into a no-discharge, no-anchor-everywhere geography.","identity":{"operator":{"value":"D-Marin","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Fethiye / Göcek port officials","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"73","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BREAKWATER","yachtFocus":"SUPER","coordination":"ADVISED","maxLoaM":{"value":80,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":14,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":6,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":5.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.3,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"d-marin-gocek-main","name":"Main basin","controllingDepthM":{"value":5.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"d-marin-gocek-visitors","basinId":"d-marin-gocek-main","name":"Visitor pontoons / quay","mooring":"STERN_TO_LAZY_LINE","berthCount":{"value":380,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":80,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <28 m","loaFromM":8,"loaToM":28,"count":{"value":355,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 28–80 m","loaFromM":28,"loaToM":80,"count":{"value":25,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"d-marin-gocek-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"d-marin-gocek-pos","kind":"POSIDONIA","summary":"Posidonia / seagrass anchoring restrictions apply in the approaches.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Seasonal watch."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["32A","63A","125A","400A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":true},"yard":{"traveliftT":{"value":250,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"refit":true,"hardstand":true},"fees":[{"referenceLoaM":30,"currency":"EUR","highSeasonDaily":{"value":190,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"EUR"},"notes":"High-season daily band — not a quote"},{"referenceLoaM":50,"currency":"EUR","highSeasonDaily":{"value":560,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"EUR"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–20:00","nightWatch":true},"contacts":[{"id":"d-marin-gocek-vhf","role":"HARBOURMASTER","channel":"VHF","value":"73","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"d-marin-gocek-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"d-marin-gocek-air","kind":"AIRPORT","name":"Dalaman (DLM)","transferMinutes":{"value":[25,45],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"DLM"}},{"id":"d-marin-gocek-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH May–October","windows":[{"months":[5,6,7,8,9,10],"typicalOccupancy":{"value":0.9,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["gulf charter","wintering contracts"]}],"forecastNote":"Göcek's occupancy includes the gulf — many yachts are 'here' while on a hook in a creek."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["gulf charter","wintering contracts"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Fethiye hospital","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"D-Marin Göcek guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"D-Marin Göcek captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Do not conflate Club Marina, D-Marin and municipal quay inventory."},"guestAmenities":["Göcek village","yard","twelve islands"],"captainNotes":["Skopea Limanı rules and waste barges are part of the cruise, not optional.","Several marinas share the village — confirm which booking you actually hold."],"conflicts":[]},{"id":"HI-HR-D-MARIN-MANDALINA","canonicalHarborId":"bf0ea85a-6402-5926-adec-505b591339a2","slug":"d-marin-mandalina","name":"D-Marin Mandalina","country":"Croatia","countryCode":"HR","region":"adriatic","cruisingGround":"Central Dalmatia","locality":"Šibenik","coordinates":{"lat":43.7162,"lon":15.9048},"timezone":"Europe/Zagreb","summary":"A Gold-Anchor Šibenik marina with a genuine megayacht quay and an inland-sea geography: Krka, Kornati, and a bridge-constrained approach conversation for the tallest rigs.","identity":{"operator":{"value":"D-Marin","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Lučka kapetanija Šibenik","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"17","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BREAKWATER","yachtFocus":"SUPER","coordination":"ADVISED","maxLoaM":{"value":140,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":22,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":8,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":7,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.4,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"d-marin-mandalina-main","name":"Main basin","controllingDepthM":{"value":7,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"d-marin-mandalina-visitors","basinId":"d-marin-mandalina-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":330,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":140,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <40 m","loaFromM":8,"loaToM":40,"count":{"value":314,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 40–140 m","loaFromM":40,"loaToM":140,"count":{"value":16,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"d-marin-mandalina-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Marina watch; Šibenik is an entry port."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel","MGO"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["32A","63A","125A","400A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":true},"fees":[{"referenceLoaM":30,"currency":"EUR","highSeasonDaily":{"value":200,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"EUR"},"notes":"High-season daily band — not a quote"},{"referenceLoaM":50,"currency":"EUR","highSeasonDaily":{"value":700,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"EUR"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–20:00","nightWatch":true},"contacts":[{"id":"d-marin-mandalina-vhf","role":"HARBOURMASTER","channel":"VHF","value":"17","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"d-marin-mandalina-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"d-marin-mandalina-air","kind":"AIRPORT","name":"Split (SPU)","transferMinutes":{"value":[50,80],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"SPU"}},{"id":"d-marin-mandalina-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH July–August","windows":[{"months":[7,8],"typicalOccupancy":{"value":0.88,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["Kornati season","megayacht Adriatic circuit"]}],"forecastNote":"Large-yacht quay count is small; the headline 140 m is not a visitor product for every week."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["Kornati season","megayacht Adriatic circuit"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Šibenik / Split hospitals","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"D-Marin Mandalina guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"D-Marin Mandalina captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"D-Marin reservation. Megayacht quay is a distinct inventory."},"guestAmenities":["Šibenik old town","Krka day boats","crew facilities"],"captainNotes":["Confirm air draft versus Šibenik bridge / approach geometry for sailing yachts.","Kornati national park rules are a separate layer."],"conflicts":[]},{"id":"HI-AU-D-ALBORA-RUSHCUTTERS","canonicalHarborId":"2ad10024-a98b-536c-ae14-3fb8f82162d8","slug":"d-albora-rushcutters","name":"d'Albora Rushcutters Bay","unlocode":"AUSYD","country":"Australia","countryCode":"AU","region":"oceania","cruisingGround":"Sydney Harbour","locality":"Rushcutters Bay, Sydney","coordinates":{"lat":-33.875,"lon":151.233},"timezone":"Australia/Sydney","summary":"A dense Sydney Harbour marina under the racing calendar of the Cruising Yacht Club of Australia. The harbour is the product; this is one named basin among many, with Hobart-start weeks as a separate regime.","identity":{"operator":{"value":"d'Albora Marinas","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Transport for NSW / Harbour Master","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"73","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"NATURAL","yachtFocus":"RACING","coordination":"ADVISED","maxLoaM":{"value":35,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":8,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":3.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":3.2,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":1.6,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"d-albora-rushcutters-main","name":"Main basin","controllingDepthM":{"value":3.2,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"d-albora-rushcutters-visitors","basinId":"d-albora-rushcutters-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":200,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":35,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <22 m","loaFromM":8,"loaToM":22,"count":{"value":192,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 22–35 m","loaFromM":22,"loaToM":35,"count":{"value":8,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"d-albora-rushcutters-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":false,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":false,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Sydney is a major port; yacht entry is usually via a designated marina or agents.","notes":"Not the primary Australian Border Force yacht desk."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":false},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["16A","32A","63A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":false},"fees":[{"referenceLoaM":30,"currency":"AUD","highSeasonDaily":{"value":180,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"AUD"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–17:00","nightWatch":true},"contacts":[{"id":"d-albora-rushcutters-vhf","role":"HARBOURMASTER","channel":"VHF","value":"73","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"d-albora-rushcutters-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"d-albora-rushcutters-air","kind":"AIRPORT","name":"Sydney (SYD)","transferMinutes":{"value":[20,45],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"SYD"}},{"id":"d-albora-rushcutters-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"VERY_HIGH before Sydney Hobart; HIGH summer","windows":[{"months":[12,1],"typicalOccupancy":{"value":0.95,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["CYCA calendar","harbour liveaboards"]}],"forecastNote":"Rolex Sydney Hobart week is a closed local market."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"VERY_HIGH","why":["CYCA calendar","harbour liveaboards"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"St Vincent's / city trauma centres","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"d'Albora Rushcutters Bay guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"d'Albora Rushcutters Bay captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"d'Albora reservation. CYCA event dock space is a different list."},"guestAmenities":["Potts Point","CYCA","city ferries"],"captainNotes":["The Spit and Rozelle are different Sydney products.","Harbour racing traffic is real."],"conflicts":[]},{"id":"HI-AE-DUBAI-HARBOUR","canonicalHarborId":"d4986bbf-be50-5a53-a529-588b5fb04557","slug":"dubai-harbour","name":"Dubai Harbour","unlocode":"AEDXB","country":"United Arab Emirates","countryCode":"AE","region":"middle-east","cruisingGround":"Arabian Gulf","locality":"Dubai","coordinates":{"lat":25.0922,"lon":55.1372},"timezone":"Asia/Dubai","summary":"Dubai's new purpose-built megayacht harbour below the Jumeirah coastline: a long breakwater, published 160 m capability, and a city that treats yachts as part of the hotel-and-event machine. Dubai Marina canal is a different, bridge-constrained product.","identity":{"operator":{"value":"Dubai Harbour / IGY-associated operations","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Dubai Maritime City Authority / Coast Guard","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"established":2020,"status":"OPERATIONAL","vhf":{"value":"16/72","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BREAKWATER","yachtFocus":"MEGA","coordination":"COORDINATED","maxLoaM":{"value":160,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":28,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":8,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":7,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":1.5,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"dubai-harbour-main","name":"Main basin","controllingDepthM":{"value":7,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"dubai-harbour-visitors","basinId":"dubai-harbour-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":1100,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":160,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <30 m","loaFromM":8,"loaToM":30,"count":{"value":1020,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 30–160 m","loaFromM":30,"loaToM":160,"count":{"value":80,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"dubai-harbour-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"dxb-marina-confusion","kind":"BRIDGE","summary":"Dubai Marina (the canal) is a different harbour with bridge/air-draft limits. This dossier is Dubai Harbour.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Dubai can clear yachts; hours and agents still exist."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel","MGO"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["32A","63A","125A","400A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"ISPS-capable quay control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":true},"fees":[{"referenceLoaM":30,"currency":"AED","highSeasonDaily":{"value":220,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"AED"},"notes":"High-season daily band — not a quote"},{"referenceLoaM":50,"currency":"AED","highSeasonDaily":{"value":700,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"AED"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–20:00","nightWatch":true},"contacts":[{"id":"dubai-harbour-vhf","role":"HARBOURMASTER","channel":"VHF","value":"16/72","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"dubai-harbour-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"dubai-harbour-air","kind":"AIRPORT","name":"Dubai (DXB)","transferMinutes":{"value":[25,50],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"DXB"}},{"id":"dubai-harbour-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH November–March; VERY_HIGH around Dubai events","windows":[{"months":[11,12,1,2,3],"typicalOccupancy":{"value":0.88,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["winter Gulf season","city events","home-ported fleet"]}],"forecastNote":"Do not confuse Dubai Harbour with Dubai Marina. The canal bridges will ruin a 40 m plan."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["winter Gulf season","city events","home-ported fleet"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Dubai hospital network (several within 20 min)","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Dubai Harbour guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Dubai Harbour captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY","LOCK_BOOKING","BRIDGE_OPENING"],"notes":"Harbour reservation. Canal lock/bridge products live on a different identity."},"guestAmenities":["harbour promenade","Jumeirah hotels","crew services"],"captainNotes":["Shamal and summer heat are operational facts.","Dubai Marina is lock/bridge geography. This harbour is not."],"conflicts":[]},{"id":"HI-AG-FALMOUTH-HARBOUR-ANTIGUA","canonicalHarborId":"8c52298d-10c9-5331-b209-ae7e9dfc9de0","slug":"falmouth-harbour-antigua","name":"Falmouth Harbour Marina","country":"Antigua and Barbuda","countryCode":"AG","region":"caribbean","cruisingGround":"Leeward Islands","locality":"Falmouth Harbour","coordinates":{"lat":17.0166,"lon":-61.771},"timezone":"America/Antigua","summary":"Antigua's modern megayacht marina, a few minutes' walk from Nelson's Dockyard. Deep, alongside, and the usual home for 50–80 m yachts in season.","identity":{"operator":{"value":"Falmouth Harbour Marina","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Antigua Port Authority","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"68","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"NATURAL","yachtFocus":"SUPER","coordination":"COORDINATED","maxLoaM":{"value":100,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":16,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":6,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":5.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.4,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"falmouth-harbour-antigua-main","name":"Main basin","controllingDepthM":{"value":5.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"falmouth-harbour-antigua-visitors","basinId":"falmouth-harbour-antigua-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":50,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":100,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <30 m","loaFromM":8,"loaToM":30,"count":{"value":20,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 30–100 m","loaFromM":30,"loaToM":100,"count":{"value":30,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"falmouth-harbour-antigua-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"falmouth-harbour-antigua-cane","kind":"HURRICANE_PROTOCOL","summary":"Hurricane / cyclone plan is first-class operational truth here. Haul-out priority and evacuation rules override ordinary reservations.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Coordinate with English Harbour officials."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel","MGO"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["120V","208V","240V","480V"],"amps":["32A","63A","125A","400A"],"hz":["60Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":true},"fees":[{"referenceLoaM":30,"currency":"USD","highSeasonDaily":{"value":240,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"},{"referenceLoaM":50,"currency":"USD","highSeasonDaily":{"value":620,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–17:00 in season","nightWatch":true},"contacts":[{"id":"falmouth-harbour-antigua-vhf","role":"HARBOURMASTER","channel":"VHF","value":"68","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"falmouth-harbour-antigua-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"falmouth-harbour-antigua-air","kind":"AIRPORT","name":"V.C. Bird (ANU)","transferMinutes":{"value":[30,50],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"ANU"}},{"id":"falmouth-harbour-antigua-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH December–April","windows":[{"months":[12,1,2,3,4],"typicalOccupancy":{"value":0.92,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["winter Caribbean circuit","regatta overflow"]}],"forecastNote":"Inventory is small. A 60 m cancellation is the usual way a 60 m berth appears."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["winter Caribbean circuit","regatta overflow"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Mount St. John's Medical Centre","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Falmouth Harbour Marina guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Falmouth Harbour Marina captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Alongside megayacht inventory is coordinated months ahead."},"guestAmenities":["Dockyard walk","harbour restaurants"],"captainNotes":["Treat English Harbour and Falmouth as one clearance zone and two berth products."],"conflicts":[]},{"id":"HI-GR-FLISVOS-ATHENS","canonicalHarborId":"40f8609a-3c61-5b5c-8199-5eaebd9c3fb9","slug":"flisvos-athens","name":"Flisvos Marina","unlocode":"GRPIR","country":"Greece","countryCode":"GR","region":"east-med","cruisingGround":"Saronic / Attica","locality":"Palaio Faliro, Athens","coordinates":{"lat":37.9315,"lon":23.6854},"timezone":"Europe/Athens","summary":"Athens' principal superyacht marina on the Faliro waterfront: a crew-change and wintering harbour with the Acropolis 20 minutes behind a traffic problem. Zea and Alimos are different products.","identity":{"operator":{"value":"Flisvos Marina / Development agency","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Hellenic Port Authority / Hellenic Coast Guard","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"71","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BREAKWATER","yachtFocus":"SUPER","coordination":"COORDINATED","maxLoaM":{"value":140,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":22,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":6.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":6,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.2,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"flisvos-athens-main","name":"Main basin","controllingDepthM":{"value":6,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"flisvos-athens-visitors","basinId":"flisvos-athens-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":300,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":140,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <30 m","loaFromM":8,"loaToM":30,"count":{"value":250,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 30–140 m","loaFromM":30,"loaToM":140,"count":{"value":50,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"flisvos-athens-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"flisvos-athens-pos","kind":"POSIDONIA","summary":"Posidonia / seagrass anchoring restrictions apply in the approaches.","sourceId":"HM","confidence":"VERIFIED"},{"id":"gr-dekpa","kind":"COMMERCIAL_CHARTER","summary":"Charter and transit documentation (DEKPA / e-formalities) is an arrival constraint.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Coast Guard watch; marina desk follows published hours."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel","MGO"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["32A","63A","125A","400A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":true},"fees":[{"referenceLoaM":30,"currency":"EUR","highSeasonDaily":{"value":220,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"EUR"},"notes":"High-season daily band — not a quote"},{"referenceLoaM":50,"currency":"EUR","highSeasonDaily":{"value":780,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"EUR"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–20:00","nightWatch":true},"contacts":[{"id":"flisvos-athens-vhf","role":"HARBOURMASTER","channel":"VHF","value":"71","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"flisvos-athens-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"flisvos-athens-air","kind":"AIRPORT","name":"Athens (ATH)","transferMinutes":{"value":[30,60],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"ATH"}},{"id":"flisvos-athens-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH June–September and holiday weekends","windows":[{"months":[6,7,8,9],"typicalOccupancy":{"value":0.9,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["Athenian home fleet","Saronic charter start"]}],"forecastNote":"Home-ported large yachts shrink transient inventory even in shoulder months."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["Athenian home fleet","Saronic charter start"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Athens metropolitan hospitals","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Flisvos Marina guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Flisvos Marina captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Superyacht quay allocation is coordinated. Do not mix with Zea or Alimos inventory."},"guestAmenities":["Flisvos Park","Athens centre 20–40 min","crew facilities"],"captainNotes":["Piraeus commercial traffic is next door. Listen before you assume a yacht-only approach.","Greek DEKPA / transit log remains part of the arrival truth."],"conflicts":[]},{"id":"HI-AU-GOLD-COAST-CITY-MARINA","canonicalHarborId":"7672e232-7608-5104-9c83-053dd1ae9c22","slug":"gold-coast-city-marina","name":"Gold Coast City Marina & Shipyard","country":"Australia","countryCode":"AU","region":"oceania","cruisingGround":"Gold Coast","locality":"Coomera","coordinates":{"lat":-27.87,"lon":153.323},"timezone":"Australia/Brisbane","summary":"The southern hemisphere's large-yacht refit factory: travelifts, sheds and a working river. Not a weekend destination marina. The intelligence is haul-out tons and shed length.","identity":{"operator":{"value":"Gold Coast City Marina","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Maritime Safety Queensland","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"74","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"RIVER","yachtFocus":"MEGA","coordination":"ADVISED","maxLoaM":{"value":80,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":14,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":3.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":3.2,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":1.4,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"siltation":"River silt. Yard will quote a latest sounding."},"basins":[{"id":"gold-coast-city-marina-main","name":"Main basin","controllingDepthM":{"value":3.2,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"gold-coast-city-marina-visitors","basinId":"gold-coast-city-marina-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":200,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":80,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <25 m","loaFromM":8,"loaToM":25,"count":{"value":175,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 25–80 m","loaFromM":25,"loaToM":80,"count":{"value":25,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"gold-coast-city-marina-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"gold-coast-city-marina-cane","kind":"HURRICANE_PROTOCOL","summary":"Hurricane / cyclone plan is first-class operational truth here. Haul-out priority and evacuation rules override ordinary reservations.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":false,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":false,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Yard watch. Formalities in Brisbane / Gold Coast as directed."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["32A","63A","125A","400A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"ISPS-capable quay control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":true},"yard":{"traveliftT":{"value":300,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"refit":true,"hardstand":true},"fees":[{"referenceLoaM":50,"currency":"AUD","highSeasonDaily":{"value":280,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"AUD"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"07:00–17:00 weekdays","nightWatch":true},"contacts":[{"id":"gold-coast-city-marina-vhf","role":"HARBOURMASTER","channel":"VHF","value":"74","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"gold-coast-city-marina-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"gold-coast-city-marina-air","kind":"AIRPORT","name":"Gold Coast (OOL)","transferMinutes":{"value":[20,35],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"OOL"}},{"id":"gold-coast-city-marina-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH yard occupancy most of the dry season","windows":[{"months":[5,6,7,8,9],"typicalOccupancy":{"value":0.88,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["refit calendar","cyclone-season work"]}],"forecastNote":"A full yard is a booking fact, not a tourist congestion fact."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["refit calendar","cyclone-season work"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Gold Coast University Hospital","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Gold Coast City Marina & Shipyard guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Gold Coast City Marina & Shipyard captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Hardstand / shed / wet berth are three allocations."},"guestAmenities":["yard cafés","Coomera"],"captainNotes":["Book the lift and the berth as different objects.","River bars and the Seaway are the coastal story."],"conflicts":[]},{"id":"HI-GR-GOUVIA-CORFU","canonicalHarborId":"66ac2425-fd4c-53b3-aa64-6c00b1055f15","slug":"gouvia-corfu","name":"Gouvia Marina","unlocode":"GRCFU","country":"Greece","countryCode":"GR","region":"east-med","cruisingGround":"Ionian","locality":"Gouvia, Corfu","coordinates":{"lat":39.6512,"lon":19.8506},"timezone":"Europe/Athens","summary":"The Ionian's largest marina and the usual Corfu port of entry for yachts. A charter factory with a genuine wintering yard, not the old town harbour.","identity":{"operator":{"value":"Gouvia Marina","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Hellenic Coast Guard Corfu","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"69","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BREAKWATER","yachtFocus":"CRUISING","coordination":"ADVISED","maxLoaM":{"value":80,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":14,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":4.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.3,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"gouvia-corfu-main","name":"Main basin","controllingDepthM":{"value":4.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"gouvia-corfu-visitors","basinId":"gouvia-corfu-main","name":"Visitor pontoons / quay","mooring":"STERN_TO_LAZY_LINE","berthCount":{"value":1200,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":80,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <25 m","loaFromM":8,"loaToM":25,"count":{"value":1170,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 25–80 m","loaFromM":25,"loaToM":80,"count":{"value":30,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"gouvia-corfu-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Seasonal; Corfu is a proper entry port."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["32A","63A","125A","400A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":false},"yard":{"traveliftT":{"value":200,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"refit":true,"hardstand":true},"fees":[{"referenceLoaM":30,"currency":"EUR","highSeasonDaily":{"value":160,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"EUR"},"notes":"High-season daily band — not a quote"},{"referenceLoaM":50,"currency":"EUR","highSeasonDaily":{"value":480,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"EUR"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–21:00 in season","nightWatch":true},"contacts":[{"id":"gouvia-corfu-vhf","role":"HARBOURMASTER","channel":"VHF","value":"69","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"gouvia-corfu-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"gouvia-corfu-air","kind":"AIRPORT","name":"Corfu (CFU)","transferMinutes":{"value":[10,20],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"CFU"}},{"id":"gouvia-corfu-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH July–August","windows":[{"months":[7,8],"typicalOccupancy":{"value":0.93,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["Ionian charter base","July/August British & Italian traffic"]}],"forecastNote":"Berth count is large; 40 m+ inventory is not."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["Ionian charter base","July/August British & Italian traffic"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Corfu general hospital","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Gouvia Marina guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Gouvia Marina captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Charter fleets hold a large share of standard pontoons."},"guestAmenities":["marina village","Corfu Town 15 min","yard"],"captainNotes":["Old Corfu port is a different, tighter harbour.","Maistros and the mainland lee are the passage story."],"conflicts":[]},{"id":"HI-MT-GRAND-HARBOUR-MALTA","canonicalHarborId":"4f98880e-f107-5cb3-84f5-100b9ff80586","slug":"grand-harbour-malta","name":"Grand Harbour Marina","unlocode":"MTMLA","country":"Malta","countryCode":"MT","region":"east-med","cruisingGround":"Central Mediterranean","locality":"Birgu / Vittoriosa","coordinates":{"lat":35.8878,"lon":14.5214},"timezone":"Europe/Malta","summary":"Camper & Nicholsons' marina in the Three Cities, inside one of the world's great fortified harbours. Super-yacht alongside, Valletta across the water, and a compulsory sense that this is a real port, not a resort basin.","identity":{"operator":{"value":"Grand Harbour Marina (Camper & Nicholsons)","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Transport Malta / Valletta VTS","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"13","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"FORTIFIED","yachtFocus":"MEGA","coordination":"COORDINATED","maxLoaM":{"value":150,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":22,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":8,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":7,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.2,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"grand-harbour-malta-main","name":"Main basin","controllingDepthM":{"value":7,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"grand-harbour-malta-visitors","basinId":"grand-harbour-malta-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":260,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":150,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <30 m","loaFromM":8,"loaToM":30,"count":{"value":232,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 30–150 m","loaFromM":30,"loaToM":150,"count":{"value":28,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"grand-harbour-malta-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Valletta is a 24-hour commercial and yacht entry complex."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel","MGO"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["32A","63A","125A","400A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"ISPS-capable quay control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":true},"fees":[{"referenceLoaM":30,"currency":"EUR","highSeasonDaily":{"value":260,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"EUR"},"notes":"High-season daily band — not a quote"},{"referenceLoaM":50,"currency":"EUR","highSeasonDaily":{"value":880,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"EUR"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–18:00","nightWatch":true},"contacts":[{"id":"grand-harbour-malta-vhf","role":"HARBOURMASTER","channel":"VHF","value":"13","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"grand-harbour-malta-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"grand-harbour-malta-air","kind":"AIRPORT","name":"Malta (MLA)","transferMinutes":{"value":[20,40],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"MLA"}},{"id":"grand-harbour-malta-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH April–October and role-race weeks","windows":[{"months":[5,6,7,8,9,10],"typicalOccupancy":{"value":0.88,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["central Med crossing node","rolex / classic calendar"]}],"forecastNote":"VTS and harbour movements can delay a perfectly reserved berth. Keep allocation kinds separate."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["central Med crossing node","rolex / classic calendar"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Mater Dei Hospital","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Grand Harbour Marina guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Grand Harbour Marina captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Marina reservation + Valletta VTS traffic window are different objects. Never store them as one Slot."},"guestAmenities":["Three Cities","Valletta ferry","CN services"],"captainNotes":["Call Valletta VTS. This is a grand harbour, not a private lake.","Msida and Mgarr are different products."],"conflicts":[]},{"id":"HI-BS-HURRICANE-HOLE-NASSAU","canonicalHarborId":"455a4170-f784-56fc-829a-ef78d3f287eb","slug":"hurricane-hole-nassau","name":"Hurricane Hole / Atlantis","unlocode":"BSNAS","country":"Bahamas","countryCode":"BS","region":"caribbean","cruisingGround":"Bahamas","locality":"Paradise Island, Nassau","coordinates":{"lat":25.0838,"lon":-77.3212},"timezone":"America/Nassau","summary":"The Paradise Island yacht basin beside Atlantis: convenient, busy, and more exposed to harbour traffic than the name implies. A hurricane hole in branding; confirm the actual storm plan.","identity":{"operator":{"value":"Atlantis / Paradise Island marinas","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Nassau Harbour / Bahamas Customs","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"16","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BASIN","yachtFocus":"SUPER","coordination":"ADVISED","maxLoaM":{"value":70,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":12,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":4,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":3.6,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.9,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"hurricane-hole-nassau-main","name":"Main basin","controllingDepthM":{"value":3.6,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"hurricane-hole-nassau-visitors","basinId":"hurricane-hole-nassau-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":50,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":70,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <25 m","loaFromM":8,"loaToM":25,"count":{"value":35,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 25–70 m","loaFromM":25,"loaToM":70,"count":{"value":15,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"hurricane-hole-nassau-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"hurricane-hole-nassau-cane","kind":"HURRICANE_PROTOCOL","summary":"Hurricane / cyclone plan is first-class operational truth here. Haul-out priority and evacuation rules override ordinary reservations.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Nassau Harbour is the national entry machine."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["120V","208V","240V","480V"],"amps":["32A","63A","125A","400A"],"hz":["60Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":true},"fees":[{"referenceLoaM":30,"currency":"USD","highSeasonDaily":{"value":220,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"},{"referenceLoaM":50,"currency":"USD","highSeasonDaily":{"value":560,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–17:00","nightWatch":true},"contacts":[{"id":"hurricane-hole-nassau-vhf","role":"HARBOURMASTER","channel":"VHF","value":"16","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"hurricane-hole-nassau-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"hurricane-hole-nassau-air","kind":"AIRPORT","name":"Lynden Pindling (NAS)","transferMinutes":{"value":[25,45],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"NAS"}},{"id":"hurricane-hole-nassau-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH Christmas–Easter","windows":[{"months":[12,1,2,3,4],"typicalOccupancy":{"value":0.9,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["Atlantis destination traffic","Nassau landfall"]}],"forecastNote":"Name ≠ storm doctrine. Ask for the written hurricane plan."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["Atlantis destination traffic","Nassau landfall"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Doctors Hospital Nassau","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Hurricane Hole / Atlantis guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Hurricane Hole / Atlantis captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Resort marina reservation. Harbour control is separate."},"guestAmenities":["Atlantis","Paradise Island beaches"],"captainNotes":["Harbour traffic and cruise ships dominate the approach.","Albany is the quieter large-yacht alternative."],"conflicts":[{"id":"name","topic":"Hurricane Hole naming","detail":"The place-name is historic. Treat storm shelter capability as a written protocol plus fetch/holding facts, not as a promise in the name."}]},{"id":"HI-GR-LEFKAS-MARINA","canonicalHarborId":"ee7c254d-0840-521f-854a-5a8091cdd281","slug":"lefkas-marina","name":"Lefkas Marina","country":"Greece","countryCode":"GR","region":"east-med","cruisingGround":"Ionian","locality":"Lefkada Town","coordinates":{"lat":38.8298,"lon":20.7126},"timezone":"Europe/Athens","summary":"A canal-town marina behind the Lefkas swing/floating bridge. Air draft and bridge opening times are first-class navigational truth. The inland sea behind is the product.","identity":{"operator":{"value":"Lefkas Marina","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Hellenic Coast Guard Lefkada","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"69","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"CANAL","yachtFocus":"CRUISING","coordination":"ADVISED","maxLoaM":{"value":45,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":10,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":3.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":3.2,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.4,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"lefkas-marina-main","name":"Main basin","controllingDepthM":{"value":3.2,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"lefkas-marina-visitors","basinId":"lefkas-marina-main","name":"Visitor pontoons / quay","mooring":"STERN_TO_LAZY_LINE","berthCount":{"value":620,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":45,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <24 m","loaFromM":8,"loaToM":24,"count":{"value":605,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 24–45 m","loaFromM":24,"loaToM":45,"count":{"value":15,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"lefkas-marina-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"lef-bridge","kind":"BRIDGE","summary":"Entry and exit depend on the Lefkas canal bridge openings. This is a lock/bridge allocation, not a berth reservation.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Seasonal office; bridge openings are a separate schedule."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":false},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["16A","32A","63A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":false},"fees":[{"referenceLoaM":30,"currency":"EUR","highSeasonDaily":{"value":140,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"EUR"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–21:00 in season","nightWatch":true},"contacts":[{"id":"lefkas-marina-vhf","role":"HARBOURMASTER","channel":"VHF","value":"69","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"lefkas-marina-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"lefkas-marina-air","kind":"AIRPORT","name":"Aktion / Preveza (PVK)","transferMinutes":{"value":[25,45],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"PVK"}},{"id":"lefkas-marina-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH July–August","windows":[{"months":[7,8],"typicalOccupancy":{"value":0.94,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["Ionian charter","bridge-constrained arrivals"]}],"forecastNote":"A late bridge opening can cluster arrivals even when berths exist."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["Ionian charter","bridge-constrained arrivals"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Lefkada / Preveza hospitals","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Lefkas Marina guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Lefkas Marina captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY","LOCK_BOOKING","BRIDGE_OPENING"],"notes":"Berth reservation ≠ bridge opening. Keep them as separate allocation kinds."},"guestAmenities":["Lefkada town","canal-side tavernas"],"captainNotes":["The bridge, not the marina office, is often the critical slot.","Depths in the canal are a sounding conversation after winter silt."],"conflicts":[]},{"id":"HI-CY-LIMASSOL-MARINA","canonicalHarborId":"40cb8fc6-a2a6-57a1-9441-47463e06a4eb","slug":"limassol-marina","name":"Limassol Marina","unlocode":"CYLMS","country":"Cyprus","countryCode":"CY","region":"east-med","cruisingGround":"Cyprus / Levant approaches","locality":"Limassol","coordinates":{"lat":34.6704,"lon":33.0431},"timezone":"Asia/Nicosia","summary":"A mixed residential-and-yacht marina on Limassol's old port. Published berths into the 100 m class, EU formalities, and a genuine winter option on the Levant doorstep.","identity":{"operator":{"value":"Limassol Marina","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Cyprus Ports Authority / Cyprus Port & Marine Police","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"established":2014,"status":"OPERATIONAL","vhf":{"value":"12","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BREAKWATER","yachtFocus":"SUPER","coordination":"ADVISED","maxLoaM":{"value":110,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":18,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":6,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":5.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.4,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"limassol-marina-main","name":"Main basin","controllingDepthM":{"value":5.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"limassol-marina-visitors","basinId":"limassol-marina-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":650,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":110,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <30 m","loaFromM":8,"loaToM":30,"count":{"value":620,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 30–110 m","loaFromM":30,"loaToM":110,"count":{"value":30,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"limassol-marina-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Port of Limassol is a 24-hour commercial neighbour."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["32A","63A","125A","400A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":true},"fees":[{"referenceLoaM":30,"currency":"EUR","highSeasonDaily":{"value":200,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"EUR"},"notes":"High-season daily band — not a quote"},{"referenceLoaM":50,"currency":"EUR","highSeasonDaily":{"value":640,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"EUR"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:30–18:30","nightWatch":true},"contacts":[{"id":"limassol-marina-vhf","role":"HARBOURMASTER","channel":"VHF","value":"12","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"limassol-marina-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"limassol-marina-air","kind":"AIRPORT","name":"Larnaca (LCA)","transferMinutes":{"value":[45,70],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"LCA"}},{"id":"limassol-marina-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"MODERATE year-round; HIGH at holidays","windows":[{"months":[7,8,12],"typicalOccupancy":{"value":0.8,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["residential occupancy","Levant staging"]}],"forecastNote":"Residential berths look empty from the boardwalk and are not visitor inventory."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"MODERATE","why":["residential occupancy","Levant staging"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Limassol general hospital","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Limassol Marina guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Limassol Marina captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Residential long-lets vs visitor berths are different inventories."},"guestAmenities":["marina residences","old port restaurants","Limassol seafront"],"captainNotes":["Commercial Limassol is adjacent — keep yacht and commercial basins separate in the brief.","Cyprus is EU; the Levant next door is not."],"conflicts":[]},{"id":"HI-GB-LYMINGTON-YACHT-HAVEN","canonicalHarborId":"35337299-5bf6-543f-ad65-e3c0ba8f8d0c","slug":"lymington-yacht-haven","name":"Lymington Yacht Haven","country":"United Kingdom","countryCode":"GB","region":"northern-europe","cruisingGround":"Solent","locality":"Lymington","coordinates":{"lat":50.752,"lon":-1.528},"timezone":"Europe/London","summary":"A marsh-creek Solent marina with a town that still feels like a yacht harbour. Tide, mud and a short approach channel are the constraints; the New Forest is the reward.","identity":{"operator":{"value":"Yacht Havens","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Lymington Harbour Commissioners","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"80","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"RIVER","yachtFocus":"CRUISING","coordination":"ADVISED","maxLoaM":{"value":30,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":7,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":2.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":2.2,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":3.5,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"siltation":"Mud harbour. Published depth is a tide conversation."},"basins":[{"id":"lymington-yacht-haven-main","name":"Main basin","controllingDepthM":{"value":2.2,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"lymington-yacht-haven-visitors","basinId":"lymington-yacht-haven-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":650,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":30,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <20 m","loaFromM":8,"loaToM":20,"count":{"value":644,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 20–30 m","loaFromM":20,"loaToM":30,"count":{"value":6,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"lymington-yacht-haven-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":false,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":false,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Clear in Southampton or Poole as appropriate.","notes":"Not a primary UK yacht entry desk."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":false},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["16A","32A","63A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":false},"fees":[{"referenceLoaM":30,"currency":"GBP","highSeasonDaily":{"value":150,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"GBP"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–18:00","nightWatch":true},"contacts":[{"id":"lymington-yacht-haven-vhf","role":"HARBOURMASTER","channel":"VHF","value":"80","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"lymington-yacht-haven-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"lymington-yacht-haven-air","kind":"AIRPORT","name":"Bournemouth (BOH)","transferMinutes":{"value":[35,55],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"BOH"}},{"id":"lymington-yacht-haven-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH summer weekends","windows":[{"months":[7,8],"typicalOccupancy":{"value":0.88,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["Solent cruising","local yacht clubs"]}],"forecastNote":"Tide can make a reserved berth unreachable at the advertised hour."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["Solent cruising","local yacht clubs"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Lymington / Southampton hospitals","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Lymington Yacht Haven guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Lymington Yacht Haven captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Haven reservation. Harbour dues may be a separate charge."},"guestAmenities":["Lymington town","New Forest"],"captainNotes":["Berthon next door is a different, more technical harbour.","Night first arrival in a spring low is unwise."],"conflicts":[]},{"id":"HI-US-MARINA-DEL-REY","canonicalHarborId":"8d01c074-a384-5dc8-ab06-409c0cd269f9","slug":"marina-del-rey","name":"Marina del Rey","unlocode":"USMDY","country":"United States","countryCode":"US","region":"north-america","cruisingGround":"Southern California","locality":"Los Angeles County","coordinates":{"lat":33.978,"lon":-118.448},"timezone":"America/Los_Angeles","summary":"The largest purpose-built small-craft harbour in the United States. Thousands of slips, several operators, and almost no megayacht product. Intelligence here is basin-by-basin, not a single marina office.","identity":{"operator":{"value":"County of Los Angeles / multiple lessees","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Los Angeles County / USCG","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"16/12","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BASIN","yachtFocus":"MIXED","coordination":"ADVISED","maxLoaM":{"value":45,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":8,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":3,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":2.7,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":1.6,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"marina-del-rey-main","name":"Main basin","controllingDepthM":{"value":2.7,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"marina-del-rey-visitors","basinId":"marina-del-rey-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":4700,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":45,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <24 m","loaFromM":8,"loaToM":24,"count":{"value":4660,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 24–45 m","loaFromM":24,"loaToM":45,"count":{"value":40,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"marina-del-rey-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":false,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":false,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Los Angeles / Long Beach is the commercial port of entry complex.","notes":"Not a primary CBP yacht reception. Treat as domestic unless advised."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":false},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["120V","208V","240V","480V"],"amps":["16A","32A","63A"],"hz":["60Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":false},"fees":[{"referenceLoaM":30,"currency":"USD","highSeasonDaily":{"value":120,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"varies by lessee","nightWatch":true},"contacts":[{"id":"marina-del-rey-vhf","role":"HARBOURMASTER","channel":"VHF","value":"16/12","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"marina-del-rey-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"marina-del-rey-air","kind":"AIRPORT","name":"Los Angeles (LAX)","transferMinutes":{"value":[15,35],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"LAX"}},{"id":"marina-del-rey-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH summer weekends","windows":[{"months":[6,7,8],"typicalOccupancy":{"value":0.85,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["local liveaboards","weekend traffic"]}],"forecastNote":"4,700 slips is not 4,700 visitor slips. Most are occupied annual contracts."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["local liveaboards","weekend traffic"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Cedars-Sinai / Marina-adjacent hospitals","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Marina del Rey guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Marina del Rey captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Multiple lessees. Never collapse into one reservation system."},"guestAmenities":["harbor dining","Venice / Santa Monica"],"captainNotes":["Name the basin and the operator. 'Marina del Rey' is a harbour, not a single desk.","Entrance can be ugly in a west swell."],"conflicts":[]},{"id":"HI-IT-VIAREGGIO","canonicalHarborId":"a73b5b32-280e-559a-b6fd-b13d8ac39771","slug":"viareggio","name":"Marina di Viareggio","unlocode":"ITVIA","country":"Italy","countryCode":"IT","region":"west-med","cruisingGround":"Tuscan coast","locality":"Viareggio","coordinates":{"lat":43.8662,"lon":10.2388},"timezone":"Europe/Rome","summary":"Italy's superyacht shipyard town. The marina is competent; the real intelligence is the build-and-refit cluster (Benetti, Perini legacy, smaller specialists) and the canal/harbour geometry.","identity":{"operator":{"value":"Marina di Viareggio / port operators","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Capitaneria di Porto Viareggio","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"09","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"CANAL","yachtFocus":"MEGA","coordination":"ADVISED","maxLoaM":{"value":100,"sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":18,"sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":4.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxAirDraftM":{"value":0,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"No bridge constraint in the yacht basins; confirm the specific canal reach","unit":"m"}},"hydrography":{"controllingDepthM":{"value":4,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.4,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"siltation":"Canal harbours silt; treat published depth as a conversation with the yard."},"basins":[{"id":"viareggio-darsena","name":"Darsena / yacht basins","controllingDepthM":{"value":4,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"viareggio-marina","basinId":"viareggio-darsena","name":"Marina pontoons","mooring":"ALONGSIDE","berthCount":{"value":400,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":80,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"vg-s","label":"<24 m","loaFromM":8,"loaToM":24,"count":{"value":280,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A"]},{"id":"vg-l","label":"Yard / large yacht","loaFromM":24,"loaToM":100,"count":{"value":40,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["125A"]}],"restrictions":[{"id":"vg-silt","kind":"WAKE","summary":"Dead slow in the canal. Wash damages berthed new-builds.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Capitaneria on call; yard basins have their own watches."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel","MGO"]},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["32A","63A","125A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Yard + marina access control","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["Viareggio town","yard logistics"],"concierge":false},"yard":{"traveliftT":{"value":300,"sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"refit":true,"dryDock":true,"notes":"The town is a build-and-refit cluster. Individual yard limits differ."},"fees":[{"referenceLoaM":24,"currency":"EUR","highSeasonDaily":{"value":140,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"EUR"}},{"referenceLoaM":50,"currency":"EUR","highSeasonDaily":{"value":520,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"EUR"}}],"hours":{"office":"08:30–18:30","nightWatch":true},"contacts":[{"id":"vg-vhf","role":"HARBOURMASTER","channel":"VHF","value":"09","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"}],"shoreAccess":[{"id":"psa","kind":"AIRPORT","name":"Pisa (PSA)","transferMinutes":{"value":[25,45],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"PSA"}},{"id":"flr","kind":"AIRPORT","name":"Florence (FLR)","transferMinutes":{"value":[60,90],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"FLR"}}],"connections":[{"marinaId":"HI-IT-PORTO-CERVO","hours":{"value":10,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"h"}}],"congestion":{"peakLabel":"MODERATE visitor traffic; HIGH yard occupancy","windows":[{"months":[4,5,9,10],"typicalOccupancy":{"value":0.85,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["launch and refit peaks"]}],"forecastNote":"Congestion here is often a yard-slot problem, not a tourist-berth problem."},"reliability":[{"id":"silt","label":"Controlling depth","band":"MODERATE","why":["Canal siltation","Published depth is not a promise"],"method":"Pilot notes + yard reports","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Viareggio / Pisa hospitals","medevac":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Town is flat; yards are industrial."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Marina di Viareggio guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Marina di Viareggio captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Yard berths and marina visitor berths are different allocation systems. Never collapse them."},"guestAmenities":["Passeggiata","shipyard tours by invitation","Tuscan hinterland"],"captainNotes":["Ask the receiving yard for the latest canal sounding.","This is a technical harbour first."],"conflicts":[]},{"id":"HI-HR-FRAPA-ROGOZNICA","canonicalHarborId":"ac40803e-d793-5b4a-8772-b8a310578081","slug":"frapa-rogoznica","name":"Marina Frapa","country":"Croatia","countryCode":"HR","region":"adriatic","cruisingGround":"Central Dalmatia","locality":"Rogoznica","coordinates":{"lat":43.5246,"lon":15.965},"timezone":"Europe/Zagreb","summary":"A large, sheltered, almost landlocked marina between Split and Šibenik. Popular as a weather hole and a charter node. Less glamorous than Hvar, more reliable in a bora.","identity":{"operator":{"value":"Marina Frapa","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Lučka kapetanija Šibenik","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"17","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"NATURAL","yachtFocus":"CRUISING","coordination":"ADVISED","maxLoaM":{"value":50,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":10,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":4.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":4,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.3,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"frapa-rogoznica-main","name":"Main basin","controllingDepthM":{"value":4,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"frapa-rogoznica-visitors","basinId":"frapa-rogoznica-main","name":"Visitor pontoons / quay","mooring":"STERN_TO_LAZY_LINE","berthCount":{"value":450,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":50,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <24 m","loaFromM":8,"loaToM":24,"count":{"value":430,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 24–50 m","loaFromM":24,"loaToM":50,"count":{"value":20,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"frapa-rogoznica-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":false,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":false,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Clear in Split or Šibenik.","notes":"Not a primary port of entry."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["16A","32A","63A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":false},"fees":[{"referenceLoaM":30,"currency":"EUR","highSeasonDaily":{"value":150,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"EUR"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"07:00–21:00 in season","nightWatch":true},"contacts":[{"id":"frapa-rogoznica-vhf","role":"HARBOURMASTER","channel":"VHF","value":"17","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"frapa-rogoznica-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"frapa-rogoznica-air","kind":"AIRPORT","name":"Split (SPU)","transferMinutes":{"value":[35,55],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"SPU"}},{"id":"frapa-rogoznica-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH July–August","windows":[{"months":[7,8],"typicalOccupancy":{"value":0.9,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["charter weather-hole","central Dalmatian axis"]}],"forecastNote":"Occupancy is a charter-fleet fact as much as a destination fact."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["charter weather-hole","central Dalmatian axis"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Šibenik / Split","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Marina Frapa guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Marina Frapa captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Seasonal charter contracts reduce true visitor inventory."},"guestAmenities":["spa hotel","village","sheltered swimming"],"captainNotes":["Excellent bora shelter.","First-time night entry is still a tight-harbour problem."],"conflicts":[]},{"id":"HI-ES-MARINA-IBIZA","canonicalHarborId":"aeba4f4b-1e28-5f3c-b4d2-46795328ecaf","slug":"marina-ibiza","name":"Marina Ibiza","unlocode":"ESIBZ","country":"Spain","countryCode":"ES","region":"west-med","cruisingGround":"Balearics","locality":"Ibiza Town","coordinates":{"lat":38.9118,"lon":1.4486},"timezone":"Europe/Madrid","summary":"The premium marina on Ibiza's south harbour, facing Dalt Vila. Summer nights are an operations problem: tenders, music, and a visitor list that closed in the spring.","identity":{"operator":{"value":"Marina Ibiza","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Ports de les Illes Balears","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"09","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BREAKWATER","yachtFocus":"SUPER","coordination":"COORDINATED","maxLoaM":{"value":80,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":14,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":5.5,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":5,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.2,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"marina-ibiza-main","name":"Marina Ibiza basin","controllingDepthM":{"value":5,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"marina-ibiza-central","basinId":"marina-ibiza-main","name":"Central pontoons","mooring":"ALONGSIDE","berthCount":{"value":140,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":80,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"ibz-s","label":"<25 m","loaFromM":10,"loaToM":25,"count":{"value":70,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["32A","63A"]},{"id":"ibz-l","label":"25–80 m","loaFromM":25,"loaToM":80,"count":{"value":40,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["125A"]}],"restrictions":[{"id":"ibz-noise","kind":"NOISE","summary":"Harbour generator and party-noise rules tighten after 02:00 — enforcement is real in mid-season.","sourceId":"HM","confidence":"VERIFIED"},{"id":"ibz-pos","kind":"POSIDONIA","summary":"Ibiza/Formentera posidonia regime is among the strictest in the Med.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Seasonal watch; Ibiza is a designated entry port."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"]},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["32A","63A","125A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Gated pontoons + night security","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["Ibiza Town","yacht provisioners"],"concierge":true},"fees":[{"referenceLoaM":30,"currency":"EUR","highSeasonDaily":{"value":480,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"August reports","unit":"EUR"},"notes":"August reports"},{"referenceLoaM":50,"currency":"EUR","highSeasonDaily":{"value":1400,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"EUR"}}],"hours":{"office":"09:00–21:00 June–September","nightWatch":true},"contacts":[{"id":"ibz-vhf","role":"HARBOURMASTER","channel":"VHF","value":"09","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"}],"shoreAccess":[{"id":"ibz","kind":"AIRPORT","name":"Ibiza (IBZ)","transferMinutes":{"value":[15,30],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"IBZ"}}],"connections":[{"marinaId":"HI-ES-CLUB-DE-MAR-PALMA","hours":{"value":8,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"h"}},{"marinaId":"HI-ES-PUERTO-BANUS","hours":{"value":14,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"h"}}],"congestion":{"peakLabel":"VERY_HIGH July–August","windows":[{"months":[6,7,8,9],"typicalOccupancy":{"value":0.97,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["club season","charter turnarounds"]}],"forecastNote":"If the date is a Saturday in August, treat availability as a closed market."},"reliability":[{"id":"night","label":"Night operations load","band":"VERY_HIGH","why":["Tender traffic","harbour noise","crew logistics at 04:00"],"method":"Seasonal operations reports","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Can Misses","medevac":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Marina is level; Dalt Vila is not."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true,"noisePolicy":"Night generator limits."},"maps":[{"id":"guest","title":"Marina Ibiza guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Marina Ibiza captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Season contracts consume most large berths before the visitor market opens."},"guestAmenities":["harbour restaurants","Dalt Vila","marina club"],"captainNotes":["Botafoch and the public harbour are different products.","Posidonia fines are not theoretical."],"conflicts":[]},{"id":"HI-PF-MARINA-TAINA-TAHITI","canonicalHarborId":"28324789-aeed-5263-a073-11f0282f06c2","slug":"marina-taina-tahiti","name":"Marina Taina","unlocode":"PFPPT","country":"French Polynesia","countryCode":"PF","region":"oceania","cruisingGround":"Society Islands","locality":"Puna'auia, Tahiti","coordinates":{"lat":-17.59,"lon":-149.61},"timezone":"Pacific/Tahiti","summary":"Tahiti's main cruising marina on the west coast, used as a Papeete-adjacent landfall after a Pacific crossing. Papeete downtown quay is a different, noisier harbour.","identity":{"operator":{"value":"Marina Taina","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Direction de la mer / Papeete officials","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"09","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"LAGOON","yachtFocus":"CRUISING","coordination":"ADVISED","maxLoaM":{"value":30,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":7,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":3,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":2.6,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.4,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"marina-taina-tahiti-main","name":"Main basin","controllingDepthM":{"value":2.6,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"marina-taina-tahiti-visitors","basinId":"marina-taina-tahiti-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":150,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":30,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <20 m","loaFromM":8,"loaToM":20,"count":{"value":144,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 20–30 m","loaFromM":20,"loaToM":30,"count":{"value":6,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"marina-taina-tahiti-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"marina-taina-tahiti-cane","kind":"HURRICANE_PROTOCOL","summary":"Hurricane / cyclone plan is first-class operational truth here. Haul-out priority and evacuation rules override ordinary reservations.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Papeete formalities. Do not assume a night yacht desk."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":false},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["16A","32A","63A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":false},"fees":[{"referenceLoaM":30,"currency":"USD","highSeasonDaily":{"value":80,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–16:00","nightWatch":true},"contacts":[{"id":"marina-taina-tahiti-vhf","role":"HARBOURMASTER","channel":"VHF","value":"09","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"marina-taina-tahiti-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"marina-taina-tahiti-air","kind":"AIRPORT","name":"Faa'a (PPT)","transferMinutes":{"value":[15,30],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"PPT"}},{"id":"marina-taina-tahiti-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH May–October (southeast trades / dry-ish season)","windows":[{"months":[6,7,8,9],"typicalOccupancy":{"value":0.88,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["Pacific crossing landfall","Society Islands start"]}],"forecastNote":"A full marina often means the crossing cohort arrived together."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["Pacific crossing landfall","Society Islands start"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"CHPF Papeete","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":false,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":false,"assistance":"Historic or uneven access; request assistance before arrival."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Marina Taina guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Marina Taina captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Visitor vs local. Downtown Papeete is a different quay."},"guestAmenities":["lagoon","Papeete 15 min","provisioning"],"captainNotes":["Clearance and bond / agent rules change — verify current French Polynesia practice.","Moore'a is the first day-sail, not a substitute harbour on arrival night."],"conflicts":[]},{"id":"HI-TR-MARMARIS-YACHT-MARINA","canonicalHarborId":"f625aa12-c4da-500b-bc5a-00f8908e17e8","slug":"marmaris-yacht-marina","name":"Marmaris Yacht Marina","unlocode":"TRMRX","country":"Türkiye","countryCode":"TR","region":"east-med","cruisingGround":"Turkish Riviera","locality":"Adaköy, Marmaris","coordinates":{"lat":36.824,"lon":28.311},"timezone":"Europe/Istanbul","summary":"One of the Mediterranean's largest wintering marinas, set east of Marmaris town. Summer is busy; winter is the economic season. Netsel in town is a different, tighter harbour.","identity":{"operator":{"value":"Marmaris Yacht Marina","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Marmaris Port Authority","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"72","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BREAKWATER","yachtFocus":"CRUISING","coordination":"ADVISED","maxLoaM":{"value":60,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":12,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":4.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.3,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"marmaris-yacht-marina-main","name":"Main basin","controllingDepthM":{"value":4.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"marmaris-yacht-marina-visitors","basinId":"marmaris-yacht-marina-main","name":"Visitor pontoons / quay","mooring":"STERN_TO_LAZY_LINE","berthCount":{"value":670,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":60,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <25 m","loaFromM":8,"loaToM":25,"count":{"value":650,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 25–60 m","loaFromM":25,"loaToM":60,"count":{"value":20,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"marmaris-yacht-marina-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Town is the formal port; marina has night watch."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["32A","63A","125A","400A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":false},"yard":{"traveliftT":{"value":300,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"refit":true,"hardstand":true},"fees":[{"referenceLoaM":30,"currency":"EUR","highSeasonDaily":{"value":130,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"EUR"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–18:00 winter; later in summer","nightWatch":true},"contacts":[{"id":"marmaris-yacht-marina-vhf","role":"HARBOURMASTER","channel":"VHF","value":"72","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"marmaris-yacht-marina-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"marmaris-yacht-marina-air","kind":"AIRPORT","name":"Dalaman (DLM)","transferMinutes":{"value":[80,120],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"DLM"}},{"id":"marmaris-yacht-marina-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH wintering occupancy October–April","windows":[{"months":[10,11,12,1,2,3,4],"typicalOccupancy":{"value":0.88,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["liveaboard wintering","yard work"]}],"forecastNote":"A summer visitor may find space while the winter contracts are already full."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["liveaboard wintering","yard work"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Marmaris state hospital","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Marmaris Yacht Marina guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Marmaris Yacht Marina captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Annual contracts dominate. Summer visitors are the remainder market."},"guestAmenities":["on-site village","Marmaris 15 min by water or road"],"captainNotes":["This is Adaköy, not Netsel.","Winter liveaboard culture is the true harbour personality."],"conflicts":[]},{"id":"HI-VG-NANNY-CAY","canonicalHarborId":"2959746b-8368-5c46-b4a8-f6ca09949944","slug":"nanny-cay","name":"Nanny Cay","country":"British Virgin Islands","countryCode":"VG","region":"caribbean","cruisingGround":"Virgin Islands","locality":"Tortola","coordinates":{"lat":18.3885,"lon":-64.6348},"timezone":"America/Tortola","summary":"Tortola's workhorse marina and boatyard: charter base, haul-out, and a practical hurricane-prep node. Village Cay in Road Town is the town-quay cousin.","identity":{"operator":{"value":"Nanny Cay Marina & Hotel","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"BVI Ports / Customs","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"16/68","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"LAGOON","yachtFocus":"CRUISING","coordination":"ADVISED","maxLoaM":{"value":40,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":8,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":3.2,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":2.8,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.3,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"nanny-cay-main","name":"Main basin","controllingDepthM":{"value":2.8,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"nanny-cay-visitors","basinId":"nanny-cay-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":200,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":40,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <24 m","loaFromM":8,"loaToM":24,"count":{"value":192,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 24–40 m","loaFromM":24,"loaToM":40,"count":{"value":8,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"nanny-cay-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"nanny-cay-cane","kind":"HURRICANE_PROTOCOL","summary":"Hurricane / cyclone plan is first-class operational truth here. Haul-out priority and evacuation rules override ordinary reservations.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":false,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":false,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Clear in Road Town or West End unless advised.","notes":"Not the primary BVI clearance desk."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":false},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["120V","208V","240V","480V"],"amps":["16A","32A","63A"],"hz":["60Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":false},"yard":{"traveliftT":{"value":70,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"refit":true,"hardstand":true},"fees":[{"referenceLoaM":30,"currency":"USD","highSeasonDaily":{"value":140,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–17:00","nightWatch":true},"contacts":[{"id":"nanny-cay-vhf","role":"HARBOURMASTER","channel":"VHF","value":"16/68","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"nanny-cay-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"nanny-cay-air","kind":"AIRPORT","name":"Terrance B. Lettsome (EIS)","transferMinutes":{"value":[20,35],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"EIS"}},{"id":"nanny-cay-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH December–April; haul-out peak before storms","windows":[{"months":[12,1,2,3,4],"typicalOccupancy":{"value":0.9,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["BVI charter","yard"]}],"forecastNote":"Draft is the silent rejector for many 20 m+ motor yachts."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["BVI charter","yard"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Peebles Hospital, Road Town","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Nanny Cay guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Nanny Cay captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Charter inventory vs visitor vs yard hardstand are three lists."},"guestAmenities":["hotel","beach","yard"],"captainNotes":["Soundings after storm silt matter.","BVI park and mooring rules are a cruising-ground layer."],"conflicts":[]},{"id":"HI-US-NANTUCKET-BOAT-BASIN","canonicalHarborId":"5b98ab6c-42a0-5584-8cbb-cf5f15864060","slug":"nantucket-boat-basin","name":"Nantucket Boat Basin","country":"United States","countryCode":"US","region":"north-america","cruisingGround":"New England","locality":"Nantucket","coordinates":{"lat":41.2853,"lon":-70.0969},"timezone":"America/New_York","summary":"A short, expensive, fog-and-reservation harbour. The basin is the town. Off-island weather windows, ferry wash and a July–August closed list define the place.","identity":{"operator":{"value":"Nantucket Boat Basin","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Town of Nantucket / USCG","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"09","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BASIN","yachtFocus":"SUPER","coordination":"COORDINATED","maxLoaM":{"value":65,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":11,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":3,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":2.7,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":1.1,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"nantucket-boat-basin-main","name":"Main basin","controllingDepthM":{"value":2.7,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"nantucket-boat-basin-visitors","basinId":"nantucket-boat-basin-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":240,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":65,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <25 m","loaFromM":8,"loaToM":25,"count":{"value":220,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 25–65 m","loaFromM":25,"loaToM":65,"count":{"value":20,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"nantucket-boat-basin-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":false,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":false,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Clear on the mainland unless previously arranged.","notes":"Domestic US harbour. International arrivals use a designated port."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["120V","208V","240V","480V"],"amps":["32A","63A","125A","400A"],"hz":["60Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":true},"fees":[{"referenceLoaM":30,"currency":"USD","highSeasonDaily":{"value":400,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"},{"referenceLoaM":50,"currency":"USD","highSeasonDaily":{"value":900,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"07:00–20:00 in season","nightWatch":true},"contacts":[{"id":"nantucket-boat-basin-vhf","role":"HARBOURMASTER","channel":"VHF","value":"09","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"nantucket-boat-basin-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"nantucket-boat-basin-air","kind":"AIRPORT","name":"Nantucket (ACK)","transferMinutes":{"value":[10,20],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"ACK"}},{"id":"nantucket-boat-basin-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"VERY_HIGH July–August","windows":[{"months":[7,8],"typicalOccupancy":{"value":0.99,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["New England August","tiny island inventory"]}],"forecastNote":"Fog and ferry schedules can strand a perfectly reserved yacht on the mainland."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"VERY_HIGH","why":["New England August","tiny island inventory"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Nantucket Cottage Hospital; Boston for major trauma","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Nantucket Boat Basin guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Nantucket Boat Basin captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Season contracts + nightly remainder. No VTS product."},"guestAmenities":["town","island beaches"],"captainNotes":["Have Hyannis or Martha's Vineyard as weather overflow.","Reservation is necessary and still not sufficient in race weeks."],"conflicts":[]},{"id":"HI-AG-ENGLISH-HARBOUR-ANTIGUA","canonicalHarborId":"2f1966dd-c3a0-5ad7-a1c9-6d24d99ec777","slug":"english-harbour-antigua","name":"Nelson's Dockyard / English Harbour","unlocode":"AGANU","country":"Antigua and Barbuda","countryCode":"AG","region":"caribbean","cruisingGround":"Leeward Islands","locality":"English Harbour","coordinates":{"lat":17.0081,"lon":-61.7647},"timezone":"America/Antigua","summary":"A hurricane hole with Georgian dockyard stonework and a serious classic-yacht calendar. Falmouth next door is the megayacht overflow. This is operational Caribbean, not a theme park.","identity":{"operator":{"value":"National Parks Authority / Antigua Yacht Club Marina cluster","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Antigua Port Authority / Customs & Immigration","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"68","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"NATURAL","yachtFocus":"RACING","coordination":"ADVISED","maxLoaM":{"value":70,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":12,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":4.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":4,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.4,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"english-harbour-antigua-main","name":"Main basin","controllingDepthM":{"value":4,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"english-harbour-antigua-visitors","basinId":"english-harbour-antigua-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":60,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":70,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <25 m","loaFromM":8,"loaToM":25,"count":{"value":48,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 25–70 m","loaFromM":25,"loaToM":70,"count":{"value":12,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"english-harbour-antigua-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"english-harbour-antigua-cane","kind":"HURRICANE_PROTOCOL","summary":"Hurricane / cyclone plan is first-class operational truth here. Haul-out priority and evacuation rules override ordinary reservations.","sourceId":"HM","confidence":"VERIFIED"},{"id":"ag-cane","kind":"HURRICANE_PROTOCOL","summary":"English Harbour is a named hurricane hole. Haul-out and evacuation rules override ordinary reservations.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Officials keep published hours; after-hours clearance is a request, not a right."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["120V","208V","240V","480V"],"amps":["32A","63A","125A","400A"],"hz":["60Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":false},"fees":[{"referenceLoaM":30,"currency":"USD","highSeasonDaily":{"value":180,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"},{"referenceLoaM":50,"currency":"USD","highSeasonDaily":{"value":420,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–16:00 plus event weeks","nightWatch":true},"contacts":[{"id":"english-harbour-antigua-vhf","role":"HARBOURMASTER","channel":"VHF","value":"68","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"english-harbour-antigua-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"english-harbour-antigua-air","kind":"AIRPORT","name":"V.C. Bird (ANU)","transferMinutes":{"value":[30,50],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"ANU"}},{"id":"english-harbour-antigua-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"VERY_HIGH during Sailing Week and Christmas trades","windows":[{"months":[12,1,4,5],"typicalOccupancy":{"value":0.95,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["Antigua Sailing Week","classic regattas","winter season"]}],"forecastNote":"Hurricane season changes the product: the hole is a shelter plan, not a party plan."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"VERY_HIGH","why":["Antigua Sailing Week","classic regattas","winter season"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Mount St. John's Medical Centre, St. John's","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":false,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":false,"assistance":"Historic or uneven access; request assistance before arrival."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Nelson's Dockyard / English Harbour guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Nelson's Dockyard / English Harbour captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Event weeks use a separate allocation. Hurricane haul-out is a third system."},"guestAmenities":["Dockyard","Shirley Heights","AYC"],"captainNotes":["Falmouth Harbour Marina takes the larger modern yachts.","Clearance is English Harbour / Falmouth — confirm the current desk."],"conflicts":[]},{"id":"HI-US-NEWPORT-SHIPYARD","canonicalHarborId":"c5b960a5-3e35-50ea-8d02-f59ad4a3f4de","slug":"newport-shipyard","name":"Newport Shipyard","unlocode":"USNPT","country":"United States","countryCode":"US","region":"north-america","cruisingGround":"New England","locality":"Newport, Rhode Island","coordinates":{"lat":41.4856,"lon":-71.322},"timezone":"America/New_York","summary":"The working superyacht yard on Newport's waterfront. Bannister's, Bannister's Wharf and the mooring field are different Newport products. Race weeks rewrite the harbour.","identity":{"operator":{"value":"Safe Harbor Newport Shipyard","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"USCG Sector Southeastern New England","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"09","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"NATURAL","yachtFocus":"MEGA","coordination":"ADVISED","maxLoaM":{"value":80,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":14,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":4.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":1.1,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"newport-shipyard-main","name":"Main basin","controllingDepthM":{"value":4.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"newport-shipyard-visitors","basinId":"newport-shipyard-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":40,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":80,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <30 m","loaFromM":8,"loaToM":30,"count":{"value":20,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 30–80 m","loaFromM":30,"loaToM":80,"count":{"value":20,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"newport-shipyard-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Arrange CBP; Newport is used to yachts."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["120V","208V","240V","480V"],"amps":["32A","63A","125A","400A"],"hz":["60Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"ISPS-capable quay control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":true},"yard":{"traveliftT":{"value":160,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"refit":true,"hardstand":true},"fees":[{"referenceLoaM":50,"currency":"USD","highSeasonDaily":{"value":550,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"07:30–17:00","nightWatch":true},"contacts":[{"id":"newport-shipyard-vhf","role":"HARBOURMASTER","channel":"VHF","value":"09","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"newport-shipyard-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"newport-shipyard-air","kind":"AIRPORT","name":"Providence / TF Green (PVD)","transferMinutes":{"value":[35,60],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"PVD"}},{"id":"newport-shipyard-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"VERY_HIGH during Newport race weeks","windows":[{"months":[6,7],"typicalOccupancy":{"value":0.95,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["Bermuda Race / NYYC weeks","New England summer"]}],"forecastNote":"Mooring field occupancy is not shipyard occupancy. Keep identities separate."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"VERY_HIGH","why":["Bermuda Race / NYYC weeks","New England summer"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Newport Hospital; Providence for major trauma","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Newport Shipyard guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Newport Shipyard captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Yard berth ≠ mooring permit ≠ club dock."},"guestAmenities":["Thames Street","yard","Newport clubs"],"captainNotes":["Say which Newport: shipyard, Bannister's, Oldport, or the moorings.","Fog and a spring tide change the alongside conversation."],"conflicts":[]},{"id":"HI-GB-OCEAN-VILLAGE-SOUTHAMPTON","canonicalHarborId":"6a07f533-bfee-5899-9a41-dc2d3516d1fe","slug":"ocean-village-southampton","name":"Ocean Village","unlocode":"GBSOU","country":"United Kingdom","countryCode":"GB","region":"northern-europe","cruisingGround":"Solent","locality":"Southampton","coordinates":{"lat":50.8956,"lon":-1.3918},"timezone":"Europe/London","summary":"A locked marina in the Southampton Water system. Tides, lock cycles and the Marchwood / container-port neighbours define arrivals. Cowes is the Solent stage; this is the city-and-crew-change harbour.","identity":{"operator":{"value":"MDL Ocean Village","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"ABP Southampton / Harbour Master","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"80","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BASIN","yachtFocus":"CRUISING","coordination":"ADVISED","maxLoaM":{"value":40,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":8,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":3.2,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":3,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":4,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"ocean-village-southampton-main","name":"Main basin","controllingDepthM":{"value":3,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"ocean-village-southampton-visitors","basinId":"ocean-village-southampton-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":350,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":40,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <22 m","loaFromM":8,"loaToM":22,"count":{"value":340,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 22–40 m","loaFromM":22,"loaToM":40,"count":{"value":10,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"ocean-village-southampton-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"sou-lock","kind":"BRIDGE","summary":"Locked basin. Treat lock cycles as LOCK_BOOKING, never as a berth reservation.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Southampton is a major port; yacht lock hours still apply."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":false},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["16A","32A","63A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":false},"fees":[{"referenceLoaM":30,"currency":"GBP","highSeasonDaily":{"value":160,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"GBP"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–18:00","nightWatch":true},"contacts":[{"id":"ocean-village-southampton-vhf","role":"HARBOURMASTER","channel":"VHF","value":"80","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"ocean-village-southampton-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"ocean-village-southampton-air","kind":"AIRPORT","name":"Southampton (SOU)","transferMinutes":{"value":[15,30],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"SOU"}},{"id":"ocean-village-southampton-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH Cowes Week overflow and summer weekends","windows":[{"months":[7,8],"typicalOccupancy":{"value":0.86,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["Solent racing","city berths"]}],"forecastNote":"A reserved berth can wait on a lock cycle. Keep lock booking ≠ berth reservation."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["Solent racing","city berths"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Southampton General","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Ocean Village guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Ocean Village captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY","LOCK_BOOKING","BRIDGE_OPENING"],"notes":"MDL berth reservation + lock cycle + ABP harbour movements. Three kinds."},"guestAmenities":["Ocean Village dining","West Quay","rail to London"],"captainNotes":["Lock, tide and commercial traffic are the brief.","Haslar and Cowes are different Solent products."],"conflicts":[]},{"id":"HI-SG-ONE15-SENTOSA","canonicalHarborId":"93486442-d98b-59a5-8be2-04f3eab47573","slug":"one15-sentosa","name":"ONE°15 Marina Sentosa Cove","unlocode":"SGSIN","country":"Singapore","countryCode":"SG","region":"asia","cruisingGround":"Singapore Strait / South China Sea approaches","locality":"Sentosa Cove","coordinates":{"lat":1.2458,"lon":103.8378},"timezone":"Asia/Singapore","summary":"Singapore's club marina in Sentosa Cove: a rare leisure basin in one of the world's busiest straits. Arrival is a VTS and immigration story long before it is a berth story.","identity":{"operator":{"value":"ONE°15 Marina","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"MPA Singapore / Immigration","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"77","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BASIN","yachtFocus":"SUPER","coordination":"COORDINATED","maxLoaM":{"value":60,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":12,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":4,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":3.6,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":2.4,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"one15-sentosa-main","name":"Main basin","controllingDepthM":{"value":3.6,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"one15-sentosa-visitors","basinId":"one15-sentosa-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":270,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":60,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <24 m","loaFromM":8,"loaToM":24,"count":{"value":255,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 24–60 m","loaFromM":24,"loaToM":60,"count":{"value":15,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"one15-sentosa-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"sg-vts","kind":"ISPS","summary":"Singapore Strait / port reporting. A marina reservation is not a VTS traffic window.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Singapore is 24-hour for shipping. Yacht clearance is still scheduled."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["32A","63A","125A","400A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":true},"fees":[{"referenceLoaM":30,"currency":"SGD","highSeasonDaily":{"value":220,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"SGD"},"notes":"High-season daily band — not a quote"},{"referenceLoaM":50,"currency":"SGD","highSeasonDaily":{"value":520,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"SGD"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"09:00–18:00","nightWatch":true},"contacts":[{"id":"one15-sentosa-vhf","role":"HARBOURMASTER","channel":"VHF","value":"77","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"one15-sentosa-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"one15-sentosa-air","kind":"AIRPORT","name":"Changi (SIN)","transferMinutes":{"value":[30,55],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"SIN"}},{"id":"one15-sentosa-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH winter holidays and major city events","windows":[{"months":[12,1],"typicalOccupancy":{"value":0.86,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["club contracts","regional cruising"]}],"forecastNote":"Strait VTS delay can make a reserved berth late. Keep VTS ≠ berth."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["club contracts","regional cruising"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Singapore General / NUH","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"ONE°15 Marina Sentosa Cove guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"ONE°15 Marina Sentosa Cove captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Club marina reservation + MPA/VTS. Two kinds."},"guestAmenities":["Sentosa","club","Singapore city 20–30 min"],"captainNotes":["MPA reporting is not optional.","Raffles Marina in the west is a different, Johor-facing product."],"conflicts":[]},{"id":"HI-ES-ONEOCEAN-PORT-VELL","canonicalHarborId":"b461362a-82ec-58da-81fc-39da44e71564","slug":"oneocean-port-vell","name":"OneOcean Port Vell","unlocode":"ESBCN","country":"Spain","countryCode":"ES","region":"west-med","cruisingGround":"Catalunya / Balearics approaches","locality":"Barcelona","coordinates":{"lat":41.3764,"lon":2.1855},"timezone":"Europe/Madrid","summary":"A purpose-built superyacht marina inside Barcelona's historic Port Vell. Inventory is almost entirely 20 m+, with published capability toward 190 m. This is not the public Port Olímpic marina.","identity":{"operator":{"value":"OneOcean Port Vell","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Port de Barcelona","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"established":2012,"status":"OPERATIONAL","vhf":{"value":"12","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BASIN","yachtFocus":"MEGA","coordination":"COORDINATED","maxLoaM":{"value":190,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":30,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":8,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":7.5,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.3,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"oneocean-port-vell-vell","name":"OneOcean basin","controllingDepthM":{"value":7.5,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"oneocean-port-vell-central","basinId":"oneocean-port-vell-vell","name":"Central megayacht quays","mooring":"ALONGSIDE","berthCount":{"value":150,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":190,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"o-s","label":"20–40 m","loaFromM":20,"loaToM":40,"count":{"value":70,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["125A"]},{"id":"o-m","label":"40–80 m","loaFromM":40,"loaToM":80,"count":{"value":50,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["400A"]},{"id":"o-l","label":"80–190 m","loaFromM":80,"loaToM":190,"count":{"value":15,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["high-capacity shore"]}],"restrictions":[{"id":"oopv-isps","kind":"ISPS","summary":"Full ISPS perimeter. Guest access is by list.","sourceId":"HM","confidence":"VERIFIED"},{"id":"oopv-gen","kind":"GENERATOR","summary":"Shore power is the default; generator policy is strict.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"24-hour marina operations; officialdom follows port schedules."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["MGO"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["400V"],"amps":["125A","400A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"MARINA_WIDE","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"ISPS + 24h security","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["in-house yacht services","Barcelona provisioners"],"concierge":true},"fees":[{"referenceLoaM":50,"currency":"EUR","highSeasonDaily":{"value":1600,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"EUR"}},{"referenceLoaM":80,"currency":"EUR","highSeasonDaily":{"value":3200,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"EUR"}}],"hours":{"office":"24-hour operations desk","nightWatch":true},"contacts":[{"id":"oopv-vhf","role":"HARBOURMASTER","channel":"VHF","value":"12","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"oopv-vip","role":"VIP","channel":"WEB","value":"oneoceanportvell.com","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"}],"shoreAccess":[{"id":"bcn","kind":"AIRPORT","name":"Barcelona-El Prat (BCN)","transferMinutes":{"value":[20,40],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"BCN"}},{"id":"metro","kind":"METRO","name":"Barceloneta / Drassanes","transferMinutes":{"value":[8,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"GTFS","id":"stop:barceloneta"}}],"connections":[{"marinaId":"HI-ES-CLUB-DE-MAR-PALMA","hours":{"value":14,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"h"}}],"congestion":{"peakLabel":"HIGH May–September and Mobile World Congress week","windows":[{"months":[5,6,7,8,9],"typicalOccupancy":{"value":0.9,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["Med season","city events"]}],"forecastNote":"Home-ported fleet reduces true transient inventory even when the basin looks empty from the bridge."},"reliability":[{"id":"depth","label":"Depth reliability","band":"LOW","why":["Purpose-dredged basin","Port authority maintenance"],"method":"Published depths","estimate":false}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Hospital del Mar","medevac":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Level, modern pontoons."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true,"hvoOrSafAnalog":"Shore-power first policy; alternative-fuel bunkering by arrangement."},"maps":[{"id":"guest","title":"OneOcean Port Vell guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"OneOcean Port Vell captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Private marina allocation inside a commercial port. VTS instructions are a separate concept."},"guestAmenities":["OneOcean Club","Rambla 15 min","shipyard-grade services"],"captainNotes":["Do not confuse with Marina Port Vell public pontoons or Port Olímpic.","Approach is through a commercial port — listen to Port Control."],"conflicts":[]},{"id":"HI-TR-PALMARINA-YALIKAVAK","canonicalHarborId":"b0cebc1a-9c3e-57ec-b395-9ab2cc4b3f8a","slug":"palmarina-yalikavak","name":"Palmarina Yalıkavak","unlocode":"TRBXN","country":"Türkiye","countryCode":"TR","region":"east-med","cruisingGround":"Turkish Aegean / Bodrum peninsula","locality":"Yalıkavak, Bodrum","coordinates":{"lat":37.1044,"lon":27.2917},"timezone":"Europe/Istanbul","summary":"The Bodrum peninsula's megayacht flagship: hundreds of berths, a serious large-yacht quay, and a summer social calendar that behaves like a second Monaco. Transit log and Turkish formalities are the arrival layer.","identity":{"operator":{"value":"Palmarina","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Bodrum Port Authority / Turkish Coast Guard","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"73","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BREAKWATER","yachtFocus":"MEGA","coordination":"COORDINATED","maxLoaM":{"value":140,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":24,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":8,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":7,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.3,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"palmarina-yalikavak-main","name":"Main basin","controllingDepthM":{"value":7,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"palmarina-yalikavak-visitors","basinId":"palmarina-yalikavak-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":620,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":140,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <35 m","loaFromM":8,"loaToM":35,"count":{"value":580,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 35–140 m","loaFromM":35,"loaToM":140,"count":{"value":40,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"palmarina-yalikavak-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Marina 24h; officialdom usually daytime plus on-call."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel","MGO"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["32A","63A","125A","400A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"ISPS-capable quay control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":true},"yard":{"traveliftT":{"value":300,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"refit":true,"hardstand":true},"fees":[{"referenceLoaM":30,"currency":"EUR","highSeasonDaily":{"value":240,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"EUR"},"notes":"High-season daily band — not a quote"},{"referenceLoaM":50,"currency":"EUR","highSeasonDaily":{"value":820,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"EUR"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–20:00","nightWatch":true},"contacts":[{"id":"palmarina-yalikavak-vhf","role":"HARBOURMASTER","channel":"VHF","value":"73","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"palmarina-yalikavak-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"palmarina-yalikavak-air","kind":"AIRPORT","name":"Milas–Bodrum (BJV)","transferMinutes":{"value":[45,75],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"BJV"}},{"id":"palmarina-yalikavak-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"VERY_HIGH July–August","windows":[{"months":[7,8],"typicalOccupancy":{"value":0.96,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["Turkish Aegean season","TYBA / yacht calendar"]}],"forecastNote":"Social calendar and home-port contracts, not weather, drive midsummer refusal."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"VERY_HIGH","why":["Turkish Aegean season","TYBA / yacht calendar"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Bodrum hospitals","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Palmarina Yalıkavak guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Palmarina Yalıkavak captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Large-yacht quay is coordinated inventory. Standard pontoons are a different market."},"guestAmenities":["palmarina village","Yalıkavak market","Bodrum 25 min"],"captainNotes":["Transit log / harbour formalities start before the passerelle goes down.","Meltemi is a passage wind; the basin itself is well protected."],"conflicts":[]},{"id":"HI-US-PIER-66-FTL","canonicalHarborId":"2a08d852-227e-5a15-94ba-d710b4653ffc","slug":"pier-66-ftl","name":"Pier Sixty-Six Marina","country":"United States","countryCode":"US","region":"north-america","cruisingGround":"Florida","locality":"Fort Lauderdale","coordinates":{"lat":26.1018,"lon":-80.1168},"timezone":"America/New_York","summary":"A deep-water marina at the ICW / Port Everglades door. Larger yachts that cannot live happily at Bahia Mar often land here instead. Hotel-resort fabric, serious docks.","identity":{"operator":{"value":"Pier Sixty-Six","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"USCG / City of Fort Lauderdale","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"16/14","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"CANAL","yachtFocus":"MEGA","coordination":"COORDINATED","maxLoaM":{"value":120,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":18,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":4.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":4,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.8,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"pier-66-ftl-main","name":"Main basin","controllingDepthM":{"value":4,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"pier-66-ftl-visitors","basinId":"pier-66-ftl-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":140,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":120,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <30 m","loaFromM":8,"loaToM":30,"count":{"value":105,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 30–120 m","loaFromM":30,"loaToM":120,"count":{"value":35,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"pier-66-ftl-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"pier-66-ftl-cane","kind":"HURRICANE_PROTOCOL","summary":"Hurricane / cyclone plan is first-class operational truth here. Haul-out priority and evacuation rules override ordinary reservations.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Port Everglades CBP is the official machine."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel","MGO"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["120V","208V","240V","480V"],"amps":["32A","63A","125A","400A"],"hz":["60Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"ISPS-capable quay control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":true},"fees":[{"referenceLoaM":50,"currency":"USD","highSeasonDaily":{"value":700,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–18:00","nightWatch":true},"contacts":[{"id":"pier-66-ftl-vhf","role":"HARBOURMASTER","channel":"VHF","value":"16/14","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"pier-66-ftl-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"pier-66-ftl-air","kind":"AIRPORT","name":"Fort Lauderdale–Hollywood (FLL)","transferMinutes":{"value":[12,25],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"FLL"}},{"id":"pier-66-ftl-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH winter and boat-show month","windows":[{"months":[10,11,12,1,2,3],"typicalOccupancy":{"value":0.9,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["megayacht wintering","FLIBS overflow"]}],"forecastNote":"Deep does not mean unconstrained — Port Everglades traffic and security zones still apply."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["megayacht wintering","FLIBS overflow"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Broward Health Medical Center","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Pier Sixty-Six Marina guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Pier Sixty-Six Marina captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Resort marina reservation. Port Everglades movements are VTS-adjacent, not a berth product."},"guestAmenities":["resort","Las Olas 10 min","crew access to FLL"],"captainNotes":["This is the usual 50 m+ Fort Lauderdale answer when ICW draft dies.","Commercial shipping has right of way in the cut."],"conflicts":[]},{"id":"HI-ES-PORT-ADRIANO","canonicalHarborId":"c85e1f41-8cfd-514a-8dac-512045e9c29a","slug":"port-adriano","name":"Port Adriano","country":"Spain","countryCode":"ES","region":"west-med","cruisingGround":"Balearics","locality":"El Toro, Calvià, Mallorca","coordinates":{"lat":39.4902,"lon":2.4761},"timezone":"Europe/Madrid","summary":"Philippe Starck's southwest Mallorca marina: a designed superyacht basin with a beach-club atmosphere and published berths into the 80–100 m range. Quieter than Palma, still reservation-critical in July.","identity":{"operator":{"value":"Port Adriano","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Ports de les Illes Balears / Port Authority","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"established":2012,"status":"OPERATIONAL","vhf":{"value":"09","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BREAKWATER","yachtFocus":"SUPER","coordination":"ADVISED","maxLoaM":{"value":100,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":18,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":6,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":5.5,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.3,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"Southwest exposure in rare winter storms"}},"basins":[{"id":"port-adriano-main","name":"Main designed basin","controllingDepthM":{"value":5.5,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"port-adriano-central","basinId":"port-adriano-main","name":"Central quays","mooring":"ALONGSIDE","berthCount":{"value":480,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":100,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"pa-s","label":"<20 m","loaFromM":8,"loaToM":20,"count":{"value":280,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A"]},{"id":"pa-l","label":"20–100 m","loaFromM":20,"loaToM":100,"count":{"value":80,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A"]}],"restrictions":[{"id":"pa-pos","kind":"POSIDONIA","summary":"Southwest Mallorca calas are posidonia-protected.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":false,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"Clear in Palma unless advised otherwise"},"immigrationOnSite":{"value":false,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Marina night watch; formalities in Palma.","notes":"Not a primary port of entry. Arrive via Palma or a designated entry port."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"]},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["16A","32A","63A","125A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"MARINA_WIDE","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Gated marina","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["on-site dining","Palma provisioners 25 min"],"concierge":true},"fees":[{"referenceLoaM":25,"currency":"EUR","highSeasonDaily":{"value":210,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"EUR"}},{"referenceLoaM":50,"currency":"EUR","highSeasonDaily":{"value":900,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"EUR"}}],"hours":{"office":"09:00–21:00 in season","nightWatch":true},"contacts":[{"id":"pa-vhf","role":"HARBOURMASTER","channel":"VHF","value":"09","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"}],"shoreAccess":[{"id":"pmi","kind":"AIRPORT","name":"Palma de Mallorca (PMI)","transferMinutes":{"value":[25,45],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"PMI"}}],"connections":[{"marinaId":"HI-ES-CLUB-DE-MAR-PALMA","hours":{"value":1.2,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"h"}}],"congestion":{"peakLabel":"HIGH July–August","windows":[{"months":[7,8],"typicalOccupancy":{"value":0.93,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["southwest Mallorca season"]}],"forecastNote":"Designed as a destination marina; occupancy follows beach-club season."},"reliability":[{"id":"swell","label":"Swell exposure","band":"MODERATE","why":["More open than Palma's commercial harbour"],"method":"Captain reports","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Palma hospitals 25–40 min","medevac":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern, level marina village."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Port Adriano guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Port Adriano captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Private marina reservations only. No VTS product."},"guestAmenities":["beach club","designed waterfront","on-site dining"],"captainNotes":["A destination, not a port of entry.","Confirm max LOA for the specific quay — the headline number is not every finger."],"conflicts":[]},{"id":"HI-BL-GUSTAVIA-ST-BARTHS","canonicalHarborId":"af40eca8-8665-51ec-b39c-a287585ad72a","slug":"gustavia-st-barths","name":"Port de Gustavia","unlocode":"BLGUS","country":"St. Barthélemy","countryCode":"BL","region":"caribbean","cruisingGround":"Leeward Islands","locality":"Gustavia","coordinates":{"lat":17.898,"lon":-62.8504},"timezone":"America/St_Barthelemy","summary":"A tiny, Med-style harbour that becomes a floating city between Christmas and New Year. Published capacity is a suggestion; rafting, tenders and a closed reservation list are the winter truth.","identity":{"operator":{"value":"Port de Gustavia","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Collectivité de Saint-Barthélemy","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"12","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"NATURAL","yachtFocus":"SUPER","coordination":"COORDINATED","maxLoaM":{"value":80,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":12,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":4.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":4,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.4,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"gustavia-st-barths-main","name":"Main basin","controllingDepthM":{"value":4,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"gustavia-st-barths-visitors","basinId":"gustavia-st-barths-main","name":"Visitor pontoons / quay","mooring":"STERN_TO_ANCHOR","berthCount":{"value":40,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":80,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <25 m","loaFromM":8,"loaToM":25,"count":{"value":22,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 25–80 m","loaFromM":25,"loaToM":80,"count":{"value":18,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"gustavia-st-barths-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"gustavia-st-barths-cane","kind":"HURRICANE_PROTOCOL","summary":"Hurricane / cyclone plan is first-class operational truth here. Haul-out priority and evacuation rules override ordinary reservations.","sourceId":"HM","confidence":"VERIFIED"},{"id":"sbh-nye","kind":"NIGHT_ENTRY","summary":"Night and New Year movements are tightly controlled. Tender traffic is the hidden hazard.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"French formalities; after-hours is exceptional."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["120V","208V","240V","480V"],"amps":["32A","63A","125A","400A"],"hz":["60Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":true},"fees":[{"referenceLoaM":30,"currency":"EUR","highSeasonDaily":{"value":350,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"EUR"},"notes":"High-season daily band — not a quote"},{"referenceLoaM":50,"currency":"EUR","highSeasonDaily":{"value":900,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"EUR"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–16:00; extended in late December","nightWatch":true},"contacts":[{"id":"gustavia-st-barths-vhf","role":"HARBOURMASTER","channel":"VHF","value":"12","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"gustavia-st-barths-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"gustavia-st-barths-air","kind":"AIRPORT","name":"Rémy de Haenen (SBH)","transferMinutes":{"value":[8,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"SBH"}},{"id":"gustavia-st-barths-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"EXTREME 20 Dec–5 Jan","windows":[{"months":[12,1],"typicalOccupancy":{"value":1,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["New Year fleet","tiny quay","outer-bay overflow"]}],"forecastNote":"If the date is New Year's Eve, this is not a marina search. It is a closed allocation."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"VERY_HIGH","why":["New Year fleet","tiny quay","outer-bay overflow"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Gustavia hospital; serious trauma via St. Martin or Guadeloupe","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":false,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":false,"assistance":"Historic or uneven access; request assistance before arrival."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Port de Gustavia guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Port de Gustavia captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Winter holiday allocation is a separate political and commercial process from ordinary visitor nights."},"guestAmenities":["Gustavia","beach clubs by tender","St. Jean"],"captainNotes":["Have a Plan B in St. Martin.","The outer bay is part of the harbour system and has its own swell and collision problem."],"conflicts":[{"id":"capacity","topic":"Published vs actual New Year capacity","detail":"The quay cannot physically hold the winter holiday fleet. Outer-bay rafting is not the same as a reserved alongside berth. Do not store them as one inventory number."}]},{"id":"HI-FR-SAINT-TROPEZ","canonicalHarborId":"9823d9b8-2ab5-599d-8351-c35ed596f803","slug":"saint-tropez","name":"Port de Saint-Tropez","unlocode":"FRSTP","country":"France","countryCode":"FR","region":"west-med","cruisingGround":"Côte d'Azur","locality":"Saint-Tropez","coordinates":{"lat":43.2725,"lon":6.6402},"timezone":"Europe/Paris","summary":"A small, photogenic, operationally unforgiving town quay. Depth, LOA and summer reservation reality are all tighter than the reputation suggests. Les Marines de Cogolin and Port Grimaud are the overflow system.","identity":{"operator":{"value":"Capitainerie de Saint-Tropez","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Ville de Saint-Tropez","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"09","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BASIN","yachtFocus":"SUPER","coordination":"COORDINATED","maxLoaM":{"value":50,"sourceId":"HM","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"Town-quay practical maximum; larger yachts use the bay or nearby marinas","unit":"m"},"maxBeamM":{"value":10,"sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":3.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":3.2,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.3,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"Mistral can make the quay lively"}},"basins":[{"id":"saint-tropez-vieux","name":"Vieux Port","controllingDepthM":{"value":3.2,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"saint-tropez-quai","basinId":"saint-tropez-vieux","name":"Quai de l'Épi / town quays","mooring":"STERN_TO_LAZY_LINE","berthCount":{"value":70,"sourceId":"HM","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":50,"sourceId":"HM","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"st-vis","label":"Visitor town quay","loaFromM":12,"loaToM":50,"count":{"value":40,"sourceId":"HM","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["32A","63A"]}],"restrictions":[{"id":"st-night","kind":"NIGHT_ENTRY","summary":"Night arrival is discouraged for first-time visitors; the basin is tight.","sourceId":"HM","confidence":"VERIFIED"},{"id":"st-wake","kind":"WAKE","summary":"Dead slow from the entrance through the basin.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":false,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Capitainerie watch in season; winter is a different harbour."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"notes":"Fuel berth is not the town-quay glamour photograph."},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["32A","63A"],"hz":["50Hz"]},"waste":{"black":true,"grey":false,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Town-quay public access","sourceId":"OR","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["place des Lices market","limited crew practicality"],"concierge":true},"fees":[{"referenceLoaM":30,"currency":"EUR","highSeasonDaily":{"value":650,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"July–August town-quay reports; not a tariff","unit":"EUR"},"notes":"July–August town-quay reports; not a tariff"}],"hours":{"office":"08:00–20:00 July–August","nightWatch":true,"seasonal":"Much reduced November–March"},"contacts":[{"id":"st-vhf","role":"HARBOURMASTER","channel":"VHF","value":"09","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"}],"shoreAccess":[{"id":"ltt","kind":"AIRPORT","name":"La Môle – Saint-Tropez (LTT)","transferMinutes":{"value":[25,40],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"LTT"}},{"id":"nce","kind":"AIRPORT","name":"Nice Côte d'Azur (NCE)","transferMinutes":{"value":[90,140],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"Road time is the real constraint in August.","unit":"min"},"notes":"Road time is the real constraint in August.","externalRef":{"system":"IATA","id":"NCE"}}],"connections":[{"marinaId":"HI-FR-PIERRE-CANTO-CANNES","hours":{"value":2.5,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"h"}}],"congestion":{"peakLabel":"VERY_HIGH July–August; the bay is the actual harbour","windows":[{"months":[7,8],"typicalOccupancy":{"value":1,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["town quay scarcity","day-boat traffic"]}],"forecastNote":"Treat the town quay as a scarce allocation, not a marina with spare inventory."},"reliability":[{"id":"quay","label":"Town-quay reliability","band":"VERY_HIGH","why":["Tiny visitor inventory","No meaningful overflow inside the basin"],"method":"Declared berths vs seasonal demand","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Gassin / Saint-Tropez clinic; major trauma via Nice or Toulon","medevac":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":false,"sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Quay is level; village behind is not."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Port de Saint-Tropez guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Port de Saint-Tropez captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Reservation is effectively a lottery in peak weeks. Do not mix with bay anchoring permission."},"guestAmenities":["Sénéquier","place des Lices","Citadelle"],"captainNotes":["Have an overflow plan: Cogolin, Port Grimaud or the designated bay areas.","Stern-to with lazy lines is the default."],"conflicts":[]},{"id":"HI-FJ-PORT-DENARAU","canonicalHarborId":"3c2bdde0-6111-5ae0-81b5-6f31a86f6160","slug":"port-denarau","name":"Port Denarau","unlocode":"FJNAN","country":"Fiji","countryCode":"FJ","region":"oceania","cruisingGround":"Fiji / Mamanucas","locality":"Denarau, Nadi","coordinates":{"lat":-17.771,"lon":177.381},"timezone":"Pacific/Fiji","summary":"Fiji's principal yacht and day-cruise marina, minutes from Nadi airport. Biosecurity, cyclone doctrine and the Mamanuca/Yasawa permit regime sit above the berth conversation.","identity":{"operator":{"value":"Port Denarau Marina","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Fiji Ports / Customs & Biosecurity","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"16/14","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BASIN","yachtFocus":"CRUISING","coordination":"ADVISED","maxLoaM":{"value":50,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":10,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":3.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":3.2,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":1.6,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"port-denarau-main","name":"Main basin","controllingDepthM":{"value":3.2,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"port-denarau-visitors","basinId":"port-denarau-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":70,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":50,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <24 m","loaFromM":8,"loaToM":24,"count":{"value":62,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 24–50 m","loaFromM":24,"loaToM":50,"count":{"value":8,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"port-denarau-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"port-denarau-cane","kind":"HURRICANE_PROTOCOL","summary":"Hurricane / cyclone plan is first-class operational truth here. Haul-out priority and evacuation rules override ordinary reservations.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Nadi / Denarau can clear; hours are real."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["16A","32A","63A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":false},"fees":[{"referenceLoaM":30,"currency":"USD","highSeasonDaily":{"value":120,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–17:00","nightWatch":true},"contacts":[{"id":"port-denarau-vhf","role":"HARBOURMASTER","channel":"VHF","value":"16/14","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"port-denarau-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"port-denarau-air","kind":"AIRPORT","name":"Nadi (NAN)","transferMinutes":{"value":[15,25],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"NAN"}},{"id":"port-denarau-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH July–October dry season","windows":[{"months":[7,8,9,10],"typicalOccupancy":{"value":0.86,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["dry-season cruising","day-cruise traffic"]}],"forecastNote":"Cyclone season rewrites the berth product. Ask for the written plan."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["dry-season cruising","day-cruise traffic"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Nadi / Lautoka hospitals; Suva for major trauma","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Port Denarau guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Port Denarau captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Marina vs day-cruise commercial berths."},"guestAmenities":["Denarau resorts","Mamanuca boats"],"captainNotes":["Savusavu is a different, more yachtie clearance on the other island.","Reef permits are not optional."],"conflicts":[]},{"id":"HI-MC-PORT-HERCULE-MONACO","canonicalHarborId":"de4ff487-e5b5-529a-b52c-fa5f37163bcb","slug":"port-hercule-monaco","name":"Port Hercule","localName":"Port Hercule de Monaco","unlocode":"MCMON","country":"Monaco","countryCode":"MC","region":"west-med","cruisingGround":"Côte d'Azur","locality":"Monaco-Ville / La Condamine","coordinates":{"lat":43.7352,"lon":7.4256},"timezone":"Europe/Monaco","summary":"The principality's deep, breakwater-protected yacht harbour and the operational heart of the Monaco Yacht Show. Night entry is controlled, megayacht quays are scarce, and September occupancy is a planning problem rather than a berth search.","identity":{"operator":{"value":"Société d'Exploitation des Ports de Monaco","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Direction des Affaires Maritimes, Monaco","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"established":1926,"status":"OPERATIONAL","vhf":{"value":"12","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"Port of Monaco working channel"}},"envelope":{"harborType":"BREAKWATER","yachtFocus":"MEGA","coordination":"COORDINATED","maxLoaM":{"value":140,"sourceId":"HM","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"Largest published alongside capability on Quai Rainier III / north quay; exceptional visits are case-by-case","unit":"m"},"maxBeamM":{"value":25,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":8,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"Controlling depth on the large-yacht quays; confirm siltation after winter storms","unit":"m"}},"hydrography":{"controllingDepthM":{"value":7,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.4,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"Microtidal","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"Easterly swell can set into the outer basin"},"siltation":"Periodic dredging of the north basin after easterly weather.","holding":"Anchoring inside the port is prohibited; outside is exposed and usually forbidden."},"basins":[{"id":"port-hercule-monaco-north","name":"North / megayacht basin","controllingDepthM":{"value":8,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},{"id":"port-hercule-monaco-south","name":"South / Condamine basin","controllingDepthM":{"value":5,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"port-hercule-monaco-qr3","basinId":"port-hercule-monaco-north","name":"Quai Rainier III","mooring":"ALONGSIDE","berthCount":{"value":8,"sourceId":"HM","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":140,"sourceId":"HM","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true},{"id":"port-hercule-monaco-lquai","basinId":"port-hercule-monaco-north","name":"Large yacht pontoons","mooring":"ALONGSIDE","berthCount":{"value":18,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":80,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true},{"id":"port-hercule-monaco-condamine","basinId":"port-hercule-monaco-south","name":"Condamine finger pontoons","mooring":"ALONGSIDE","berthCount":{"value":250,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":30,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"c-small","pierId":"port-hercule-monaco-condamine","label":"Local / visiting <20 m","loaFromM":8,"loaToM":20,"count":{"value":180,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A"]},{"id":"c-mid","pierId":"port-hercule-monaco-lquai","label":"Superyacht 20–50 m","loaFromM":20,"loaToM":50,"count":{"value":40,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A"]},{"id":"c-mega","pierId":"port-hercule-monaco-qr3","label":"Megayacht 50 m+","loaFromM":50,"loaToM":140,"count":{"value":12,"sourceId":"HM","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["400A","shore 400V"]}],"restrictions":[{"id":"mc-night","kind":"NIGHT_ENTRY","summary":"Night entry is controlled and usually requires prior arrangement with the harbour master's office.","sourceId":"HM","confidence":"VERIFIED"},{"id":"mc-speed","kind":"SPEED","summary":"Speed limited inside the port; dead slow, no wake.","sourceId":"HM","confidence":"VERIFIED"},{"id":"mc-isps","kind":"ISPS","summary":"ISPS access control on the large-yacht quays during events and for most visiting yachts over 500 GT.","sourceId":"HM","confidence":"VERIFIED"},{"id":"mc-gen","kind":"GENERATOR","summary":"Generator hours restricted alongside; shore power is expected.","sourceId":"HM","confidence":"VERIFIED"},{"id":"mc-anchor","kind":"ANCHOR","summary":"No anchoring in the harbour or in the immediately adjacent roads without authority.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[{"id":"mys-2026","title":"Monaco Yacht Show quay reservation freeze","issued":"2026-04-15","expires":"2026-10-01","severity":"CAUTION","body":"During the September show window, transient megayacht quays are allocated by event organisers, not the ordinary visitor list. Do not treat published winter capacity as available.","sourceId":"HM","confidence":"VERIFIED"}],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"On-call through harbour master; medical and state visits can be cleared after hours.","notes":"Monaco maintains its own formalities while remaining in the French customs sphere. EU yachts still complete arrival formalities."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["MGO","diesel"],"bunkerAlongside":true,"notes":"Bunkering is scheduled, not walk-up, for yachts over ~30 m."},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"notes":"Potable water on all visitor quays."},"shorePower":{"voltages":["230V","400V"],"amps":["16A","32A","63A","125A","400A"],"hz":["50Hz"],"notes":"Megayacht shore power on Quai Rainier III."},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"MARINA_WIDE","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"ISPS quay control + port police","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["yacht chandlery nearby","Monaco gastronomy","crew supermarket in Condamine"],"concierge":true},"fees":[{"referenceLoaM":30,"currency":"EUR","highSeasonDaily":{"value":420,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band for ~30 m; not a quote","unit":"EUR"},"notes":"High-season daily band for ~30 m; not a quote"},{"referenceLoaM":50,"currency":"EUR","highSeasonDaily":{"value":1100,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band for ~50 m; event weeks are a different market","unit":"EUR"},"notes":"High-season daily band for ~50 m; event weeks are a different market"},{"referenceLoaM":80,"currency":"EUR","highSeasonDaily":{"value":2800,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"Reported show-adjacent pricing, not a tariff","unit":"EUR"},"notes":"Reported show-adjacent pricing, not a tariff"}],"hours":{"office":"07:30–19:00 in season; reduced winter desk","nightWatch":true},"contacts":[{"id":"mc-vhf","role":"HARBOURMASTER","channel":"VHF","value":"12","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"mc-office","role":"MARINA_OFFICE","channel":"WEB","value":"ports-monaco.com","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"mc-em","role":"EMERGENCY","channel":"PHONE","value":"112 / 18","lastVerified":"2026-01-01","sourceId":"PA","confidence":"AUTHORITATIVE"}],"shoreAccess":[{"id":"nce","kind":"AIRPORT","name":"Nice Côte d'Azur (NCE)","transferMinutes":{"value":[25,50],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"A8 / Moyenne Corniche; helicopter is often faster in show week.","unit":"min"},"notes":"A8 / Moyenne Corniche; helicopter is often faster in show week.","externalRef":{"system":"IATA","id":"NCE"}},{"id":"heli","kind":"HELIPORT","name":"Monaco Heliport (MCM)","transferMinutes":{"value":[5,12],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"MCM"}},{"id":"rail","kind":"RAIL","name":"Monaco-Monte-Carlo SNCF","transferMinutes":{"value":[8,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"GTFS","id":"stop:monaco-monte-carlo"}},{"id":"walk","kind":"WALK","name":"Casino / Hôtel de Paris","transferMinutes":{"value":[12,20],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[{"marinaId":"HI-FR-PORT-VAUBAN-ANTIBES","hours":{"value":1.2,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"h"}},{"marinaId":"HI-FR-NICE-PORT","hours":{"value":0.6,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"h"}},{"marinaId":"HI-IT-PORTOFINO","hours":{"value":4.5,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"h"}}],"congestion":{"peakLabel":"VERY_HIGH in September (Yacht Show) and Grand Prix week","windows":[{"months":[5,9],"typicalOccupancy":{"value":0.98,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["Monaco Grand Prix","Monaco Yacht Show","superyacht repositioning"]},{"months":[7,8],"typicalOccupancy":{"value":0.9,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["high summer Côte d'Azur traffic"]},{"months":[11,12,1,2],"typicalOccupancy":{"value":0.55,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["wintering fleet, yard periods"]}],"forecastNote":"A congestion band here is derived from event calendars + historical occupancy, not a live sensor count. Labelled ESTIMATE."},"reliability":[{"id":"berth-pressure","label":"Berth pressure","band":"VERY_HIGH","why":["Declared megayacht quay count is in the low teens","Show week reallocates the entire north basin"],"method":"Declared capacity vs event demand","estimate":true},{"id":"weather","label":"Weather disruption","band":"MODERATE","why":["Easterly swell closes comfortable outer-berth use","Mistral is more a passage issue than a harbour issue"],"method":"Climatology + captain reports","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"CHPG Monaco / Nice university hospitals","medevac":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHoursClearance":"Possible for medical and state movements."},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Harbour office can arrange quay-side assistance; historic town above is steep."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true,"noisePolicy":"No unnecessary generators alongside."},"maps":[{"id":"guest","title":"Port Hercule guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Port Hercule captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Berth reservation is not a VTS slot and not a lock booking. Event weeks use a separate allocation channel."},"guestAmenities":["yacht club","one-minute walk to Condamine market","hotel density","casino quarter","crew gyms nearby"],"captainNotes":["Call on VHF 12 well before the entrance. The entrance sets in easterlies.","Do not assume a published max LOA is an available berth.","Show and Grand Prix weeks are a different operational regime."],"conflicts":[{"id":"loa-conflict","topic":"Maximum LOA","detail":"Operator materials and captain reports disagree on whether 140 m is a hard limit or a typical planning envelope. Treat as REPORTED and confirm the specific quay."}]},{"id":"HI-GD-PORT-LOUIS-GRENADA","canonicalHarborId":"75ebbac8-6a03-5372-a445-f010fc65d212","slug":"port-louis-grenada","name":"Port Louis Marina","unlocode":"GDSTG","country":"Grenada","countryCode":"GD","region":"caribbean","cruisingGround":"Windward Islands / southern Caribbean","locality":"St. George's","coordinates":{"lat":12.0496,"lon":-61.7486},"timezone":"America/Grenada","summary":"Camper & Nicholsons' southern Caribbean flagship and a preferred hurricane-season base south of 12°N. Deep, modern, and used as a summer lay-up harbour as much as a winter destination.","identity":{"operator":{"value":"Port Louis Marina (Camper & Nicholsons)","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Grenada Ports Authority / Customs","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"14","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BREAKWATER","yachtFocus":"SUPER","coordination":"ADVISED","maxLoaM":{"value":90,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":16,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":6,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":5.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.4,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"port-louis-grenada-main","name":"Main basin","controllingDepthM":{"value":5.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"port-louis-grenada-visitors","basinId":"port-louis-grenada-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":170,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":90,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <28 m","loaFromM":8,"loaToM":28,"count":{"value":145,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 28–90 m","loaFromM":28,"loaToM":90,"count":{"value":25,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"port-louis-grenada-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"port-louis-grenada-cane","kind":"HURRICANE_PROTOCOL","summary":"Hurricane / cyclone plan is first-class operational truth here. Haul-out priority and evacuation rules override ordinary reservations.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"St. George's is a proper entry port."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["120V","208V","240V","480V"],"amps":["32A","63A","125A","400A"],"hz":["60Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":true},"yard":{"traveliftT":{"value":75,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"refit":true,"hardstand":true},"fees":[{"referenceLoaM":30,"currency":"USD","highSeasonDaily":{"value":150,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"},{"referenceLoaM":50,"currency":"USD","highSeasonDaily":{"value":400,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–17:00","nightWatch":true},"contacts":[{"id":"port-louis-grenada-vhf","role":"HARBOURMASTER","channel":"VHF","value":"14","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"port-louis-grenada-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"port-louis-grenada-air","kind":"AIRPORT","name":"Maurice Bishop (GND)","transferMinutes":{"value":[15,30],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"GND"}},{"id":"port-louis-grenada-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH June–November for lay-up; HIGH winter visitors","windows":[{"months":[6,7,8,9,10,11],"typicalOccupancy":{"value":0.86,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["hurricane-season lay-up","southbound Atlantic arrivals"]}],"forecastNote":"Summer full can mean the hurricane plan is working, not that the destination is fashionable."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["hurricane-season lay-up","southbound Atlantic arrivals"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"General Hospital, St. George's","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Port Louis Marina guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Port Louis Marina captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Lay-up contracts vs transient nights are different inventories."},"guestAmenities":["St. George's","CN services","yard cluster in Prickly Bay"],"captainNotes":["Grenada's 'south of the belt' reputation is a planning input, not a guarantee.","Prickly Bay / Secret Harbour are different products."],"conflicts":[]},{"id":"HI-FR-NICE-PORT","canonicalHarborId":"eb896750-6185-5a37-919e-dff130418b72","slug":"nice-port","name":"Port Lympia","localName":"Port de Nice","unlocode":"FRNCE","country":"France","countryCode":"FR","region":"west-med","cruisingGround":"Côte d'Azur","locality":"Nice","coordinates":{"lat":43.6955,"lon":7.2856},"timezone":"Europe/Paris","summary":"Nice's working and yacht harbour at Lympia: ferry traffic, a genuine city port of entry, and a practical crew-change harbour 15 minutes from NCE. It is not a megayacht showcase.","identity":{"operator":{"value":"CCI Nice Côte d'Azur / Capitainerie","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Grand Port de Nice","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"12","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BREAKWATER","yachtFocus":"MIXED","coordination":"ADVISED","maxLoaM":{"value":60,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":12,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":5.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.4,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"nice-port-lympia","name":"Lympia basins","controllingDepthM":{"value":5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"nice-port-yacht","basinId":"nice-port-lympia","name":"Yacht pontoons","mooring":"ALONGSIDE","berthCount":{"value":350,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":60,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"n-s","label":"<20 m","loaFromM":8,"loaToM":20,"count":{"value":250,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A"]},{"id":"n-l","label":"20–60 m","loaFromM":20,"loaToM":60,"count":{"value":40,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A"]}],"restrictions":[{"id":"nce-ferry","kind":"WAKE","summary":"Give way to Corsica ferries and keep clear of the commercial turning basin.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"AUTHORITATIVE","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Commercial port watch; yacht desk follows office hours."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"]},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["16A","32A","63A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Port access control","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["city supermarkets","course change logistics"],"concierge":false},"fees":[{"referenceLoaM":20,"currency":"EUR","highSeasonDaily":{"value":95,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"EUR"}},{"referenceLoaM":40,"currency":"EUR","highSeasonDaily":{"value":380,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"EUR"}}],"hours":{"office":"08:00–18:00","nightWatch":true},"contacts":[{"id":"nce-vhf","role":"HARBOURMASTER","channel":"VHF","value":"12","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"}],"shoreAccess":[{"id":"nce","kind":"AIRPORT","name":"Nice Côte d'Azur (NCE)","transferMinutes":{"value":[12,25],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"NCE"}},{"id":"tram","kind":"METRO","name":"Nice tramway Port Lympia","transferMinutes":{"value":[5,12],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"GTFS","id":"stop:port-lympia"}}],"connections":[{"marinaId":"HI-MC-PORT-HERCULE-MONACO","hours":{"value":0.6,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"h"}}],"congestion":{"peakLabel":"MODERATE — a working city port","windows":[{"months":[7,8],"typicalOccupancy":{"value":0.8,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["summer visitors","ferry peaks"]}],"forecastNote":"Ferry movements, not yacht occupancy, dominate the harbour picture."},"reliability":[{"id":"crew-change","label":"Crew-change reliability","band":"HIGH","why":["Airport adjacency","True port of entry"],"method":"Infrastructure, not score","estimate":false}],"emergency":{"medicalOnSite":false,"nearestTrauma":"CHU Nice","medevac":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"City-level access; tram is step-free on current stock."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Port Lympia guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Port Lympia captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Yacht reservations are separate from commercial berth planning."},"guestAmenities":["Promenade des Anglais 10 min","old town","crew flights"],"captainNotes":["Useful as a logistics harbour. Do not plan it as a quiet yacht basin."],"conflicts":[]},{"id":"HI-FR-PIERRE-CANTO-CANNES","canonicalHarborId":"db56b20c-1843-5f5d-b1a8-cd12475e6dea","slug":"pierre-canto-cannes","name":"Port Pierre Canto","country":"France","countryCode":"FR","region":"west-med","cruisingGround":"Côte d'Azur","locality":"Cannes","coordinates":{"lat":43.5408,"lon":7.0375},"timezone":"Europe/Paris","summary":"The more yacht-serious of Cannes' two main harbours: a purpose-built basin on the Pointe de la Croisette used heavily during the Film Festival and Cannes Yachting Festival.","identity":{"operator":{"value":"Port Pierre Canto","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Ville de Cannes","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"12","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BREAKWATER","yachtFocus":"SUPER","coordination":"COORDINATED","maxLoaM":{"value":70,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":12,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":4.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.3,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"Southerlies can make the entrance uncomfortable"}},"basins":[{"id":"pierre-canto-cannes-main","name":"Main basin","controllingDepthM":{"value":4.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"pierre-canto-cannes-a","basinId":"pierre-canto-cannes-main","name":"Visitor quays","mooring":"ALONGSIDE","berthCount":{"value":300,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":70,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"pc-s","label":"<20 m","loaFromM":8,"loaToM":20,"count":{"value":180,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A"]},{"id":"pc-l","label":"20–70 m","loaFromM":20,"loaToM":70,"count":{"value":80,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A"]}],"restrictions":[{"id":"pc-fest","kind":"ISPS","summary":"Festival and yachting-festival weeks impose temporary access control and quay freezes.","sourceId":"HM","confidence":"VERIFIED","seasonal":"May and September"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":false,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Harbour watch on VHF; formalities usually via Cannes port complex."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"]},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["16A","32A","63A","125A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Gated pontoons","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["Croisette hotels","Cannes market"],"concierge":true},"fees":[{"referenceLoaM":24,"currency":"EUR","highSeasonDaily":{"value":220,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"EUR"}},{"referenceLoaM":45,"currency":"EUR","highSeasonDaily":{"value":780,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"EUR"}}],"hours":{"office":"08:00–20:00 in season","nightWatch":true},"contacts":[{"id":"pc-vhf","role":"HARBOURMASTER","channel":"VHF","value":"12","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"}],"shoreAccess":[{"id":"nce","kind":"AIRPORT","name":"Nice Côte d'Azur (NCE)","transferMinutes":{"value":[30,55],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"NCE"}},{"id":"ceg","kind":"AIRPORT","name":"Cannes–Mandelieu (CEQ)","transferMinutes":{"value":[15,25],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"CEQ"}}],"connections":[{"marinaId":"HI-FR-SAINT-TROPEZ","hours":{"value":2.5,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"h"}},{"marinaId":"HI-FR-PORT-VAUBAN-ANTIBES","hours":{"value":0.8,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"h"}}],"congestion":{"peakLabel":"VERY_HIGH during Festival and Yachting Festival","windows":[{"months":[5,9],"typicalOccupancy":{"value":0.99,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["Cannes Film Festival","Cannes Yachting Festival"]}],"forecastNote":"Event calendars dominate occupancy more than weather."},"reliability":[{"id":"event","label":"Event-week reliability","band":"VERY_HIGH","why":["Two annual events freeze visitor inventory"],"method":"Calendar overlay","estimate":false}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Cannes hospital","medevac":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Level access to the Croisette side."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Port Pierre Canto guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Port Pierre Canto captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Festival allocation is a separate product from ordinary visitor reservations."},"guestAmenities":["Croisette","Palais des Festivals 15–20 min","beach clubs"],"captainNotes":["Do not confuse Pierre Canto with the Vieux Port; depths and max LOA differ."],"conflicts":[]},{"id":"HI-FR-PORT-VAUBAN-ANTIBES","canonicalHarborId":"e49ccc86-0232-5ed5-9302-76c81f8a82c0","slug":"port-vauban-antibes","name":"Port Vauban","unlocode":"FRANT","country":"France","countryCode":"FR","region":"west-med","cruisingGround":"Côte d'Azur","locality":"Antibes","coordinates":{"lat":43.5874,"lon":7.1288},"timezone":"Europe/Paris","summary":"Europe's largest yachting harbour by berth count, with a dedicated inner world of 20–165 m berths behind Vauban's ramparts. The planning problem is not whether a 24 m berth exists — it is whether the inner quays will take your 55 m in July.","identity":{"operator":{"value":"Regie Portuaire d'Antibes / Vauban 21","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Ville d'Antibes / DDTM 06","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"established":1970,"status":"OPERATIONAL","vhf":{"value":"09","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BREAKWATER","yachtFocus":"MEGA","coordination":"COORDINATED","maxLoaM":{"value":165,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"Published inner-quay capability for the largest berths","unit":"m"},"maxBeamM":{"value":26,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":7,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":6.5,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.4,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"port-vauban-antibes-inner","name":"Inner / old port & megayacht quays","controllingDepthM":{"value":7,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},{"id":"port-vauban-antibes-outer","name":"Outer marina basins","controllingDepthM":{"value":4,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"port-vauban-antibes-mega","basinId":"port-vauban-antibes-inner","name":"Quai des Milliardaires","mooring":"ALONGSIDE","berthCount":{"value":23,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":165,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true},{"id":"port-vauban-antibes-visitors","basinId":"port-vauban-antibes-outer","name":"Visitor pontoons","mooring":"ALONGSIDE","berthCount":{"value":1600,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":30,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"v-small","label":"Standard <18 m","loaFromM":6,"loaToM":18,"count":{"value":1200,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A"]},{"id":"v-mid","label":"18–40 m","loaFromM":18,"loaToM":40,"count":{"value":400,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["32A","63A","125A"]},{"id":"v-mega","pierId":"port-vauban-antibes-mega","label":"40–165 m","loaFromM":40,"loaToM":165,"count":{"value":23,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["125A","400A"]}],"restrictions":[{"id":"vb-night","kind":"NIGHT_ENTRY","summary":"Night entry accepted in settled weather; call VHF 09 before the heads.","sourceId":"HM","confidence":"VERIFIED"},{"id":"vb-speed","kind":"SPEED","summary":"No wake in all basins.","sourceId":"HM","confidence":"VERIFIED"},{"id":"vb-pos","kind":"POSIDONIA","summary":"Anchoring on posidonia around Cap d'Antibes is restricted; use designated zones only.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Permanence on VHF 09; customs typically weekday office hours plus on-call."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel","petrol"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["16A","32A","63A","125A","400A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"MARINA_WIDE","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Gated pontoons + harbour patrol","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["Antibes market","yacht provisioners","shipyard services"],"concierge":true},"yard":{"traveliftT":{"value":150,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"refit":true,"hardstand":true,"notes":"Antibes remains a serious wintering and technical stop."},"fees":[{"referenceLoaM":24,"currency":"EUR","highSeasonDaily":{"value":180,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band","unit":"EUR"},"notes":"High-season daily band"},{"referenceLoaM":50,"currency":"EUR","highSeasonDaily":{"value":850,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"EUR"}}],"hours":{"office":"08:00–20:00 summer; 08:30–18:00 winter","nightWatch":true},"contacts":[{"id":"vb-vhf","role":"HARBOURMASTER","channel":"VHF","value":"09","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"vb-office","role":"MARINA_OFFICE","channel":"WEB","value":"port-vauban.com","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"}],"shoreAccess":[{"id":"nce","kind":"AIRPORT","name":"Nice Côte d'Azur (NCE)","transferMinutes":{"value":[20,40],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"NCE"}},{"id":"rail","kind":"RAIL","name":"Antibes SNCF","transferMinutes":{"value":[10,20],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"GTFS","id":"stop:antibes"}},{"id":"walk","kind":"WALK","name":"Vieil Antibes","transferMinutes":{"value":[8,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[{"marinaId":"HI-MC-PORT-HERCULE-MONACO","hours":{"value":1.2,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"h"}},{"marinaId":"HI-FR-PIERRE-CANTO-CANNES","hours":{"value":0.8,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"h"}}],"congestion":{"peakLabel":"HIGH July–August; COORDINATED year-round for 40 m+","windows":[{"months":[7,8],"typicalOccupancy":{"value":0.95,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["high summer","Cannes/Monaco overflow"]},{"months":[5,6,9],"typicalOccupancy":{"value":0.8,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["shoulder events","charter turnarounds"]}],"forecastNote":"Occupancy ratios are climatology derived from berth-class scarcity, not live counts."},"reliability":[{"id":"inner-quay","label":"Inner-quay availability","band":"HIGH","why":["23 published megayacht berths","Antibes is a home port, not only a stopover"],"method":"Declared inventory vs seasonal demand","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Antibes / Nice hospitals","medevac":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Office can brief accessible routes into Vieil Antibes."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Port Vauban guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Port Vauban captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Visitor list for <20 m is still a reservation problem in August. 40 m+ is coordinated months ahead."},"guestAmenities":["rampart walk","Marché Provençal","Picasso museum","shipyard cafés"],"captainNotes":["Call 09 before the entrance.","Quai des Milliardaires is a named inventory — do not treat outer-basin depth as inner-quay depth."],"conflicts":[]},{"id":"HI-IT-PORTO-CERVO","canonicalHarborId":"39866965-01f9-5fc8-ab12-17cad2c32ee0","slug":"porto-cervo","name":"Porto Cervo Marina","unlocode":"ITPCE","country":"Italy","countryCode":"IT","region":"west-med","cruisingGround":"Costa Smeralda, Sardinia","locality":"Porto Cervo","coordinates":{"lat":41.1362,"lon":9.5334},"timezone":"Europe/Rome","summary":"The Costa Smeralda flagship: a designed harbour for large yachts, Yacht Club Costa Smeralda, and a short, violent high season. Winter is almost a different country.","identity":{"operator":{"value":"Marina di Porto Cervo","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Capitaneria / Consorzio Costa Smeralda","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"established":1962,"status":"OPERATIONAL","vhf":{"value":"09","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BREAKWATER","yachtFocus":"MEGA","coordination":"COORDINATED","maxLoaM":{"value":100,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":18,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":6,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":5.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.3,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"porto-cervo-main","name":"Porto Cervo marina","controllingDepthM":{"value":5.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"porto-cervo-yacht","basinId":"porto-cervo-main","name":"Yacht quays","mooring":"ALONGSIDE","berthCount":{"value":400,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":100,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"pcv-s","label":"<25 m","loaFromM":10,"loaToM":25,"count":{"value":220,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["32A","63A"]},{"id":"pcv-l","label":"25–100 m","loaFromM":25,"loaToM":100,"count":{"value":80,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["125A","400A"]}],"restrictions":[{"id":"pcv-season","kind":"NIGHT_ENTRY","summary":"Night entry is straightforward in season with a call; winter watch is thinner.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Seasonal. Olbia is the robust commercial alternative."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel","MGO"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["32A","63A","125A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina + resort security","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["Cervo village","Olbia logistics"],"concierge":true},"fees":[{"referenceLoaM":30,"currency":"EUR","highSeasonDaily":{"value":520,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"EUR"}},{"referenceLoaM":55,"currency":"EUR","highSeasonDaily":{"value":1600,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"EUR"}}],"hours":{"office":"08:00–20:00 June–September","nightWatch":true,"seasonal":"Minimal December–March"},"contacts":[{"id":"pcv-vhf","role":"HARBOURMASTER","channel":"VHF","value":"09","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"}],"shoreAccess":[{"id":"olb","kind":"AIRPORT","name":"Olbia Costa Smeralda (OLB)","transferMinutes":{"value":[30,50],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"OLB"}}],"connections":[{"marinaId":"HI-IT-PORTOFINO","hours":{"value":12,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"h"}}],"congestion":{"peakLabel":"VERY_HIGH late July–August","windows":[{"months":[7,8],"typicalOccupancy":{"value":0.98,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["Costa Smeralda season","YCCS calendar"]}],"forecastNote":"The season is short and almost binary."},"reliability":[{"id":"season","label":"Winter service reliability","band":"HIGH","why":["Many services close","Yard work usually happens elsewhere"],"method":"Seasonal operations","estimate":false}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Olbia","medevac":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Marina village is manageable; surrounding granite is not."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Porto Cervo Marina guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Porto Cervo Marina captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"High-season contracts dominate. Visitor list is a remainder market."},"guestAmenities":["YCCS","Passeggiata","hotel peninsula"],"captainNotes":["Book early or winter somewhere else.","Maddalena and the straits have their own traffic and wind rules."],"conflicts":[]},{"id":"HI-ME-PORTO-MONTENEGRO","canonicalHarborId":"30192f1f-3425-541f-96dc-3f95430a571a","slug":"porto-montenegro","name":"Porto Montenegro","unlocode":"METIV","country":"Montenegro","countryCode":"ME","region":"adriatic","cruisingGround":"Boka Kotorska / South Adriatic","locality":"Tivat","coordinates":{"lat":42.4334,"lon":18.6931},"timezone":"Europe/Podgorica","summary":"A purpose-built Adriatic megayacht harbour in the Bay of Kotor with published capability well above 150 m. Tivat airport is minutes away. VAT and flag rules are part of the operational brief, not a footnote.","identity":{"operator":{"value":"Porto Montenegro","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Port of Tivat / Montenegro maritime authority","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"established":2006,"status":"OPERATIONAL","vhf":{"value":"71","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BASIN","yachtFocus":"MEGA","coordination":"COORDINATED","maxLoaM":{"value":250,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":32,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":8,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":7.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.4,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"porto-montenegro-main","name":"Main basin","controllingDepthM":{"value":7.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"porto-montenegro-visitors","basinId":"porto-montenegro-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":450,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":250,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <30 m","loaFromM":8,"loaToM":30,"count":{"value":380,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 30–250 m","loaFromM":30,"loaToM":250,"count":{"value":70,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"porto-montenegro-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"24-hour marina operations; officialdom follows port schedules."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel","MGO"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["32A","63A","125A","400A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"ISPS-capable quay control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":true},"yard":{"traveliftT":{"value":440,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"refit":true,"hardstand":true},"fees":[{"referenceLoaM":30,"currency":"EUR","highSeasonDaily":{"value":280,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"EUR"},"notes":"High-season daily band — not a quote"},{"referenceLoaM":50,"currency":"EUR","highSeasonDaily":{"value":900,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"EUR"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–20:00","nightWatch":true},"contacts":[{"id":"porto-montenegro-vhf","role":"HARBOURMASTER","channel":"VHF","value":"71","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"porto-montenegro-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"porto-montenegro-air","kind":"AIRPORT","name":"Tivat (TIV)","transferMinutes":{"value":[8,18],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"TIV"}},{"id":"porto-montenegro-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[{"marinaId":"HI-HR-ACI-DUBROVNIK","hours":{"value":4,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"h"}}],"congestion":{"peakLabel":"HIGH July–August; wintering is a second, quieter peak","windows":[{"months":[7,8],"typicalOccupancy":{"value":0.9,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["Adriatic charter season","home-ported megayacht fleet"]}],"forecastNote":"Headline max LOA is real for a handful of quays — not for the visitor fingers."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["Adriatic charter season","home-ported megayacht fleet"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Kotor / Podgorica hospitals","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Porto Montenegro guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Porto Montenegro captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Marina reservation is not a VTS product. Bay traffic is separate."},"guestAmenities":["village","regatta field","crew facilities","shipyard"],"captainNotes":["Boka is a fjord-like wind machine; the marina itself is sheltered.","Confirm temporary admission / VAT position before a long stay."],"conflicts":[]},{"id":"HI-IT-PORTOFINO","canonicalHarborId":"23e34278-041b-54d3-801f-91c8b620e107","slug":"portofino","name":"Portofino","unlocode":"ITPTF","country":"Italy","countryCode":"IT","region":"west-med","cruisingGround":"Ligurian coast","locality":"Portofino","coordinates":{"lat":44.3034,"lon":9.2097},"timezone":"Europe/Rome","summary":"A tiny natural harbour with a global reputation. There is no meaningful megayacht marina here — there is a piazzetta, a handful of stern-to spots, and a bay. Santa Margherita and Genoa absorb the overflow.","identity":{"operator":{"value":"Comune di Portofino / local concession","sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Capitaneria di Porto","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"11","sourceId":"HM","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"NATURAL","yachtFocus":"SUPER","coordination":"COORDINATED","maxLoaM":{"value":40,"sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":8,"sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":3.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":3,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.3,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"HIGH","sourceId":"OR","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"Scirocco and libeccio make the harbour untenable"}},"basins":[{"id":"portofino-nat","name":"Natural harbour","controllingDepthM":{"value":3,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"portofino-piazza","basinId":"portofino-nat","name":"Town quay / piazzetta","mooring":"STERN_TO_ANCHOR","berthCount":{"value":20,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":40,"sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"ptf","label":"Town quay","loaFromM":12,"loaToM":40,"count":{"value":15,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["32A"]}],"restrictions":[{"id":"ptf-anchor","kind":"ANCHOR","summary":"The harbour and much of the marine reserve are tightly regulated.","sourceId":"HM","confidence":"VERIFIED"},{"id":"ptf-night","kind":"NIGHT_ENTRY","summary":"First-time night entry is a poor plan.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":false,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":false,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Clear at Genoa or another port of entry.","notes":"Not a primary port of entry."},"services":{"fuel":{"available":{"value":false,"sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":[],"notes":"Fuel in Santa Margherita or Rapallo."},"water":{"potable":{"value":true,"sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V"],"amps":["16A","32A"],"hz":["50Hz"]},"waste":{"black":false,"grey":false,"pumpOut":false,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Village harbour, public quay","sourceId":"OR","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["village only"],"concierge":false},"fees":[{"referenceLoaM":25,"currency":"EUR","highSeasonDaily":{"value":500,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"Peak summer town-quay reports","unit":"EUR"},"notes":"Peak summer town-quay reports"}],"hours":{"office":"Seasonal desk","nightWatch":false},"contacts":[{"id":"ptf-cap","role":"HARBOURMASTER","channel":"VHF","value":"11","lastVerified":"2026-04-01","sourceId":"HM","confidence":"REPORTED"}],"shoreAccess":[{"id":"goa","kind":"AIRPORT","name":"Genoa (GOA)","transferMinutes":{"value":[50,90],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"GOA"}},{"id":"rail","kind":"RAIL","name":"Santa Margherita Ligure","transferMinutes":{"value":[15,30],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"No station in Portofino itself.","unit":"min"},"notes":"No station in Portofino itself."}],"connections":[{"marinaId":"HI-MC-PORT-HERCULE-MONACO","hours":{"value":4.5,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"h"}}],"congestion":{"peakLabel":"VERY_HIGH May–September","windows":[{"months":[5,6,7,8,9],"typicalOccupancy":{"value":1,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["day visitors","tiny quay"]}],"forecastNote":"If you need a guaranteed berth, you are not coming to Portofino."},"reliability":[{"id":"weather","label":"Harbour tenability","band":"HIGH","why":["Open to southerlies","No breakwater worth the name"],"method":"Pilot notes","estimate":false}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Rapallo / Genoa","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":false,"sourceId":"OR","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":false,"assistance":"Stone quay, steps, crowds."},"sustainability":{"pumpOut":false,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Portofino guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Portofino captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Informal, scarce, and often relationship-based. Not a slot product."},"guestAmenities":["piazzetta","Brown hotels","Abbey walk"],"captainNotes":["Have Santa Margherita as the real harbour.","Do not treat this dossier as a booking product."],"conflicts":[]},{"id":"HI-ES-PUERTO-BANUS","canonicalHarborId":"9e128ccf-688f-5eb8-a098-688674c5ce42","slug":"puerto-banus","name":"Puerto Banús","localName":"Puerto José Banús","unlocode":"ESMJV","country":"Spain","countryCode":"ES","region":"west-med","cruisingGround":"Costa del Sol","locality":"Nueva Andalucía, Marbella","coordinates":{"lat":36.4878,"lon":-4.9526},"timezone":"Europe/Madrid","summary":"The Costa del Sol's showpiece marina: dense, fashionable, and shallower than many first-time captains expect. A 45 m visit is a planning conversation; a 70 m visit is usually a different harbour.","identity":{"operator":{"value":"Puerto Banús marina administration","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Junta de Andalucía / local port office","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"established":1970,"status":"OPERATIONAL","vhf":{"value":"09","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BREAKWATER","yachtFocus":"SUPER","coordination":"COORDINATED","maxLoaM":{"value":55,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"Practical visiting maximum is below the folklore number","unit":"m"},"maxBeamM":{"value":10,"sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":3.8,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":3.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.6,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"Levante and rare Atlantic swell"}},"basins":[{"id":"puerto-banus-main","name":"Main commercial marina","controllingDepthM":{"value":3.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"puerto-banus-central","basinId":"puerto-banus-main","name":"Central fingers","mooring":"ALONGSIDE","berthCount":{"value":900,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":55,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"pb-s","label":"<18 m","loaFromM":8,"loaToM":18,"count":{"value":600,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A"]},{"id":"pb-l","label":"18–55 m","loaFromM":18,"loaToM":55,"count":{"value":120,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A"]}],"restrictions":[{"id":"pb-draft","kind":"AIR_DRAFT","summary":"Draft, not air draft, is the controlling constraint. Confirm latest sounding.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Seasonal watch."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel","petrol"]},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["16A","32A","63A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina security + public waterfront","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["Banús shopping","Marbella provisioners"],"concierge":true},"fees":[{"referenceLoaM":25,"currency":"EUR","highSeasonDaily":{"value":240,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"EUR"}},{"referenceLoaM":40,"currency":"EUR","highSeasonDaily":{"value":620,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"EUR"}}],"hours":{"office":"09:00–21:00 in season","nightWatch":true},"contacts":[{"id":"pb-vhf","role":"HARBOURMASTER","channel":"VHF","value":"09","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"}],"shoreAccess":[{"id":"agp","kind":"AIRPORT","name":"Málaga (AGP)","transferMinutes":{"value":[40,70],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"AGP"}}],"connections":[{"marinaId":"HI-ES-MARINA-IBIZA","hours":{"value":14,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"h"}}],"congestion":{"peakLabel":"VERY_HIGH July–August","windows":[{"months":[7,8],"typicalOccupancy":{"value":0.96,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["Costa del Sol season"]}],"forecastNote":"Depth and LOA reject more yachts than the reservation desk does."},"reliability":[{"id":"depth","label":"Controlling depth","band":"HIGH","why":["Shallow compared with Côte d'Azur megayacht harbours"],"method":"Charted depth vs typical 40 m draft","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Marbella / Málaga hospitals","medevac":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Level waterfront promenade."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Puerto Banús guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Puerto Banús captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Many fingers are privately held. Published berth count is not visitor inventory."},"guestAmenities":["waterfront retail","beach clubs","Marbella 10 min"],"captainNotes":["Soundings matter more than the postcard.","Sotogrande is the usual larger-yacht alternative west of here."],"conflicts":[{"id":"loa","topic":"Maximum LOA","detail":"Marketing photographs of very large yachts do not match typical visiting envelope. Treat 55 m as REPORTED and confirm."}]},{"id":"HI-LC-RODNEY-BAY","canonicalHarborId":"47c9940d-e068-521a-b9d9-de0ec5d1e038","slug":"rodney-bay","name":"Rodney Bay Marina","unlocode":"LCCAS","country":"Saint Lucia","countryCode":"LC","region":"caribbean","cruisingGround":"Windward Islands","locality":"Rodney Bay, Gros Islet","coordinates":{"lat":14.0762,"lon":-60.9488},"timezone":"America/St_Lucia","summary":"IGY Rodney Bay: the ARC landfall marina, a lagoon behind a channel, and Saint Lucia's yachting capital. Pitons are a day sail, not the harbour.","identity":{"operator":{"value":"IGY Rodney Bay Marina","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"SLASPA / Customs Rodney Bay","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"16/12","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"LAGOON","yachtFocus":"CRUISING","coordination":"ADVISED","maxLoaM":{"value":50,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":10,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":3.8,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":3.4,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.4,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"rodney-bay-main","name":"Main basin","controllingDepthM":{"value":3.4,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"rodney-bay-visitors","basinId":"rodney-bay-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":250,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":50,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <24 m","loaFromM":8,"loaToM":24,"count":{"value":235,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 24–50 m","loaFromM":24,"loaToM":50,"count":{"value":15,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"rodney-bay-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"rodney-bay-cane","kind":"HURRICANE_PROTOCOL","summary":"Hurricane / cyclone plan is first-class operational truth here. Haul-out priority and evacuation rules override ordinary reservations.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Seasonal; Castries is the commercial alternative."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["120V","208V","240V","480V"],"amps":["16A","32A","63A"],"hz":["60Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":false},"yard":{"traveliftT":{"value":75,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"refit":true,"hardstand":true},"fees":[{"referenceLoaM":30,"currency":"USD","highSeasonDaily":{"value":140,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–17:00","nightWatch":true},"contacts":[{"id":"rodney-bay-vhf","role":"HARBOURMASTER","channel":"VHF","value":"16/12","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"rodney-bay-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"rodney-bay-air","kind":"AIRPORT","name":"Hewanorra (UVF)","transferMinutes":{"value":[70,110],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"UVF"}},{"id":"rodney-bay-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"VERY_HIGH during ARC arrival; HIGH winter","windows":[{"months":[12,1,2,3],"typicalOccupancy":{"value":0.92,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["ARC landfall","Windward charter"]}],"forecastNote":"ARC week is a different operational regime. Do not use winter-average occupancy."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["ARC landfall","Windward charter"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Tapion / Victoria Hospital","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Rodney Bay Marina guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Rodney Bay Marina captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"ARC allocation is a separate seasonal product."},"guestAmenities":["marina village","Reduit Beach","crew services"],"captainNotes":["Channel and lagoon depths after rain silt.","George F.L. Charles (SLU) is closer than UVF for crew on regional flights."],"conflicts":[]},{"id":"HI-IE-CROSSHAVEN","canonicalHarborId":"f3eb50fb-d41a-53ec-894b-e01f24a4b17b","slug":"crosshaven","name":"Royal Cork / Crosshaven","country":"Ireland","countryCode":"IE","region":"northern-europe","cruisingGround":"South coast of Ireland","locality":"Crosshaven, Cork Harbour","coordinates":{"lat":51.807,"lon":-8.401},"timezone":"Europe/Dublin","summary":"The world's oldest yacht club in a serious natural harbour. Atlantic landfall, racing pedigree, and a weather-hole that is still a tide-and-mud conversation up the Owenabue.","identity":{"operator":{"value":"Royal Cork Yacht Club / Crosshaven boatyard cluster","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Port of Cork","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"16/14","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"NATURAL","yachtFocus":"RACING","coordination":"ADVISED","maxLoaM":{"value":30,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":7,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":3,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":2.6,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":3.8,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"crosshaven-main","name":"Main basin","controllingDepthM":{"value":2.6,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"crosshaven-visitors","basinId":"crosshaven-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":250,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":30,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <20 m","loaFromM":8,"loaToM":20,"count":{"value":244,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 20–30 m","loaFromM":20,"loaToM":30,"count":{"value":6,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"crosshaven-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Port of Cork can arrange; do not assume a night yacht desk."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":false},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["16A","32A","63A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":false},"yard":{"traveliftT":{"value":50,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"refit":true,"hardstand":true},"fees":[{"referenceLoaM":30,"currency":"EUR","highSeasonDaily":{"value":90,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"EUR"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"09:00–17:00","nightWatch":true},"contacts":[{"id":"crosshaven-vhf","role":"HARBOURMASTER","channel":"VHF","value":"16/14","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"crosshaven-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"crosshaven-air","kind":"AIRPORT","name":"Cork (ORK)","transferMinutes":{"value":[25,45],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"ORK"}},{"id":"crosshaven-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH during Cork Week and summer weekends","windows":[{"months":[7],"typicalOccupancy":{"value":0.84,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["club racing","Atlantic arrivals"]}],"forecastNote":"Cork Harbour is huge; Crosshaven inventory is not."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"MODERATE","why":["club racing","Atlantic arrivals"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Cork University Hospital","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Royal Cork / Crosshaven guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Royal Cork / Crosshaven captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Club vs boatyard vs visitor pontoon."},"guestAmenities":["RCYC","village","Cork city 30 min"],"captainNotes":["Commercial Cork is a different berth product.","Atlantic swell at the harbour mouth is not the creek."],"conflicts":[]},{"id":"HI-HK-ROYAL-HONG-KONG-YC","canonicalHarborId":"098a3cf0-5854-5f86-8137-dbf4ee899c8c","slug":"royal-hong-kong-yc","name":"Royal Hong Kong Yacht Club — Kellett Island","unlocode":"HKHKG","country":"Hong Kong","countryCode":"HK","region":"asia","cruisingGround":"Pearl River Delta / South China Sea","locality":"Causeway Bay, Hong Kong Island","coordinates":{"lat":22.2835,"lon":114.1842},"timezone":"Asia/Hong_Kong","summary":"A club island in Causeway Bay typhoon shelter geography. The Pearl River is a commercial universe; this is a member-driven yacht node with Shelter Cove and Middle Island as related identities.","identity":{"operator":{"value":"Royal Hong Kong Yacht Club","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Marine Department Hong Kong","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"72","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BASIN","yachtFocus":"RACING","coordination":"ADVISED","maxLoaM":{"value":25,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":6,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":2.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":2.2,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":1.8,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"royal-hong-kong-yc-main","name":"Main basin","controllingDepthM":{"value":2.2,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"royal-hong-kong-yc-visitors","basinId":"royal-hong-kong-yc-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":180,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":25,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <18 m","loaFromM":8,"loaToM":18,"count":{"value":176,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 18–25 m","loaFromM":18,"loaToM":25,"count":{"value":4,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"royal-hong-kong-yc-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"royal-hong-kong-yc-cane","kind":"HURRICANE_PROTOCOL","summary":"Hurricane / cyclone plan is first-class operational truth here. Haul-out priority and evacuation rules override ordinary reservations.","sourceId":"HM","confidence":"VERIFIED"},{"id":"hk-typhoon","kind":"HURRICANE_PROTOCOL","summary":"Tropical cyclone signals reorder mooring, haul-out and crew movement. Treat as protocol, not as occupancy.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Hong Kong is a major port. Club desks are club hours."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":false},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["16A","32A","63A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":false},"fees":[{"referenceLoaM":30,"currency":"USD","highSeasonDaily":{"value":120,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"club hours","nightWatch":true},"contacts":[{"id":"royal-hong-kong-yc-vhf","role":"HARBOURMASTER","channel":"VHF","value":"72","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"royal-hong-kong-yc-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"royal-hong-kong-yc-air","kind":"AIRPORT","name":"Hong Kong (HKG)","transferMinutes":{"value":[35,60],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"HKG"}},{"id":"royal-hong-kong-yc-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH winter racing; typhoon days are a different regime","windows":[{"months":[10,11,12,1],"typicalOccupancy":{"value":0.9,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["club racing","typhoon shelter demand"]}],"forecastNote":"Typhoon signal changes every priority in the harbour. This is not a congestion forecast; it is a safety protocol."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["club racing","typhoon shelter demand"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Ruttonjee / Queen Mary Hospital","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":false,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":false,"assistance":"Historic or uneven access; request assistance before arrival."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Royal Hong Kong Yacht Club — Kellett Island guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Royal Hong Kong Yacht Club — Kellett Island captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Member vs visitor. Typhoon mooring plans are a third list."},"guestAmenities":["club","Causeway Bay","Island East"],"captainNotes":["Visitors need an introduction. This is a club.","Aberdeen and the commercial typhoon shelters are different geographies."],"conflicts":[]},{"id":"HI-TH-ROYAL-PHUKET-MARINA","canonicalHarborId":"17d3dabf-887d-5a9e-9df5-e8ea5053cd47","slug":"royal-phuket-marina","name":"Royal Phuket Marina","unlocode":"THHKT","country":"Thailand","countryCode":"TH","region":"asia","cruisingGround":"Andaman Sea / Phang Nga","locality":"Koh Kaew, Phuket","coordinates":{"lat":7.9684,"lon":98.3862},"timezone":"Asia/Bangkok","summary":"A canal marina on Phuket's east side with residences, a yard and a locked-feeling geography. Yacht Haven to the north is the deeper, more superyacht-oriented cousin.","identity":{"operator":{"value":"Royal Phuket Marina","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Phuket customs / Marine Department","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"68","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"CANAL","yachtFocus":"CRUISING","coordination":"ADVISED","maxLoaM":{"value":35,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":8,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":3.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":3.2,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":2.2,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"royal-phuket-marina-main","name":"Main basin","controllingDepthM":{"value":3.2,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"royal-phuket-marina-visitors","basinId":"royal-phuket-marina-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":300,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":35,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <22 m","loaFromM":8,"loaToM":22,"count":{"value":290,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 22–35 m","loaFromM":22,"loaToM":35,"count":{"value":10,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"royal-phuket-marina-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Phuket clearance is scheduled; Ao Chalong is the classic yacht desk."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":false},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["16A","32A","63A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":false},"yard":{"traveliftT":{"value":70,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"refit":true,"hardstand":true},"fees":[{"referenceLoaM":30,"currency":"USD","highSeasonDaily":{"value":90,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:30–17:30","nightWatch":true},"contacts":[{"id":"royal-phuket-marina-vhf","role":"HARBOURMASTER","channel":"VHF","value":"68","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"royal-phuket-marina-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"royal-phuket-marina-air","kind":"AIRPORT","name":"Phuket (HKT)","transferMinutes":{"value":[15,30],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"HKT"}},{"id":"royal-phuket-marina-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH December–March","windows":[{"months":[12,1,2,3],"typicalOccupancy":{"value":0.88,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["Andaman high season","residential occupancy"]}],"forecastNote":"Canal silt and tide reject more yachts than the reservation book."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["Andaman high season","residential occupancy"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Bangkok Hospital Phuket / Vachira","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Royal Phuket Marina guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Royal Phuket Marina captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Residential vs visitor. Two inventories."},"guestAmenities":["marina village","Phuket Town 20 min"],"captainNotes":["Ao Chalong clearance may still be required.","Yacht Haven Phuket is the usual 40 m+ answer."],"conflicts":[]},{"id":"HI-US-RYBOVICH-WEST-PALM","canonicalHarborId":"bc29d91e-c57e-5c4e-a334-7641e2d901b7","slug":"rybovich-west-palm","name":"Rybovich","country":"United States","countryCode":"US","region":"north-america","cruisingGround":"Florida","locality":"West Palm Beach","coordinates":{"lat":26.7055,"lon":-80.0488},"timezone":"America/New_York","summary":"A legendary sportfish and superyacht yard-marina on the Lake Worth Lagoon. The intelligence product here is haul-out capacity, running-gear work and Palm Beach season logistics — not a beach-club berth.","identity":{"operator":{"value":"Rybovich","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"USCG / Port of Palm Beach","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"16/10","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"CANAL","yachtFocus":"SUPER","coordination":"ADVISED","maxLoaM":{"value":80,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":12,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":3.2,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":3,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.9,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"rybovich-west-palm-main","name":"Main basin","controllingDepthM":{"value":3,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"rybovich-west-palm-visitors","basinId":"rybovich-west-palm-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":80,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":80,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <25 m","loaFromM":8,"loaToM":25,"count":{"value":55,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 25–80 m","loaFromM":25,"loaToM":80,"count":{"value":25,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"rybovich-west-palm-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"rybovich-west-palm-cane","kind":"HURRICANE_PROTOCOL","summary":"Hurricane / cyclone plan is first-class operational truth here. Haul-out priority and evacuation rules override ordinary reservations.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Palm Beach / Riviera CBP by arrangement."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["120V","208V","240V","480V"],"amps":["32A","63A","125A","400A"],"hz":["60Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":true},"yard":{"traveliftT":{"value":150,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"refit":true,"hardstand":true},"fees":[{"referenceLoaM":50,"currency":"USD","highSeasonDaily":{"value":480,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"07:30–17:00","nightWatch":true},"contacts":[{"id":"rybovich-west-palm-vhf","role":"HARBOURMASTER","channel":"VHF","value":"16/10","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"rybovich-west-palm-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"rybovich-west-palm-air","kind":"AIRPORT","name":"Palm Beach (PBI)","transferMinutes":{"value":[12,25],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"PBI"}},{"id":"rybovich-west-palm-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH Palm Beach season December–March","windows":[{"months":[12,1,2,3],"typicalOccupancy":{"value":0.9,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["yard","Palm Beach social season"]}],"forecastNote":"A yard slot and a transient slip are different products that share a waterfront."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["yard","Palm Beach social season"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"St. Mary's / Good Samaritan, West Palm","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Rybovich guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Rybovich captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Yard booking ≠ transient marina reservation."},"guestAmenities":["yard","West Palm / Palm Beach 10 min"],"captainNotes":["Book the yard independently of the transient dock.","Lake Worth bridges belong in the passage plan."],"conflicts":[]},{"id":"HI-AU-SANCTUARY-COVE","canonicalHarborId":"1993e9f1-5ec5-55b6-a925-858826cfcdec","slug":"sanctuary-cove","name":"Sanctuary Cove","country":"Australia","countryCode":"AU","region":"oceania","cruisingGround":"Gold Coast / Moreton Bay approaches","locality":"Hope Island, Gold Coast","coordinates":{"lat":-27.863,"lon":153.359},"timezone":"Australia/Brisbane","summary":"A lock-and-residence marina that hosts the Sanctuary Cove International Boat Show. The Gold Coast City Marina down the road is the refit giant; this is the resort basin.","identity":{"operator":{"value":"Sanctuary Cove Marina","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Gold Coast Waterways / Maritime Safety QLD","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"74","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"CANAL","yachtFocus":"MIXED","coordination":"ADVISED","maxLoaM":{"value":35,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":8,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":2.8,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":2.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":1.4,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"sanctuary-cove-main","name":"Main basin","controllingDepthM":{"value":2.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"sanctuary-cove-visitors","basinId":"sanctuary-cove-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":290,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":35,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <20 m","loaFromM":8,"loaToM":20,"count":{"value":280,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 20–35 m","loaFromM":20,"loaToM":35,"count":{"value":10,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"sanctuary-cove-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"sc-lock","kind":"BRIDGE","summary":"Locked residential waterway. Lock booking is not a berth reservation.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":false,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":false,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Clear in Brisbane or the Gold Coast as directed.","notes":"Not a primary ABF yacht port."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":false},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["16A","32A","63A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":false},"fees":[{"referenceLoaM":30,"currency":"AUD","highSeasonDaily":{"value":140,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"AUD"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–17:00","nightWatch":true},"contacts":[{"id":"sanctuary-cove-vhf","role":"HARBOURMASTER","channel":"VHF","value":"74","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"sanctuary-cove-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"sanctuary-cove-air","kind":"AIRPORT","name":"Gold Coast (OOL)","transferMinutes":{"value":[20,40],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"OOL"}},{"id":"sanctuary-cove-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"VERY_HIGH during the boat show; HIGH winter (Qld dry season)","windows":[{"months":[5,6,7],"typicalOccupancy":{"value":0.9,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["boat show","residential occupancy"]}],"forecastNote":"Show week is a different product. Locks still cycle in the rain."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["boat show","residential occupancy"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Gold Coast University Hospital","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Sanctuary Cove guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Sanctuary Cove captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY","LOCK_BOOKING","BRIDGE_OPENING"],"notes":"Show allocation vs residential vs visitor."},"guestAmenities":["resort","golf","dining"],"captainNotes":["Locked canal. Treat lock as LOCK_BOOKING.","GCCM Coomera is the travelift conversation."],"conflicts":[]},{"id":"HI-US-SAUSALITO","canonicalHarborId":"507a83cc-d4e6-5f9e-9f87-7ec585267168","slug":"sausalito","name":"Sausalito Yacht Harbor","country":"United States","countryCode":"US","region":"north-america","cruisingGround":"San Francisco Bay","locality":"Sausalito","coordinates":{"lat":37.859,"lon":-122.485},"timezone":"America/Los_Angeles","summary":"A fog, current and ferry harbour on the north side of the Golden Gate. Beautiful, tidal, and operationally unlike Southern California. The Gate itself is the approach.","identity":{"operator":{"value":"Sausalito Yacht Harbor / neighbouring harbors","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"USCG Sector San Francisco","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"16/09","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"NATURAL","yachtFocus":"CRUISING","coordination":"ADVISED","maxLoaM":{"value":30,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":7,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":2.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":2.2,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":1.8,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"sausalito-main","name":"Main basin","controllingDepthM":{"value":2.2,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"sausalito-visitors","basinId":"sausalito-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":500,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":30,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <22 m","loaFromM":8,"loaToM":22,"count":{"value":495,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 22–30 m","loaFromM":22,"loaToM":30,"count":{"value":5,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"sausalito-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":false,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":false,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"San Francisco is the CBP port.","notes":"Domestic bay harbour."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":false},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["120V","208V","240V","480V"],"amps":["16A","32A","63A"],"hz":["60Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":false},"fees":[{"referenceLoaM":30,"currency":"USD","highSeasonDaily":{"value":160,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"09:00–17:00","nightWatch":true},"contacts":[{"id":"sausalito-vhf","role":"HARBOURMASTER","channel":"VHF","value":"16/09","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"sausalito-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"sausalito-air","kind":"AIRPORT","name":"San Francisco (SFO)","transferMinutes":{"value":[35,70],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"SFO"}},{"id":"sausalito-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH September (Fleet Week / America's Cup legacy events) and summer weekends","windows":[{"months":[7,8,9],"typicalOccupancy":{"value":0.86,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["liveaboards","bay racing"]}],"forecastNote":"Current and fog, not berth count, cancel more arrivals."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["liveaboards","bay racing"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Marin General; SF trauma centers across the Gate","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":false,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":false,"assistance":"Historic or uneven access; request assistance before arrival."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Sausalito Yacht Harbor guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Sausalito Yacht Harbor captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Several small harbors share the waterfront. Book a named operator."},"guestAmenities":["Sausalito waterfront","ferry to Ferry Building"],"captainNotes":["Tide and Gate timing are the brief.","This is not a 50 m product."],"conflicts":[]},{"id":"HI-US-SHELTER-ISLAND-SD","canonicalHarborId":"aba55d22-8a56-5478-8a2c-08df1c04ef00","slug":"shelter-island-sd","name":"Shelter Island / San Diego","unlocode":"USSAN","country":"United States","countryCode":"US","region":"north-america","cruisingGround":"Southern California / Mexico jump-off","locality":"San Diego","coordinates":{"lat":32.7144,"lon":-117.224},"timezone":"America/Los_Angeles","summary":"San Diego's yacht cluster on Shelter Island: several marinas and yards facing a real naval and commercial harbour. The usual last US harbour on a westbound Mexico passage.","identity":{"operator":{"value":"Multiple Shelter Island operators","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Port of San Diego / USCG","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"16/12","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"NATURAL","yachtFocus":"CRUISING","coordination":"ADVISED","maxLoaM":{"value":50,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":10,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":4,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":3.6,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":1.5,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"shelter-island-sd-main","name":"Main basin","controllingDepthM":{"value":3.6,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"shelter-island-sd-visitors","basinId":"shelter-island-sd-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":600,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":50,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <24 m","loaFromM":8,"loaToM":24,"count":{"value":580,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 24–50 m","loaFromM":24,"loaToM":50,"count":{"value":20,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"shelter-island-sd-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"San Diego is a full CBP port. Hours still exist."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["120V","208V","240V","480V"],"amps":["16A","32A","63A"],"hz":["60Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":false},"yard":{"traveliftT":{"value":100,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"refit":true,"hardstand":true},"fees":[{"referenceLoaM":30,"currency":"USD","highSeasonDaily":{"value":140,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–17:00 typical","nightWatch":true},"contacts":[{"id":"shelter-island-sd-vhf","role":"HARBOURMASTER","channel":"VHF","value":"16/12","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"shelter-island-sd-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"shelter-island-sd-air","kind":"AIRPORT","name":"San Diego (SAN)","transferMinutes":{"value":[15,30],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"SAN"}},{"id":"shelter-island-sd-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH October Baja-haulout and summer weekends","windows":[{"months":[6,7,8,10],"typicalOccupancy":{"value":0.84,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["Baja staging","naval-city yacht club traffic"]}],"forecastNote":"Name the marina on the island. The island is not one inventory."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"MODERATE","why":["Baja staging","naval-city yacht club traffic"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Scripps / UCSD hospitals","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Shelter Island / San Diego guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Shelter Island / San Diego captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Operator-specific reservations inside one harbour identity."},"guestAmenities":["yacht clubs","Point Loma","crew flights"],"captainNotes":["Naval traffic is not decorative.","Ensenada is the next formal story, not a casual continuation."],"conflicts":[]},{"id":"HI-SX-SIMPSON-BAY-SXM","canonicalHarborId":"e6e16f3a-13c5-5e2a-822b-ceec3f269c41","slug":"simpson-bay-sxm","name":"Simpson Bay Marina","unlocode":"SXPHI","country":"Sint Maarten","countryCode":"SX","region":"caribbean","cruisingGround":"Leeward Islands","locality":"Simpson Bay Lagoon","coordinates":{"lat":18.0368,"lon":-63.1145},"timezone":"America/Lower_Princes","summary":"The Caribbean's technical and crew-change capital. A lagoon behind a bridge: air draft and opening times are as important as berth length. Isle de Sol and the French side are neighbouring, not identical, products.","identity":{"operator":{"value":"Simpson Bay Marina","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Sint Maarten Port / Harbour","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"16/12","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"LAGOON","yachtFocus":"SUPER","coordination":"ADVISED","maxLoaM":{"value":80,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":14,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":4,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":3.6,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.4,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"simpson-bay-sxm-main","name":"Main basin","controllingDepthM":{"value":3.6,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"simpson-bay-sxm-visitors","basinId":"simpson-bay-sxm-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":220,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":80,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <25 m","loaFromM":8,"loaToM":25,"count":{"value":180,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 25–80 m","loaFromM":25,"loaToM":80,"count":{"value":40,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"simpson-bay-sxm-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"simpson-bay-sxm-cane","kind":"HURRICANE_PROTOCOL","summary":"Hurricane / cyclone plan is first-class operational truth here. Haul-out priority and evacuation rules override ordinary reservations.","sourceId":"HM","confidence":"VERIFIED"},{"id":"simpson-bay-sxm-bridge","kind":"BRIDGE","summary":"Air draft is constrained by a bridge at approximately 4 m. This is not a soft guideline.","sourceId":"HO","confidence":"VERIFIED"},{"id":"sxm-bridge","kind":"BRIDGE","summary":"Lagoon entry is bridge-controlled. Treat openings as a lock/bridge allocation, never as a berth reservation.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Sint Maarten is a workhorse entry port."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel","MGO"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["120V","208V","240V","480V"],"amps":["32A","63A","125A","400A"],"hz":["60Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":true},"yard":{"traveliftT":{"value":150,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"refit":true,"hardstand":true},"fees":[{"referenceLoaM":30,"currency":"USD","highSeasonDaily":{"value":160,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"},{"referenceLoaM":50,"currency":"USD","highSeasonDaily":{"value":380,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–17:00","nightWatch":true},"contacts":[{"id":"simpson-bay-sxm-vhf","role":"HARBOURMASTER","channel":"VHF","value":"16/12","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"simpson-bay-sxm-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"simpson-bay-sxm-air","kind":"AIRPORT","name":"Princess Juliana (SXM)","transferMinutes":{"value":[8,18],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"SXM"}},{"id":"simpson-bay-sxm-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH December–April; hurricane prep in late summer","windows":[{"months":[12,1,2,3,4],"typicalOccupancy":{"value":0.9,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["crew change","refit","St. Barths overflow"]}],"forecastNote":"Bridge openings cluster arrivals. A reserved berth can still wait on the outside."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["crew change","refit","St. Barths overflow"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"SXM Medical Center","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Simpson Bay Marina guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Simpson Bay Marina captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY","LOCK_BOOKING","BRIDGE_OPENING"],"notes":"Berth reservation ≠ bridge opening ≠ French-side formalities."},"guestAmenities":["lagoon services","crew bars","airport"],"captainNotes":["Bridge air draft and opening schedule are first-class constraints.","French-side Marigot / Fort Louis is a different customs story."],"conflicts":[]},{"id":"HI-GB-ST-KATHARINE-DOCKS","canonicalHarborId":"48696ce5-5180-5a43-9d9a-321425c0966d","slug":"st-katharine-docks","name":"St Katharine Docks","unlocode":"GBLON","country":"United Kingdom","countryCode":"GB","region":"northern-europe","cruisingGround":"Thames / London","locality":"Tower Bridge, London","coordinates":{"lat":51.507,"lon":-0.0715},"timezone":"Europe/London","summary":"A locked historic dock beside Tower Bridge. Air draft, lock booking, the Thames Barrier and the river's commercial traffic are all first-class constraints. The product is London, not a cruising basin.","identity":{"operator":{"value":"St Katharine Docks Marina","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"PLA / marina lock-keeper","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"80","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BASIN","yachtFocus":"MIXED","coordination":"COORDINATED","maxLoaM":{"value":50,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":9,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":3,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxAirDraftM":{"value":12,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"Fixed overhead constraint","unit":"m"}},"hydrography":{"controllingDepthM":{"value":2.8,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":6.5,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"st-katharine-docks-main","name":"Main basin","controllingDepthM":{"value":2.8,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"st-katharine-docks-visitors","basinId":"st-katharine-docks-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":150,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":50,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <22 m","loaFromM":8,"loaToM":22,"count":{"value":142,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 22–50 m","loaFromM":22,"loaToM":50,"count":{"value":8,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"st-katharine-docks-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"skd-lock","kind":"BRIDGE","summary":"Locked dock on a tidal commercial river. Lock booking, PLA reporting and air draft are separate constraints.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"PLA and lock hours govern. London is not a 24-hour yacht lock."},"services":{"fuel":{"available":{"value":false,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":[],"bunkerAlongside":false},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["16A","32A","63A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":false},"fees":[{"referenceLoaM":30,"currency":"GBP","highSeasonDaily":{"value":280,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"GBP"},"notes":"High-season daily band — not a quote"},{"referenceLoaM":50,"currency":"GBP","highSeasonDaily":{"value":600,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"GBP"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–18:00","nightWatch":true},"contacts":[{"id":"st-katharine-docks-vhf","role":"HARBOURMASTER","channel":"VHF","value":"80","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"st-katharine-docks-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"st-katharine-docks-air","kind":"AIRPORT","name":"London City (LCY)","transferMinutes":{"value":[15,30],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"LCY"}},{"id":"st-katharine-docks-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH summer and event weeks on the Thames","windows":[{"months":[6,7,8],"typicalOccupancy":{"value":0.9,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["London destination","tiny locked inventory"]}],"forecastNote":"A City Airport transfer does not help if you miss the lock."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["London destination","tiny locked inventory"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Royal London Hospital","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"St Katharine Docks guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"St Katharine Docks captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY","LOCK_BOOKING","BRIDGE_OPENING"],"notes":"Berth reservation ≠ lock booking ≠ PLA reporting."},"guestAmenities":["Tower Bridge","City","hotels"],"captainNotes":["Book the lock as LOCK_BOOKING. Book the berth as BERTH_RESERVATION. Never one object.","Bridges and the Barrier have their own rules."],"conflicts":[]},{"id":"HI-US-SUNSET-HARBOUR-MIAMI","canonicalHarborId":"5b1f9134-e2f0-5bdb-89dd-d0dc56d6c6cf","slug":"sunset-harbour-miami","name":"Sunset Harbour Yacht Club","unlocode":"USMIA","country":"United States","countryCode":"US","region":"north-america","cruisingGround":"South Florida","locality":"Miami Beach","coordinates":{"lat":25.809,"lon":-80.1435},"timezone":"America/New_York","summary":"A Miami Beach yacht club basin used as an urban crew-change and owner-weekend harbour. Grove, Sea Isle and Miami Beach Marina are neighbouring products with different depths and politics.","identity":{"operator":{"value":"Sunset Harbour Yacht Club","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"City of Miami Beach / USCG","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"16/09","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BASIN","yachtFocus":"SUPER","coordination":"ADVISED","maxLoaM":{"value":55,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":10,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":2.4,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":2.2,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.8,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"sunset-harbour-miami-main","name":"Main basin","controllingDepthM":{"value":2.2,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"sunset-harbour-miami-visitors","basinId":"sunset-harbour-miami-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":50,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":55,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <24 m","loaFromM":8,"loaToM":24,"count":{"value":38,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 24–55 m","loaFromM":24,"loaToM":55,"count":{"value":12,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"sunset-harbour-miami-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"sunset-harbour-miami-cane","kind":"HURRICANE_PROTOCOL","summary":"Hurricane / cyclone plan is first-class operational truth here. Haul-out priority and evacuation rules override ordinary reservations.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":false,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":false,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Clear at a designated Miami / PortMiami location.","notes":"Club marina, not the primary CBP yacht desk."},"services":{"fuel":{"available":{"value":false,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":[],"bunkerAlongside":false},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["120V","208V","240V","480V"],"amps":["16A","32A","63A"],"hz":["60Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":true},"fees":[{"referenceLoaM":30,"currency":"USD","highSeasonDaily":{"value":260,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–18:00","nightWatch":true},"contacts":[{"id":"sunset-harbour-miami-vhf","role":"HARBOURMASTER","channel":"VHF","value":"16/09","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"sunset-harbour-miami-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"sunset-harbour-miami-air","kind":"AIRPORT","name":"Miami (MIA)","transferMinutes":{"value":[20,45],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"MIA"}},{"id":"sunset-harbour-miami-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH December–March and Art Basel week","windows":[{"months":[12,1,2,3],"typicalOccupancy":{"value":0.92,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["Miami season","club contracts"]}],"forecastNote":"Draft and club access reject more yachts than the remaining empty slip count."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["Miami season","club contracts"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Mount Sinai Medical Center, Miami Beach","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Sunset Harbour Yacht Club guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Sunset Harbour Yacht Club captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Club members vs transient. Two lists."},"guestAmenities":["Sunset Harbour dining","Miami Beach"],"captainNotes":["Confirm latest basin sounding.","Miami Beach Marina on the Government Cut side is a different depth story."],"conflicts":[]},{"id":"HI-ZA-VA-WATERFRONT","canonicalHarborId":"1decf92e-65c5-5535-aac7-1a10b405a29f","slug":"va-waterfront","name":"V&A Waterfront","unlocode":"ZACPT","country":"South Africa","countryCode":"ZA","region":"africa","cruisingGround":"Cape Town / South Atlantic","locality":"Cape Town","coordinates":{"lat":-33.903,"lon":18.422},"timezone":"Africa/Johannesburg","summary":"A working harbour tourist complex with a genuine superyacht quay on the Atlantic corner of Africa. Table Bay weather, port control and a Cape-to-Rio / World Race stopover culture.","identity":{"operator":{"value":"V&A Waterfront / yacht basin operators","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Transnet National Ports Authority","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"14","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BREAKWATER","yachtFocus":"SUPER","coordination":"ADVISED","maxLoaM":{"value":90,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":16,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":6,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":5.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":1.6,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"HIGH","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"va-waterfront-main","name":"Main basin","controllingDepthM":{"value":5.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"va-waterfront-visitors","basinId":"va-waterfront-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":160,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":90,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <30 m","loaFromM":8,"loaToM":30,"count":{"value":148,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 30–90 m","loaFromM":30,"loaToM":90,"count":{"value":12,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"va-waterfront-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"cpt-wind","kind":"NIGHT_ENTRY","summary":"Table Bay and the harbour entrance are weather-limited. Night first arrival is a serious decision.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Cape Town is a major port. Yacht clearance is scheduled."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel","MGO"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["32A","63A","125A","400A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":true},"yard":{"traveliftT":{"value":50,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"refit":true,"hardstand":true},"fees":[{"referenceLoaM":30,"currency":"ZAR","highSeasonDaily":{"value":120,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"ZAR"},"notes":"High-season daily band — not a quote"},{"referenceLoaM":50,"currency":"ZAR","highSeasonDaily":{"value":400,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"ZAR"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–17:00","nightWatch":true},"contacts":[{"id":"va-waterfront-vhf","role":"HARBOURMASTER","channel":"VHF","value":"14","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"va-waterfront-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"va-waterfront-air","kind":"AIRPORT","name":"Cape Town (CPT)","transferMinutes":{"value":[20,40],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"CPT"}},{"id":"va-waterfront-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH December–February and race stopovers","windows":[{"months":[12,1,2],"typicalOccupancy":{"value":0.84,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["Cape summer","race stopovers"]}],"forecastNote":"A south-easter can make the basin untenable even with a reserved berth."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"MODERATE","why":["Cape summer","race stopovers"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Groote Schuur / Cape Town trauma","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"V&A Waterfront guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"V&A Waterfront captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Yacht basin vs commercial berth vs RCYC."},"guestAmenities":["V&A","city","Table Mountain"],"captainNotes":["Port Control before the basin. This is a commercial harbour.","Royal Cape Yacht Club is a neighbouring identity."],"conflicts":[]},{"id":"HI-NZ-VIADUCT-AUCKLAND","canonicalHarborId":"ee8c3007-838e-568c-bea6-b6eac5ac2590","slug":"viaduct-auckland","name":"Viaduct Harbour","unlocode":"NZAKL","country":"New Zealand","countryCode":"NZ","region":"oceania","cruisingGround":"Hauraki Gulf","locality":"Auckland","coordinates":{"lat":-36.842,"lon":174.763},"timezone":"Pacific/Auckland","summary":"Auckland's America's Cup waterfront. City, gulf and a biosecurity regime that is among the world's strictest. Westhaven is the giant next door; Viaduct is the showcase basin.","identity":{"operator":{"value":"Viaduct Harbour / Panuku","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Ports of Auckland / MPI biosecurity","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"16/12","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BASIN","yachtFocus":"SUPER","coordination":"ADVISED","maxLoaM":{"value":80,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":14,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":4.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":2.6,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"viaduct-auckland-main","name":"Main basin","controllingDepthM":{"value":4.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"viaduct-auckland-visitors","basinId":"viaduct-auckland-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":30,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":80,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <25 m","loaFromM":8,"loaToM":25,"count":{"value":18,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 25–80 m","loaFromM":25,"loaToM":80,"count":{"value":12,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"viaduct-auckland-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"nz-bio","kind":"ISPS","summary":"New Zealand biosecurity (MPI) can detain a yacht independently of a berth reservation.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Auckland can clear; MPI hours are not optional."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["32A","63A","125A","400A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":true},"fees":[{"referenceLoaM":30,"currency":"NZD","highSeasonDaily":{"value":180,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"NZD"},"notes":"High-season daily band — not a quote"},{"referenceLoaM":50,"currency":"NZD","highSeasonDaily":{"value":420,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"NZD"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–17:00","nightWatch":true},"contacts":[{"id":"viaduct-auckland-vhf","role":"HARBOURMASTER","channel":"VHF","value":"16/12","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"viaduct-auckland-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"viaduct-auckland-air","kind":"AIRPORT","name":"Auckland (AKL)","transferMinutes":{"value":[30,55],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"AKL"}},{"id":"viaduct-auckland-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH summer (Dec–Feb) and major race events","windows":[{"months":[12,1,2],"typicalOccupancy":{"value":0.9,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["Auckland summer","gulf racing"]}],"forecastNote":"Biosecurity can hold a yacht longer than the marina can."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["Auckland summer","gulf racing"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Auckland City Hospital","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Viaduct Harbour guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Viaduct Harbour captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Viaduct vs Westhaven vs commercial Auckland. Three identities."},"guestAmenities":["Viaduct dining","city","Westhaven overflow"],"captainNotes":["MPI is a first-class arrival constraint.","Westhaven has the volume; Viaduct has the postcard."],"conflicts":[]},{"id":"HI-VG-VIRGIN-GORDA-YACHT-HARBOUR","canonicalHarborId":"b9e5f2dc-684a-554f-bf36-0234d0847965","slug":"virgin-gorda-yacht-harbour","name":"Virgin Gorda Yacht Harbour","country":"British Virgin Islands","countryCode":"VG","region":"caribbean","cruisingGround":"Virgin Islands","locality":"Spanish Town, Virgin Gorda","coordinates":{"lat":18.4482,"lon":-64.437},"timezone":"America/Tortola","summary":"The Spanish Town marina: a clearance option, a provisioning stop, and the usual gate to North Sound. Not the Bitter End, not Leverick — confirm which Virgin Gorda you actually booked.","identity":{"operator":{"value":"Virgin Gorda Yacht Harbour","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"BVI Customs Spanish Town","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"16/11","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BREAKWATER","yachtFocus":"CRUISING","coordination":"ADVISED","maxLoaM":{"value":35,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":8,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":3,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":2.7,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.3,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"virgin-gorda-yacht-harbour-main","name":"Main basin","controllingDepthM":{"value":2.7,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"virgin-gorda-yacht-harbour-visitors","basinId":"virgin-gorda-yacht-harbour-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":140,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":35,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <22 m","loaFromM":8,"loaToM":22,"count":{"value":134,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 22–35 m","loaFromM":22,"loaToM":35,"count":{"value":6,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"virgin-gorda-yacht-harbour-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"virgin-gorda-yacht-harbour-cane","kind":"HURRICANE_PROTOCOL","summary":"Hurricane / cyclone plan is first-class operational truth here. Haul-out priority and evacuation rules override ordinary reservations.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Limited. Road Town is the robust alternative."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":false},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["120V","208V","240V","480V"],"amps":["16A","32A","63A"],"hz":["60Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":false},"fees":[{"referenceLoaM":30,"currency":"USD","highSeasonDaily":{"value":130,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–16:00","nightWatch":true},"contacts":[{"id":"virgin-gorda-yacht-harbour-vhf","role":"HARBOURMASTER","channel":"VHF","value":"16/11","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"virgin-gorda-yacht-harbour-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"virgin-gorda-yacht-harbour-air","kind":"AIRPORT","name":"Virgin Gorda (VIJ)","transferMinutes":{"value":[8,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"VIJ"}},{"id":"virgin-gorda-yacht-harbour-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH December–April","windows":[{"months":[12,1,2,3,4],"typicalOccupancy":{"value":0.88,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["BVI charter","North Sound transit"]}],"forecastNote":"North Sound weather can trap yachts that only planned a night here."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["BVI charter","North Sound transit"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Clinic on island; Peebles Hospital by ferry","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":false,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":false,"assistance":"Historic or uneven access; request assistance before arrival."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Virgin Gorda Yacht Harbour guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Virgin Gorda Yacht Harbour captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Visitor slips vs long-term local boats."},"guestAmenities":["Spanish Town","Baths by taxi or tender"],"captainNotes":["Draft and swell at the entrance are the usual surprises.","North Sound is a different harbour system."],"conflicts":[]},{"id":"HI-SE-STOCKHOLM-WASAHAMNEN","canonicalHarborId":"f593b563-7d95-5224-8fda-6e897a4781c2","slug":"stockholm-wasahamnen","name":"Wasahamnen","unlocode":"SESTO","country":"Sweden","countryCode":"SE","region":"northern-europe","cruisingGround":"Stockholm archipelago","locality":"Djurgården, Stockholm","coordinates":{"lat":59.328,"lon":18.094},"timezone":"Europe/Stockholm","summary":"A city-centre guest harbour on Djurgården. The archipelago is the real product; this is the capital landing. Bridges, guest-harbour etiquette and a short ice-free season.","identity":{"operator":{"value":"Stockholms gästhamnar","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Ports of Stockholm","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"16","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"NATURAL","yachtFocus":"CRUISING","coordination":"ADVISED","maxLoaM":{"value":30,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":7,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":3,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":2.8,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.1,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"stockholm-wasahamnen-main","name":"Main basin","controllingDepthM":{"value":2.8,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"stockholm-wasahamnen-visitors","basinId":"stockholm-wasahamnen-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":200,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":30,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <20 m","loaFromM":8,"loaToM":20,"count":{"value":196,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 20–30 m","loaFromM":20,"loaToM":30,"count":{"value":4,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"stockholm-wasahamnen-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Schengen / Swedish Border Guard as published."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":false},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["16A","32A","63A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"BASIC","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":false},"fees":[{"referenceLoaM":30,"currency":"EUR","highSeasonDaily":{"value":110,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"EUR"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"seasonal","nightWatch":true},"contacts":[{"id":"stockholm-wasahamnen-vhf","role":"HARBOURMASTER","channel":"VHF","value":"16","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"stockholm-wasahamnen-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"stockholm-wasahamnen-air","kind":"AIRPORT","name":"Stockholm Arlanda (ARN)","transferMinutes":{"value":[40,70],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"ARN"}},{"id":"stockholm-wasahamnen-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH Midsummer–August","windows":[{"months":[6,7,8],"typicalOccupancy":{"value":0.9,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["archipelago season","city guest harbour"]}],"forecastNote":"Winter is not a yacht product here."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["archipelago season","city guest harbour"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Karolinska","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Wasahamnen guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Wasahamnen captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Municipal guest harbour. Not a megayacht contract product."},"guestAmenities":["Djurgården","Vasa Museum","city ferries"],"captainNotes":["The archipelago has hundreds of natural harbours. This dossier is the city node.","Larger yachts use commercial Stockholm berths."],"conflicts":[]},{"id":"HI-VI-YACHT-HAVEN-GRANDE","canonicalHarborId":"14654f5b-6e7c-53ac-b07f-379c117a7b8c","slug":"yacht-haven-grande","name":"Yacht Haven Grande","unlocode":"VISTT","country":"U.S. Virgin Islands","countryCode":"VI","region":"caribbean","cruisingGround":"Virgin Islands","locality":"Charlotte Amalie, St. Thomas","coordinates":{"lat":18.3354,"lon":-64.9204},"timezone":"America/St_Thomas","summary":"IGY's megayacht marina on St. Thomas: US customs, deep alongside berths, and a cruise-port neighbour. The usual first USVI landfall for large yachts coming from the east.","identity":{"operator":{"value":"IGY Yacht Haven Grande","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"USVI Port Authority / US CBP","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"16/10","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BREAKWATER","yachtFocus":"MEGA","coordination":"COORDINATED","maxLoaM":{"value":150,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":22,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":7,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":6.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":0.3,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"yacht-haven-grande-main","name":"Main basin","controllingDepthM":{"value":6.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"yacht-haven-grande-visitors","basinId":"yacht-haven-grande-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":50,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":150,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <30 m","loaFromM":8,"loaToM":30,"count":{"value":12,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 30–150 m","loaFromM":30,"loaToM":150,"count":{"value":38,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"yacht-haven-grande-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"},{"id":"yacht-haven-grande-cane","kind":"HURRICANE_PROTOCOL","summary":"Hurricane / cyclone plan is first-class operational truth here. Haul-out priority and evacuation rules override ordinary reservations.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"US CBP hours matter. After-hours overtime is a cost and a constraint."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel","MGO"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["120V","208V","240V","480V"],"amps":["32A","63A","125A","400A"],"hz":["60Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"ISPS-capable quay control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":true},"fees":[{"referenceLoaM":30,"currency":"USD","highSeasonDaily":{"value":280,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"},{"referenceLoaM":50,"currency":"USD","highSeasonDaily":{"value":750,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–17:00","nightWatch":true},"contacts":[{"id":"yacht-haven-grande-vhf","role":"HARBOURMASTER","channel":"VHF","value":"16/10","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"yacht-haven-grande-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"yacht-haven-grande-air","kind":"AIRPORT","name":"Cyril E. King (STT)","transferMinutes":{"value":[10,20],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"STT"}},{"id":"yacht-haven-grande-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH December–April","windows":[{"months":[12,1,2,3,4],"typicalOccupancy":{"value":0.9,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["USVI winter circuit","US-flag convenience"]}],"forecastNote":"Cruise-ship days congest the town, not necessarily the yacht quay."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["USVI winter circuit","US-flag convenience"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Schneider Regional Medical Center","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Yacht Haven Grande guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Yacht Haven Grande captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"IGY reservation. CBP overtime is not a marina slot."},"guestAmenities":["marina village","Charlotte Amalie","crew flights to MIA"],"captainNotes":["This is a US port of entry. Jones Act / cabotage questions belong in the brief for commercial movements.","Crown Bay is a different basin."],"conflicts":[]},{"id":"HI-TH-YACHT-HAVEN-PHUKET","canonicalHarborId":"20942fb3-9aa1-59bb-92dd-a314856283b7","slug":"yacht-haven-phuket","name":"Yacht Haven Phuket","country":"Thailand","countryCode":"TH","region":"asia","cruisingGround":"Andaman Sea / Phang Nga Bay","locality":"Tha Ruea, north Phuket","coordinates":{"lat":8.168,"lon":98.346},"timezone":"Asia/Bangkok","summary":"Phuket's northern superyacht and charter marina at the mouth of Phang Nga Bay. Deeper and more yacht-serious than the east-coast canal marinas, with a genuine monsoon-season personality.","identity":{"operator":{"value":"Yacht Haven Phuket","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Phuket Marine Department / Customs","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"68","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BREAKWATER","yachtFocus":"SUPER","coordination":"ADVISED","maxLoaM":{"value":80,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":14,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":6,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":5.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":2.4,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"MODERATE","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"yacht-haven-phuket-main","name":"Main basin","controllingDepthM":{"value":5.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"yacht-haven-phuket-visitors","basinId":"yacht-haven-phuket-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":210,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":80,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <28 m","loaFromM":8,"loaToM":28,"count":{"value":190,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 28–80 m","loaFromM":28,"loaToM":80,"count":{"value":20,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"yacht-haven-phuket-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Arrange. Ao Chalong remains a common yacht clearance."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["32A","63A","125A","400A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"Marina access control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":true},"yard":{"traveliftT":{"value":200,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"refit":true,"hardstand":true},"fees":[{"referenceLoaM":30,"currency":"USD","highSeasonDaily":{"value":110,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"},{"referenceLoaM":50,"currency":"USD","highSeasonDaily":{"value":320,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"USD"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–17:00","nightWatch":true},"contacts":[{"id":"yacht-haven-phuket-vhf","role":"HARBOURMASTER","channel":"VHF","value":"68","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"yacht-haven-phuket-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"yacht-haven-phuket-air","kind":"AIRPORT","name":"Phuket (HKT)","transferMinutes":{"value":[30,50],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"HKT"}},{"id":"yacht-haven-phuket-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"HIGH December–April","windows":[{"months":[12,1,2,3,4],"typicalOccupancy":{"value":0.86,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["Andaman charter","bay cruising"]}],"forecastNote":"Southwest monsoon changes tenability more than occupancy percentages do."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"HIGH","why":["Andaman charter","bay cruising"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Bangkok Hospital Phuket","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Yacht Haven Phuket guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Yacht Haven Phuket captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Charter base contracts vs transient."},"guestAmenities":["on-site dining","Phang Nga day cruising"],"captainNotes":["National park and wake rules in the bay are enforced.","This is not Ao Po, not Boat Lagoon."],"conflicts":[]},{"id":"HI-AE-YAS-MARINA","canonicalHarborId":"cdd849a0-23a4-54bb-9d32-52f1ef14d8c1","slug":"yas-marina","name":"Yas Marina","unlocode":"AEAUH","country":"United Arab Emirates","countryCode":"AE","region":"middle-east","cruisingGround":"Arabian Gulf","locality":"Yas Island, Abu Dhabi","coordinates":{"lat":24.4672,"lon":54.607},"timezone":"Asia/Dubai","summary":"A Formula 1 marina: deep, designed, and rewritten every race week. Outside the Grand Prix it is a competent Gulf superyacht harbour with hotel and park infrastructure.","identity":{"operator":{"value":"Yas Marina","sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"authority":{"value":"Abu Dhabi Ports / Coast Guard","sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"status":"OPERATIONAL","vhf":{"value":"16/71","sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"envelope":{"harborType":"BASIN","yachtFocus":"MEGA","coordination":"COORDINATED","maxLoaM":{"value":150,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxBeamM":{"value":24,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"maxDraftM":{"value":7,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}},"hydrography":{"controllingDepthM":{"value":6.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"tideRangeM":{"value":1.6,"sourceId":"HO","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"surgeRisk":{"value":"LOW","sourceId":"OR","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"basins":[{"id":"yas-marina-main","name":"Main basin","controllingDepthM":{"value":6.5,"sourceId":"HO","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"}}],"piers":[{"id":"yas-marina-visitors","basinId":"yas-marina-main","name":"Visitor pontoons / quay","mooring":"ALONGSIDE","berthCount":{"value":150,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"maxLoaM":{"value":150,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"m"},"guestFacing":true}],"berthClasses":[{"id":"std","label":"Standard <35 m","loaFromM":8,"loaToM":35,"count":{"value":125,"sourceId":"OP","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["16A","32A","63A"]},{"id":"large","label":"Large yacht 35–150 m","loaFromM":35,"loaToM":150,"count":{"value":25,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"typicalPower":["63A","125A","400A"]}],"restrictions":[{"id":"yas-marina-speed","kind":"SPEED","summary":"Dead slow, no wake inside the harbour.","sourceId":"HM","confidence":"VERIFIED"}],"notices":[],"customs":{"portOfEntry":{"value":true,"sourceId":"PA","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"immigrationOnSite":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"afterHours":"Abu Dhabi commercial port system; yacht desk scheduled."},"services":{"fuel":{"available":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"grades":["diesel","MGO"],"bunkerAlongside":true},"water":{"potable":{"value":true,"sourceId":"OP","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"}},"shorePower":{"voltages":["230V","400V"],"amps":["32A","63A","125A","400A"],"hz":["50Hz"]},"waste":{"black":true,"grey":true,"pumpOut":true,"garbage":true},"wifi":{"value":"STRONG","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"security":{"value":"ISPS-capable quay control","sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"provisioning":["local provisioning","crew services"],"concierge":true},"fees":[{"referenceLoaM":50,"currency":"AED","highSeasonDaily":{"value":650,"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","notes":"High-season daily band — not a quote","unit":"AED"},"notes":"High-season daily band — not a quote"}],"hours":{"office":"08:00–18:00","nightWatch":true},"contacts":[{"id":"yas-marina-vhf","role":"HARBOURMASTER","channel":"VHF","value":"16/71","lastVerified":"2026-05-01","sourceId":"HM","confidence":"VERIFIED"},{"id":"yas-marina-em","role":"EMERGENCY","channel":"PHONE","value":"local emergency number","lastVerified":"2026-01-01","sourceId":"PA","confidence":"REPORTED"}],"shoreAccess":[{"id":"yas-marina-air","kind":"AIRPORT","name":"Abu Dhabi (AUH)","transferMinutes":{"value":[20,40],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"},"externalRef":{"system":"IATA","id":"AUH"}},{"id":"yas-marina-taxi","kind":"TAXI","name":"Harbour taxi rank","transferMinutes":{"value":[5,15],"sourceId":"OR","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"KNOWN","unit":"min"}}],"connections":[],"congestion":{"peakLabel":"EXTREME during F1 week","windows":[{"months":[11,12],"typicalOccupancy":{"value":0.95,"sourceId":"DRV","confidence":"ESTIMATED","observedAt":"2026-06-01","truthState":"DERIVED"},"drivers":["Abu Dhabi Grand Prix","Gulf winter"]}],"forecastNote":"Race week is a closed allocation. Do not use the annual average."},"reliability":[{"id":"occupancy","label":"Seasonal berth pressure","band":"VERY_HIGH","why":["Abu Dhabi Grand Prix","Gulf winter"],"method":"Climatology derived from declared inventory and seasonal demand — labelled estimate","estimate":true}],"emergency":{"medicalOnSite":false,"nearestTrauma":"Yas / Abu Dhabi hospitals","medevac":{"value":true,"sourceId":"PA","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"}},"accessibility":{"wheelchairPontoons":{"value":true,"sourceId":"OP","confidence":"REPORTED","observedAt":"2026-06-01","truthState":"KNOWN"},"accessibleToilets":true,"assistance":"Modern pontoon access reported; confirm specific pier."},"sustainability":{"pumpOut":true,"noDischargeZone":true,"shorePowerPreferred":true},"maps":[{"id":"guest","title":"Yas Marina guest harbor plan","mapClass":"GUEST_INFORMATIONAL","license":"Harbor Intelligence derived schematic","status":"DERIVED","safetyNote":"Informational only. Not for navigation, berthing or collision avoidance."},{"id":"captain","title":"Yas Marina captain briefing overlay","mapClass":"CAPTAIN_INFORMATIONAL","license":"Operator + hydrographic compilation","status":"DERIVED","safetyNote":"A derived briefing graphic must never masquerade as an official chart or port approach plate."},{"id":"official","title":"Official navigational document","mapClass":"OFFICIAL_NAVIGATIONAL_DOCUMENT","license":"National hydrographic office — not redistributed here","status":"UNAVAILABLE","safetyNote":"Carry the current official chart, harbour plan and notices. This ledger does not replace them."}],"observations":[{"kind":"OCCUPANCY_RATIO","unit":"ratio","coverage":"CLIMATOLOGY","estimateLabelRequired":true},{"kind":"ARRIVALS_PER_HOUR","unit":"calls/h","coverage":"HISTORICAL","estimateLabelRequired":true},{"kind":"WIND","unit":"kn","coverage":"CLIMATOLOGY","estimateLabelRequired":false},{"kind":"TIDE_HEIGHT","unit":"m","coverage":"CLIMATOLOGY","estimateLabelRequired":false}],"allocation":{"reservationRequired":{"value":true,"sourceId":"HM","confidence":"VERIFIED","observedAt":"2026-06-01","truthState":"KNOWN"},"kindsPresent":["BERTH_RESERVATION","DECLARED_CAPACITY"],"notes":"Event allocation vs ordinary winter contracts."},"guestAmenities":["Yas hotels","circuit","Ferrari World as a crew fact"],"captainNotes":["F1 week security is an ISPS-plus regime.","This is not the Abu Dhabi city Corniche marina."],"conflicts":[]}]}