.island-guide-overview{margin-bottom:clamp(2rem,4vw,3.5rem)}.island-guide-overview__heading{justify-content:space-between;align-items:end;gap:2rem;display:flex}.island-guide-overview__heading h2,.island-route-panel__heading h2{font-family:var(--font-display);letter-spacing:-.025em;margin:.4rem 0 0;font-size:clamp(2rem,4vw,3.25rem);font-weight:600;line-height:1.02}.island-guide-overview__heading p,.island-route-panel__heading p{max-width:39rem;color:var(--color-muted);margin:0;font-size:.84rem;line-height:1.65}.island-guide-overview .island-guide-overview__mobile-hint{color:var(--color-ink);margin:.9rem 0 -.35rem;font-size:.72rem;font-weight:750;display:none}.island-hero-media{background:var(--color-surface);grid-template-rows:minmax(0,1fr) auto;margin:0;display:grid}.newcomer-hero__image.island-hero-media img{min-height:0}.island-hero-media figcaption{color:var(--color-muted);padding:.55rem .8rem .65rem;font-size:.62rem;line-height:1.45}.island-hero-media figcaption a,.island-route-panel a:not(.venue-map-link),.island-guide-overview a{color:var(--color-lagoon);text-underline-offset:.15em;font-weight:700;text-decoration:underline}.island-route-panel{margin-inline:auto;max-width:70rem;margin-bottom:clamp(2.5rem,5vw,4.5rem)}.island-route-panel__heading{grid-template-columns:minmax(0,1fr) minmax(18rem,30rem);align-items:end;gap:2rem;margin-bottom:clamp(1.5rem,3vw,2.25rem);display:grid}.island-route-panel__heading p{max-width:30rem}.island-ferry-overview{border:1px solid var(--color-line);background:#eaf3f2;border-radius:.9rem;margin:0;scroll-margin-top:5.5rem;overflow:hidden}.island-ferry-overview__canvas{grid-template-columns:minmax(0,1.3fr) minmax(0,.9fr);align-items:center;display:grid;overflow:hidden}.island-ferry-overview__plot{aspect-ratio:12/5;min-width:0;position:relative;overflow:hidden}.island-ferry-overview__plot>svg{width:100%;height:100%;font-family:var(--font-sans);display:block}.island-map__sea{fill:#eaf3f2}.island-map__land,.island-map__offshore{fill:#f5f0e5;stroke-width:2px}.island-map__coast,.island-map__offshore{fill:none;stroke:#74847d;stroke-width:1.35px;vector-effect:non-scaling-stroke}.island-map__offshore{fill:#f5f0e5}.island-map__route-casing,.island-map__route-line,.island-map__route-hit{fill:none;stroke-linecap:round;vector-effect:non-scaling-stroke}.island-map__route-layer{cursor:pointer;opacity:.7;transition:opacity .16s}.island-map__route-layer.is-active{opacity:1}.island-map__route-layer.is-active .island-map__offshore{fill:#dceceb;stroke:var(--color-lagoon)}.island-map__route-hit{stroke:#0000;stroke-width:34px;pointer-events:stroke}.island-map__route-casing{stroke:#fffffff0;stroke-width:7px}.island-map__route-line{stroke:var(--color-lagoon);stroke-width:3.25px;transition:stroke-width .16s}.island-map__route-layer.is-active .island-map__route-line{stroke-width:5px}.island-map__arrival{fill:var(--color-ink);stroke:#fff;stroke-width:2px;vector-effect:non-scaling-stroke}.island-map__arrival-ring{fill:#ffffffb8}.island-map__terminal-ring{fill:#ffffffe6}.island-map__terminal{fill:var(--color-lagoon)}.island-map__terminal-number{fill:#fff;font-size:12px;font-weight:850}.island-map__context circle{fill:#6b7b75}.island-map__context text{fill:#5f6e69;font-size:12px;font-weight:680}.island-map__terminal-label{paint-order:stroke;stroke:#eaf3f2fa;stroke-width:4px;stroke-linejoin:round;fill:var(--color-ink);font-size:13px;font-weight:780}.island-map__island-label{paint-order:stroke;stroke:#eaf3f2fa;stroke-width:5px;stroke-linejoin:round;fill:var(--color-ink);font-size:17px;font-weight:850}.island-map__route-layer.is-active .island-map__island-label{fill:var(--color-lagoon)}.island-ferry-overview__island-controls{pointer-events:none;position:absolute;inset:0}.island-ferry-overview__island-button{top:var(--island-top);left:var(--island-left);width:1.8rem;height:1.8rem;color:var(--color-ink);cursor:pointer;font:inherit;pointer-events:auto;background:#fffffff5;border:2px solid #fff;border-radius:50%;place-items:center;padding:0;font-weight:800;display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 4px 12px #12303133}.island-ferry-overview__island-button:after{content:"";width:44px;height:44px;position:absolute}.island-ferry-overview__island-button[data-route=west-island]{--island-left:25.1557%;--island-top:78.6024%}.island-ferry-overview__island-button[data-route=wuzhizhou]{--island-left:49.643%;--island-top:66.6676%}.island-ferry-overview__island-button[data-route=boundary-island]{--island-left:78.0967%;--island-top:22.981%}.island-ferry-overview__island-button[aria-pressed=true]{border-color:var(--color-lagoon);background:var(--color-lagoon);color:#fff;box-shadow:0 8px 24px #12525440}.island-ferry-overview__island-button:focus-visible{outline:3px solid var(--color-gold);outline-offset:3px}.island-ferry-overview__island-number{color:var(--color-lagoon);font-size:.72rem;font-weight:850}.island-ferry-overview__island-button[aria-pressed=true] .island-ferry-overview__island-number{color:#fff}.island-ferry-overview__details{z-index:3;scrollbar-width:thin;background:#fffffff7;border:1px solid #135c5e33;border-radius:.8rem;min-width:0;margin:1rem;position:relative;overflow:auto;box-shadow:0 16px 38px #1230312e}.island-ferry-overview__details [data-share-status]{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.island-route-detail{grid-template-columns:minmax(0,1fr);grid-template-areas:"heading""facts""terminal""links";align-items:start;gap:.56rem;padding:.78rem .85rem .82rem;display:grid}.island-route-detail[hidden]{display:none}.island-route-detail__header{grid-area:heading;grid-template-columns:1.75rem minmax(0,1fr);gap:.58rem;display:grid}.island-route-detail__number{background:var(--color-lagoon);color:#fff;border-radius:50%;place-items:center;width:1.75rem;height:1.75rem;font-size:.7rem;font-weight:850;display:grid}.island-route-detail__context{color:var(--color-muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.22rem;font-size:.62rem;font-weight:800;line-height:1.35;display:block}.island-route-detail h3{color:var(--color-ink);font-family:var(--font-display);margin:0;font-size:clamp(1.15rem,1.8vw,1.4rem);font-weight:650;line-height:1.1}.island-route-detail h3 span{font-family:var(--font-sans);margin-top:.16rem;font-size:.72rem;font-weight:750;display:block}.island-route-detail__header p{color:var(--color-muted);margin:.3rem 0 0;font-size:.72rem;line-height:1.4}.island-route-detail__header p strong{color:var(--color-ink)}.island-route-detail__facts{grid-area:facts;grid-template-columns:repeat(2,minmax(0,1fr));gap:.42rem .85rem;margin:0;display:grid}.island-route-detail__facts div{min-width:0}.island-route-detail__facts dt,.island-route-detail__terminal>span,.island-route-detail__map-links>span{color:var(--color-muted);letter-spacing:.09em;text-transform:uppercase;font-size:.59rem;font-weight:800;line-height:1.35}.island-route-detail__facts dd{color:var(--color-ink);margin:.12rem 0 0;font-size:.75rem;font-weight:750;line-height:1.4}.island-route-detail__terminal{grid-area:terminal}.island-route-detail__terminal>span,.island-route-detail__terminal strong,.island-route-detail__terminal small{display:block}.island-route-detail__terminal strong{color:var(--color-ink);margin-top:.14rem;font-size:.82rem;line-height:1.35}.island-route-detail__terminal small{color:var(--color-muted);margin-top:.04rem;font-size:.66rem;line-height:1.4}.island-route-detail__map-links{grid-area:links}.island-route-detail__map-links div{flex-wrap:wrap;align-items:center;gap:.3rem .7rem;margin-top:.14rem;display:flex}.island-route-detail__map-links button{min-height:1.6rem;color:var(--color-lagoon);cursor:pointer;font:inherit;text-underline-offset:.16em;background:0 0;border:0;align-items:center;gap:.24rem;padding:0;font-size:.69rem;font-weight:700;line-height:1.35;text-decoration:underline;display:inline-flex}.island-ferry-overview figcaption{border-top:1px solid var(--color-line);background:var(--color-surface);color:var(--color-muted);padding:.72rem .9rem;font-size:.68rem;line-height:1.5}.island-route-panel__source{color:var(--color-muted);justify-content:space-between;gap:1.5rem;padding:.85rem .2rem 0;font-size:.67rem;line-height:1.55;display:flex}.island-route-panel__source p{max-width:36rem;margin:0}.island-route-panel__source p:last-child{text-align:right}.island-guide-choice{background:#f4b23e12;border:1px solid #f4b23e85;border-radius:.72rem;margin:1rem 0 0;padding:1.1rem 1.2rem}.island-guide-choice strong{color:var(--color-ink);font-family:var(--font-display);font-size:1.15rem;font-weight:600;display:block}.island-guide-choice p{color:var(--color-muted);margin:.45rem 0 0;font-size:.82rem;line-height:1.65}.island-guide-overview .guide-fact-table td:first-child{width:16%}@media (width<=48rem){.island-guide-overview__heading{flex-direction:column;align-items:start;gap:.75rem}.island-route-panel__heading{grid-template-columns:1fr;align-items:start;gap:.75rem}.island-guide-overview .island-guide-overview__mobile-hint{display:block}.island-route-panel__source{flex-direction:column;align-items:start;gap:.4rem}.island-ferry-overview .island-map__terminal-ring{r:24px}.island-ferry-overview .island-map__terminal{r:18px}.island-ferry-overview .island-map__terminal-number{font-size:17px}.island-ferry-overview .island-map__terminal-label,.island-ferry-overview .island-map__island-label{stroke-width:6px;font-size:21px}.island-ferry-overview .island-map__context text{font-size:16px}.island-ferry-overview__canvas{display:block}.island-ferry-overview__plot{aspect-ratio:2}.island-ferry-overview__plot svg{aspect-ratio:12/5;height:auto;position:absolute;top:50%;left:0;transform:translateY(-50%)}.island-ferry-overview__island-controls{aspect-ratio:12/5;top:50%;bottom:auto;transform:translateY(-50%)}.island-ferry-overview__island-button{width:1.65rem;height:1.65rem}.island-ferry-overview__details{box-shadow:none;border-width:1px 0 0;border-radius:0;margin:0}.island-route-detail{gap:.7rem;padding:.85rem .9rem .9rem}.island-route-detail__map-links button{min-height:44px}.island-route-panel__source p:last-child{text-align:left}}@media (width<=32rem){.island-ferry-overview__plot{aspect-ratio:12/5}.island-ferry-overview__plot svg{aspect-ratio:12/5;height:auto;position:static;top:auto;left:auto;transform:none}.island-ferry-overview__island-controls{aspect-ratio:12/5;top:0;bottom:auto;transform:none}}@media (prefers-reduced-motion:reduce){.island-map__route-layer,.island-map__route-line{transition:none}}
