/* Causeway guide: quiet surfaces, readable tickets and useful checkpoint links. */
.crossing-page{--blue:#087c80;background:#fcfbf8;color:#202422}
/* Decorative font ligatures must never become visible words if Google Fonts fails. */
.crossing-page .material-symbols-rounded[aria-hidden="true"]{display:none!important}
.crossing-prep summary:after{content:'+';margin-left:auto;font:22px/1 system-ui;color:#43564a;flex:none}
.crossing-prep details[open]>summary:after{content:'−'}
.crossing-upcoming>summary:after{content:'+';margin-left:auto;font:22px/1 system-ui;color:#43564a;flex:none}
.crossing-upcoming[open]>summary:after{content:'−'}
.crossing-option,.crossing-option summary,.option-copy,.prep-row-copy,.crossing-next>*{min-width:0}
.crossing-page p,.crossing-page a,.option-copy{overflow-wrap:anywhere}
.crossing-main{padding-top:42px}
.crossing-hero{gap:48px;margin-bottom:30px}
.crossing-hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(36px,4.6vw,62px);font-weight:500;line-height:1.06;letter-spacing:-.045em}
.crossing-lede{color:#555e59;max-width:38ch;line-height:1.6}
.crossing-direction{width:fit-content;max-width:100%;margin:0 0 24px;background:transparent;border-color:#c8cdc7;padding:3px}
.crossing-direction span{font-size:13px;padding:8px 14px;white-space:nowrap;color:#444d47}
.crossing-direction input:checked+span{background:#242c27;color:#fff}
.crossing-hero img{height:270px;border-radius:6px;filter:saturate(.75)}
.checkpoint-strip{display:grid;grid-template-columns:1fr 1.35fr;gap:28px;align-items:center;padding:24px 0;margin:0 0 40px;border-block:1px solid #d9ddd5}
.crossing-main .checkpoint-strip h2{font-size:21px;margin:0 0 6px}
.checkpoint-strip p{font-size:13px;color:#59615c;margin:0;line-height:1.5}
.checkpoint-cards{gap:0}
.camera-link{border:0;border-left:1px solid #d9ddd5;border-radius:0;background:transparent;padding:4px 24px;gap:6px}
.camera-link>.material-symbols-rounded{display:none}
.camera-link strong{font-size:16px;color:#252d28}
.camera-link small{font-size:13px;color:#59615c}
.camera-link>span:last-child{font-size:14px;color:#087477}
.crossing-grid{grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);gap:36px}
.crossing-grid>section>h2,.crossing-main .crossing-aside h2{font-size:28px;line-height:1.2;margin:0 0 18px;color:#202422}
.crossing-aside{border-left:1px solid #d9ddd5;padding-left:30px}
.crossing-aside .crossing-prep{padding:0;margin:0}
.transport-card-row{display:block;margin:0}
.transport-card-row>.crossing-option{display:block;border:0;border-top:1px solid #d9ddd5;border-radius:0;box-shadow:none;background:transparent;margin:0;position:relative}
.transport-card-row>.crossing-option>summary{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;padding:22px 18px;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible;border-left:1px dashed #bec7be}
.transport-card-row>.crossing-option>summary:before{content:'';position:absolute;left:-5px;top:48px;width:9px;height:9px;border:1px solid #bec7be;border-radius:50%;background:#fcfbf8}
.transport-card-row .option-photo{display:none}
.transport-card-row .option-copy{padding:0;gap:6px}
.transport-card-row .option-copy strong{font-size:20px;color:#222b25}
.transport-card-row .option-copy>span:not(.option-badge){font-size:14px;color:#59615c}
.transport-card-row .option-copy small{display:block;font-size:13px;color:#59615c;line-height:1.5}
.transport-card-row .option-copy>small:not(:last-child){display:none}
.transport-card-row .option-badge,.option-badge.upcoming{font-size:13px;font-weight:500;text-transform:none;letter-spacing:0;padding:0;background:none;color:#4a5d50;border-radius:0;order:1}
.transport-card-row .option-card-action{padding:0;color:#087477;font-size:14px;white-space:nowrap}
.option-card-action>span[aria-hidden]{display:none}
.transport-card-row details[open]>summary{box-shadow:none;background:#f1f3ed;border-color:#bcc7ba}
.transport-card-row details[open] .action-open{display:inline}.transport-card-row details[open] .action-closed{display:none}
.transport-card-row>.crossing-option>.option-detail{margin:0 0 18px;padding:20px;border:0;border-left:2px solid #c7d4c7;border-radius:0;background:#f3f5ef}
.crossing-prep details,.crossing-prep details:first-of-type,.crossing-prep details:last-of-type{border:0;border-top:1px solid #d9ddd5;border-radius:0;background:transparent}
.crossing-prep summary{padding:20px 0}
.crossing-prep summary>.material-symbols-rounded:first-child{background:none;color:#4a5d50;border-radius:0}
.prep-row-copy small,.prep-subtitle{font-size:13px;color:#59615c}
.step-icon{background:transparent;color:#526756;border-radius:0}
.option-detail a,.crossing-prep a,.transport-credits a,.transport-credits summary,.crossing-related a,.crossing-old-town{color:#087477}
.bus-service{background:#e7ece2;color:#354c3b}
.bus-map-route[open]>summary,.bus-route-transfer{background:#edf0e8}
.crossing-upcoming{margin-top:18px;border:1px dashed #bec7be;border-radius:6px;background:#f4f4ed}
.crossing-upcoming .option-copy small{display:block;font-size:13px}
.crossing-next{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:40px;background:#edf3ea;border:0;border-radius:12px;padding:40px;margin-top:44px}
.crossing-next h2{font-size:clamp(30px,3.5vw,44px);color:#202422}
.crossing-next p{color:#4b5950;font-size:16px}
.rancang-cta-destination{width:100%;max-width:440px}.rancang-cta-destination img{width:100%;height:250px;object-fit:cover;border-radius:6px;filter:none}.rancang-cta-destination figcaption{font-size:13px;color:#4b5950;text-align:left}
.rancang-cta-kicker{font-size:13px;letter-spacing:0;color:#395740}
.rancang-cta-actions>a:last-child{color:#087477}
.crossing-related{font-size:16px;text-align:left;margin-top:26px}
.transport-credits{font-size:12px;margin-top:26px}
.crossing-freshness{color:#59615c;line-height:1.6}
.crossing-page :is(a,summary):focus-visible,.crossing-direction input:focus-visible+span{outline-color:#087c80}
@media(max-width:760px){
 .crossing-main{padding-top:30px}.crossing-hero{gap:22px;margin-bottom:24px}.crossing-hero h1{font-size:40px}.crossing-hero img{height:170px}
 .crossing-direction{margin-bottom:20px}.crossing-direction span{font-size:12px;padding:8px 10px}
 .checkpoint-strip{grid-template-columns:minmax(0,1fr);gap:18px;padding:20px 0;margin-bottom:30px}.camera-link{padding:0 14px}.camera-link:first-child{border-left:0;padding-left:0}
 .crossing-grid{grid-template-columns:minmax(0,1fr);gap:32px}.crossing-aside{border-left:0;padding-left:0}
 .crossing-grid>section>h2,.crossing-main .crossing-aside h2{font-size:26px}
 .transport-card-row>.crossing-option>summary{padding:20px 12px;gap:12px}.transport-card-row .option-copy strong{font-size:18px}.transport-card-row .option-card-action{font-size:13px}
 .crossing-next{grid-template-columns:minmax(0,1fr);padding:26px;gap:16px;margin-top:32px}
}
@media(max-width:360px){.transport-card-row>.crossing-option>summary{grid-template-columns:minmax(0,1fr)}.option-card-action{justify-self:start}.crossing-hero h1{font-size:35px}}
