.sbb-halte-app{max-width:1120px;margin:0 auto 40px;font-family:inherit;color:#243447}.sbb-halte-app *{box-sizing:border-box}.sbb-halte-hero,.sbb-halte-card{border:1px solid #d9e6ef;border-radius:18px;background:#fff;box-shadow:0 7px 24px rgba(22,54,82,.05)}.sbb-halte-hero{padding:30px;margin-bottom:18px;background:linear-gradient(180deg,#f7fbfe 0,#fff 100%)}.sbb-halte-eyebrow{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#1674ba;margin-bottom:8px}.sbb-halte-hero h2,.sbb-halte-card h2,.sbb-halte-card h3{margin-top:0;color:#263746}.sbb-halte-hero h2{font-size:38px;line-height:1.1;margin-bottom:10px;font-weight:500}.sbb-halte-hero p{font-size:17px;line-height:1.6;max-width:780px;margin:0 0 20px;color:#465e74}.sbb-halte-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.sbb-halte-filters button{appearance:none;border:1px solid #c9ddeb;border-radius:999px;background:#fff;color:#145d93;padding:8px 13px;font:inherit;font-size:14px;font-weight:700;cursor:pointer}.sbb-halte-filters button span{display:inline-flex;min-width:32px;justify-content:center;padding:2px 7px;border-radius:999px;background:#277ac0;color:#fff;margin-right:5px}.sbb-halte-filters button.is-active{background:#277ac0;color:#fff;border-color:#277ac0}.sbb-halte-filters button.is-active span{background:#fff;color:#277ac0}.sbb-halte-picker{display:block;max-width:680px}.sbb-halte-picker>span{display:block;font-weight:800;font-size:14px;margin-bottom:6px}.sbb-halte-picker select{width:100%;min-height:48px;border:1px solid #bacfdf;border-radius:10px;background:#fff;padding:9px 38px 9px 12px;color:#263746;font:inherit;font-size:16px}.sbb-halte-picker select:focus,.sbb-halte-filters button:focus{outline:3px solid rgba(39,122,192,.22);outline-offset:2px}.sbb-halte-loading,.sbb-halte-error{padding:18px;border:1px solid #d9e6ef;border-radius:12px;background:#f7fbfe;color:#52687b}.sbb-halte-result{display:grid;gap:16px}.sbb-halte-card{padding:24px}.sbb-halte-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.sbb-halte-titleline{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.sbb-halte-linebadge{display:inline-flex;align-items:center;justify-content:center;min-width:46px;height:34px;padding:0 10px;border-radius:9px;background:#277ac0;color:#fff;font-weight:800}.sbb-halte-title{font-size:31px;line-height:1.15;font-weight:500;margin:0}.sbb-halte-sub{margin-top:7px;color:#607386;font-size:14px}.sbb-halte-source{font-size:12px;color:#73879a;text-align:right;max-width:260px}.sbb-halte-sidebar{display:flex;gap:7px;flex-wrap:wrap;margin-top:18px}.sbb-halte-sidebar button{appearance:none;border:1px solid #c8dce9;border-radius:9px;background:#f7fbfe;padding:8px 11px;font:inherit;font-size:13px;font-weight:700;color:#145d93;cursor:pointer}.sbb-halte-sidebar button.is-active{background:#e5f2fb;border-color:#78add4;color:#0e5e99}.sbb-halte-grid2{display:grid;grid-template-columns:1.25fr .75fr;gap:16px}.sbb-halte-grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.sbb-halte-section-title{font-size:22px;font-weight:500;margin:0 0 14px}.sbb-halte-deps{border-top:1px solid #e5edf3}.sbb-halte-dep{display:grid;grid-template-columns:90px 1fr auto;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #edf2f6}.sbb-halte-dep-time{font-size:24px;font-weight:800;color:#152c3e}.sbb-halte-dep-time small{display:block;font-size:11px;color:#81909d;font-weight:600}.sbb-halte-dep-status{font-size:13px;font-weight:800;white-space:nowrap}.sbb-halte-dep-status.ok{color:#16794d}.sbb-halte-dep-status.delay{color:#9b5c00}.sbb-halte-dep-status.cancel{color:#b42318}.sbb-halte-empty{padding:14px 0;color:#677b8e}.sbb-halte-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:15px}.sbb-halte-btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 14px;border-radius:8px;background:#277ac0;color:#fff!important;text-decoration:none!important;font-size:14px;font-weight:800}.sbb-halte-btn.secondary{background:#fff;color:#176ca8!important;border:1px solid #bcd4e4}.sbb-halte-access-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:16px}.sbb-halte-access{border:1px solid #dfeaf2;border-radius:12px;padding:14px;background:#f8fbfd}.sbb-halte-access strong{display:block;font-size:16px;margin-bottom:6px}.sbb-halte-access.yes strong{color:#176e4a}.sbb-halte-access.no strong{color:#4d5d6b}.sbb-halte-access.unknown strong{color:#7b8791}.sbb-halte-access-state{display:block;font-size:13px;line-height:1.45;color:#465e74}.sbb-halte-state-label{display:inline-flex;align-items:center;justify-content:center;min-width:34px;margin-right:7px;padding:2px 7px;border-radius:999px;font-size:11px;font-weight:900}.sbb-halte-access.yes .sbb-halte-state-label{background:#e9f5ee;color:#176e4a}.sbb-halte-access.no .sbb-halte-state-label{background:#f8eceb;color:#a2342b}.sbb-halte-access.unknown .sbb-halte-state-label{background:#eef1f3;color:#64717c}.sbb-halte-feature-title{font-size:15px!important;margin:2px 0 10px!important;color:#344b5f!important}.sbb-halte-bullets{margin:0;padding:0;list-style:none;display:grid;gap:0;border-top:1px solid #edf2f6}.sbb-halte-bullets li{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:8px;align-items:center;color:#465e74;font-size:14px;padding:9px 0;border-bottom:1px solid #edf2f6}.sbb-halte-bullets .mark{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-size:14px;line-height:1;font-weight:900}.sbb-halte-bullets .mark.yes{background:#e9f5ee;color:#176e4a}.sbb-halte-bullets .mark.no{background:#f8eceb;color:#a2342b}.sbb-halte-bullets .mark.unknown{background:#eef1f3;color:#64717c}.sbb-halte-bullet-state{font-size:13px;text-align:right;white-space:nowrap}.sbb-halte-bullets li.yes .sbb-halte-bullet-state{color:#176e4a}.sbb-halte-bullets li.no .sbb-halte-bullet-state{color:#a2342b}.sbb-halte-bullets li.unknown .sbb-halte-bullet-state{color:#64717c}.sbb-halte-facilities{display:flex;gap:7px;flex-wrap:wrap}.sbb-halte-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;background:#edf6fc;color:#31536c;font-size:13px;font-weight:700}.sbb-halte-chip:before{content:"✓";color:#16794d;font-weight:900}.sbb-halte-detailgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;margin-top:12px}.sbb-halte-detailrow{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid #edf2f6;font-size:13px}.sbb-halte-detailrow span:first-child{color:#66798b}.sbb-halte-detailrow strong{font-weight:700;text-align:right}.sbb-halte-card details{margin-top:16px;border-top:1px solid #e6edf2;padding-top:12px}.sbb-halte-card summary{cursor:pointer;color:#176ca8;font-weight:800}.sbb-halte-map{height:320px;border-radius:13px;overflow:hidden;background:#edf3f7}.sbb-halte-mapnote{font-size:12px;color:#73879a;margin-top:9px}.sbb-halte-station{background:linear-gradient(180deg,#f5fafe,#fff)}.sbb-halte-station-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.sbb-halte-station-status{padding:6px 9px;border-radius:999px;background:#e9f5ee;color:#176e4a;font-size:12px;font-weight:800}.sbb-halte-tracks,.sbb-halte-lifts{display:grid;gap:10px;margin-top:14px}.sbb-halte-track,.sbb-halte-lift{border:1px solid #dce8f0;border-radius:12px;background:#fff;padding:14px}.sbb-halte-tracktop,.sbb-halte-lifttop{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.sbb-halte-track h4,.sbb-halte-lift h4{margin:0;font-size:16px}.sbb-halte-mini{font-size:12px;color:#6a7d8e;line-height:1.55}.sbb-halte-livepending{display:inline-flex;padding:4px 7px;border-radius:999px;background:#f0f2f4;color:#64717c;font-size:11px;font-weight:800}.sbb-halte-liftstatus{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;font-size:12px;font-weight:900;line-height:1.2;white-space:nowrap}.sbb-halte-liftstatus.yes{background:#e9f5ee;color:#176e4a}.sbb-halte-liftstatus.no{background:#f8eceb;color:#a2342b}.sbb-halte-liftstatus.unknown{background:#eef1f3;color:#64717c}.sbb-halte-liftsource{margin-top:10px;font-size:12px;color:#6a7d8e}.sbb-halte-warning{border-left:4px solid #e5a100;background:#fff9e9;border-radius:8px;padding:11px 13px;color:#67531d;font-size:13px;margin-top:12px}.sbb-halte-visuallyhidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}@media(max-width:780px){.sbb-halte-hero{padding:22px}.sbb-halte-hero h2{font-size:31px}.sbb-halte-card{padding:19px}.sbb-halte-head,.sbb-halte-station-head{flex-direction:column}.sbb-halte-lifttop{align-items:flex-start;flex-wrap:wrap}.sbb-halte-source{text-align:left;max-width:none}.sbb-halte-grid2{grid-template-columns:1fr}.sbb-halte-grid3{grid-template-columns:1fr}.sbb-halte-access-summary{grid-template-columns:1fr}.sbb-halte-detailgrid{grid-template-columns:1fr}.sbb-halte-map{height:270px}.sbb-halte-bullets li{grid-template-columns:22px minmax(0,1fr)}.sbb-halte-bullet-state{grid-column:2;text-align:left;white-space:normal;margin-top:-3px}}@media(max-width:480px){.sbb-halte-app{margin-bottom:28px}.sbb-halte-title{font-size:26px}.sbb-halte-dep{grid-template-columns:76px 1fr auto;gap:8px}.sbb-halte-dep-time{font-size:21px}.sbb-halte-actions{display:grid;grid-template-columns:1fr}.sbb-halte-btn{width:100%}.sbb-halte-filters{gap:6px}.sbb-halte-filters button{font-size:12px;padding:7px 10px}.sbb-halte-map{height:235px}}.sbb-halte-transfers{background:linear-gradient(180deg,#fbfdff 0,#fff 100%)}.sbb-halte-transfer-intro{margin:-4px 0 14px;color:#667b8e;font-size:13px;line-height:1.55;max-width:800px}.sbb-halte-transfer-list{display:grid;gap:9px}.sbb-halte-card .sbb-halte-transfer-accordion{margin:0;border:1px solid #dce8f0;border-radius:12px;background:#fff;padding:0;overflow:hidden}.sbb-halte-card .sbb-halte-transfer-accordion summary{list-style:none;display:grid;grid-template-columns:38px minmax(0,1fr) 22px;gap:11px;align-items:center;padding:13px 14px;color:#24465f;font-weight:inherit;cursor:pointer;transition:background .16s ease}.sbb-halte-card .sbb-halte-transfer-accordion summary::-webkit-details-marker{display:none}.sbb-halte-card .sbb-halte-transfer-accordion summary:hover{background:#f7fbfe}.sbb-halte-card .sbb-halte-transfer-accordion summary:focus-visible{outline:3px solid rgba(39,122,192,.22);outline-offset:-3px}.sbb-halte-transfer-icon{width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#e9f4fb;color:#176ca8;font-size:18px;font-weight:900}.sbb-halte-transfer-icon.local{background:#eef6f1;color:#176e4a}.sbb-halte-transfer-summarytext{min-width:0;display:block}.sbb-halte-transfer-summarytext strong{display:block;font-size:15px;line-height:1.3;color:#28465d}.sbb-halte-transfer-summarytext small{display:block;margin-top:2px;font-size:12px;line-height:1.45;font-weight:500;color:#718496}.sbb-halte-transfer-chevron{font-size:18px;color:#7890a2;transition:transform .18s ease;text-align:center}.sbb-halte-transfer-accordion[open] .sbb-halte-transfer-chevron{transform:rotate(180deg)}.sbb-halte-transfer-body{border-top:1px solid #e6eef4;padding:0 14px 13px}.sbb-halte-transfer-loading{display:flex;align-items:center;gap:9px;padding:14px 0 2px;color:#718496;font-size:13px}.sbb-halte-transfer-spinner{width:15px;height:15px;border-radius:50%;border:2px solid #d4e2ec;border-top-color:#277ac0;animation:sbb-halte-spin .75s linear infinite}@keyframes sbb-halte-spin{to{transform:rotate(360deg)}}.sbb-halte-transfer-rows{display:grid}.sbb-halte-transfer-row{display:grid;grid-template-columns:70px minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px 0;border-bottom:1px solid #edf2f6}.sbb-halte-transfer-row:last-child{border-bottom:0}.sbb-halte-transfer-time{font-size:19px;line-height:1.1;font-weight:800;color:#173247}.sbb-halte-transfer-time small{display:block;margin-top:3px;font-size:10px;line-height:1.2;color:#8796a3;font-weight:600}.sbb-halte-transfer-service{min-width:0}.sbb-halte-transfer-service>div{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap}.sbb-halte-transfer-service strong{font-size:14px;color:#263746;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sbb-halte-transfer-service>small{display:block;margin-top:3px;color:#7a8d9d;font-size:11px;font-weight:600}.sbb-halte-transfer-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-radius:999px;font-size:11px;line-height:1;font-weight:900;white-space:nowrap;background:#e7f3fb;color:#176ca8}.sbb-halte-transfer-badge.train{background:#003082;color:#fff;box-shadow:inset 4px 0 0 #ffc917;padding-left:11px}.sbb-halte-transfer-meta{margin-top:8px;color:#788b9b;font-size:11px}.sbb-halte-transfer-note{margin-top:9px;padding:9px 11px;border-radius:8px;background:#f7fafc;color:#667b8e;font-size:11px;line-height:1.5}@media(max-width:600px){.sbb-halte-transfer-row{grid-template-columns:62px minmax(0,1fr);gap:8px 10px}.sbb-halte-transfer-row .sbb-halte-dep-status{grid-column:2;justify-self:start;margin-top:-4px}.sbb-halte-transfer-service>div{gap:6px}.sbb-halte-card .sbb-halte-transfer-accordion summary{grid-template-columns:34px minmax(0,1fr) 18px;padding:12px}.sbb-halte-transfer-icon{width:30px;height:30px;font-size:16px}}.sbb-halte-alerts{padding-top:20px;padding-bottom:20px;background:linear-gradient(180deg,#fffdf8 0,#fff 100%)}.sbb-halte-alert-list{display:grid;gap:9px}.sbb-halte-alert{display:grid;grid-template-columns:34px minmax(0,1fr);gap:11px;align-items:flex-start;border:1px solid #e5edf3;border-left-width:4px;border-radius:12px;padding:12px 14px;background:#fff}.sbb-halte-alert.major{border-left-color:#b42318;background:#fff8f7}.sbb-halte-alert.attention{border-left-color:#d58a00;background:#fffbf2}.sbb-halte-alert.info{border-left-color:#277ac0;background:#f8fbfe}.sbb-halte-alert-icon{width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:900;background:#eef3f6;color:#38536a}.sbb-halte-alert.major .sbb-halte-alert-icon{background:#fae9e7;color:#a2342b}.sbb-halte-alert.attention .sbb-halte-alert-icon{background:#fff0cf;color:#915f00}.sbb-halte-alert.info .sbb-halte-alert-icon{background:#e8f3fb;color:#176ca8}.sbb-halte-alert strong{display:block;color:#263746;font-size:14px;line-height:1.35}.sbb-halte-alert p{margin:3px 0 0;color:#5d7285;font-size:13px;line-height:1.45}.sbb-halte-alert a{display:inline-block;margin-top:6px;color:#176ca8;font-size:12px;font-weight:800;text-decoration:none}.sbb-halte-alert a:hover{text-decoration:underline}.sbb-halte-dep-main{min-width:0}.sbb-halte-follow{appearance:none;border:0;background:0 0;padding:4px 0 0;color:#176ca8;font:inherit;font-size:11px;font-weight:800;cursor:pointer}.sbb-halte-follow:hover{text-decoration:underline}.sbb-halte-follow:focus-visible{outline:3px solid rgba(39,122,192,.22);outline-offset:2px;border-radius:4px}.sbb-halte-follow.is-open{color:#114f7c}.sbb-halte-follow-panel{grid-column:1/-1;margin-top:2px;border:1px solid #dce8f0;border-radius:12px;background:#f8fbfd;padding:10px}.sbb-halte-follow-map{height:220px;border-radius:9px;overflow:hidden;background:#edf3f7}.sbb-halte-follow-meta{margin-top:7px;color:#6f8294;font-size:11px}.sbb-halte-bus-marker{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#277ac0;border:3px solid #fff;box-shadow:0 2px 9px rgba(0,0,0,.28);font-size:18px}.sbb-halte-stop-marker{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fff;border:3px solid #277ac0;color:#176ca8;font-size:10px;font-weight:900;box-shadow:0 2px 8px rgba(0,0,0,.2)}.sbb-halte-transfer-position{font-weight:700}.sbb-halte-transfer-position.same_side{color:#176e4a}.sbb-halte-transfer-position.other_side{color:#8a5d08}.sbb-halte-report{display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(180deg,#fbfdff 0,#fff 100%)}.sbb-halte-report p{margin:3px 0 0;color:#667b8e;font-size:13px;line-height:1.5;max-width:720px}.sbb-halte-report .sbb-halte-section-title{margin-bottom:0}@media(max-width:780px){.sbb-halte-report{align-items:flex-start;flex-direction:column}.sbb-halte-report .sbb-halte-btn{width:auto}.sbb-halte-follow-map{height:200px}}@media(max-width:480px){.sbb-halte-follow-panel{padding:8px}.sbb-halte-follow-map{height:185px}.sbb-halte-alert{grid-template-columns:30px minmax(0,1fr);padding:11px}.sbb-halte-alert-icon{width:26px;height:26px}.sbb-halte-report .sbb-halte-btn{width:100%}}.sbb-halte-departure-card{display:flex;flex-direction:column}.sbb-halte-transfers-inline{margin-top:22px;padding-top:19px;border-top:1px solid #dfe9f0}.sbb-halte-transfers-inline .sbb-halte-transfer-heading{margin-bottom:12px}.sbb-halte-transfers-inline .sbb-halte-eyebrow{margin-bottom:5px}.sbb-halte-transfers-inline .sbb-halte-section-title{font-size:19px;margin-bottom:0}.sbb-halte-transfers-inline .sbb-halte-transfer-list{gap:8px}.sbb-halte-transfers-inline .sbb-halte-transfer-accordion{border-radius:10px}.sbb-halte-transfers-inline .sbb-halte-transfer-summarytext strong{font-size:14px}.sbb-halte-transfers-inline .sbb-halte-transfer-summarytext small{font-size:11px}@media(max-width:780px){.sbb-halte-transfers-inline{margin-top:20px;padding-top:17px}}.sbb-halte-station-shortcuts{margin:0 0 20px}.sbb-halte-shortcut-label{display:block;margin-bottom:8px;color:#465e74;font-size:14px;font-weight:700}.sbb-halte-station-buttons{display:flex;flex-wrap:wrap;gap:8px}.sbb-halte-station-buttons button{appearance:none;min-height:44px;border:1px solid #bcd4e4;border-radius:10px;background:#f0f7fc;color:#145d93;padding:9px 14px;font:inherit;font-size:14px;font-weight:700;cursor:pointer}.sbb-halte-station-buttons button:hover{background:#e5f2fb}.sbb-halte-station-buttons button.is-active{background:#145d93;border-color:#145d93;color:#fff}.sbb-halte-station-buttons button:focus-visible{outline:3px solid rgba(39,122,192,.35);outline-offset:3px}.sbb-halte-station-intro{margin:12px 0 20px;color:#465e74;font-size:16px;line-height:1.65;max-width:800px}.sbb-halte-station-guide{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.sbb-halte-station-guidecard{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid #dce8f0;border-radius:13px;padding:20px}.sbb-halte-station-guidecard h3{font-size:18px;line-height:1.35;font-weight:500;margin:0 0 9px}.sbb-halte-station-guidecard p{font-size:14px;line-height:1.65;color:#465e74;margin:0 0 12px}.sbb-halte-station-guidecard .sbb-halte-actions{margin-top:auto;padding-top:4px}.sbb-halte-station-guidecard .sbb-halte-btn{white-space:normal;text-align:center}.sbb-halte-station-guidecard.boarding{grid-column:1/-1;background:#eef7fd;border-color:#b9d6e9}.sbb-halte-station-guidecard.boarding h3{font-size:21px}.sbb-halte-station-guidecard.boarding p{font-size:15px}.sbb-halte-station-trackdetails{margin-top:20px!important}.sbb-halte-station-status{white-space:normal}.sbb-halte-access-summary{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.sbb-halte-access strong{overflow-wrap:anywhere}@media(max-width:780px){.sbb-halte-station-guide{grid-template-columns:1fr}.sbb-halte-station-guidecard{padding:17px}.sbb-halte-station-guidecard .sbb-halte-actions{padding-top:0;margin-top:4px}}@media(max-width:420px){.sbb-halte-station-buttons{display:grid;grid-template-columns:1fr}.sbb-halte-station-buttons button{text-align:left;width:100%}}.sbb-halte-station-facts{margin:0;font-size:14px;line-height:1.6;color:#465e74}.sbb-halte-station-facts>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:12px;padding:9px 0;border-top:1px solid #e4edf3}.sbb-halte-station-facts dt{font-weight:600}.sbb-halte-station-facts dd{margin:0;overflow-wrap:anywhere}.sbb-halte-map:focus-visible{outline:3px solid #277ac0;outline-offset:3px}.sbb-station-essential-lifts{grid-column:1/-1;background:#fff;border:1px solid #dce8f0;border-radius:13px;padding:18px}.sbb-station-essential-lifts h3{margin:0 0 12px!important}.sbb-station-lift-specs{margin-top:9px;font-size:13px}.sbb-station-live-facilities{margin-top:20px;min-width:0}.sbb-station-essentialgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.sbb-station-essential{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid #dce8f0;border-radius:13px;padding:20px}.sbb-station-essential h3{font-size:19px;line-height:1.3;margin:5px 0 12px}.sbb-station-essential p,.sbb-station-location p{font-size:14px;line-height:1.6;margin:0 0 12px;color:#465e74}.sbb-station-stock{font-size:18px!important;font-weight:700;line-height:1.45!important}.sbb-station-stock.available{color:#146e49}.sbb-station-stock.empty{color:#8a4d0a}.sbb-station-stock.unknown{color:#536b7c}.sbb-station-details{border:1px solid #dce8f0;border-radius:11px;background:#fff;margin:14px 0 0;padding:14px 16px;min-width:0}.sbb-station-essential>.sbb-station-details{margin-top:auto}.sbb-station-details>summary{cursor:pointer;font-size:14px;font-weight:600;color:#185f96;line-height:1.6}.sbb-station-detailbody{padding-top:15px;min-width:0}.sbb-station-detailbody h3{font-size:17px;margin:18px 0 8px}.sbb-station-location{border-top:1px solid #e4edf3;padding:14px 0;min-width:0}.sbb-station-location:first-child{border-top:0;padding-top:0}.sbb-station-location h4{font-size:15px;line-height:1.5;margin:0 0 9px;overflow-wrap:anywhere}.sbb-station-location .sbb-halte-btn{white-space:normal;text-align:center;margin-top:6px}.sbb-station-hours{margin:10px 0 14px;font-size:13px;line-height:1.65}.sbb-station-hours>div{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:8px;padding:7px 0;border-top:1px solid #e4edf3}.sbb-station-hours dt{font-weight:600}.sbb-station-hours dd{margin:0;overflow-wrap:anywhere}.sbb-station-facility-summary{margin-top:22px}.sbb-station-facility-summary h3{font-size:17px;margin:0 0 10px}.sbb-station-facility-summary ul{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}.sbb-station-facility-summary li{background:#e7f3fb;border-radius:8px;padding:6px 9px;font-size:13px;color:#205b84}.sbb-station-notice{margin:12px 0;padding:12px 15px;background:#f2f6fa;border:1px solid #d8e4ee;border-radius:9px;font-size:13px;line-height:1.6;color:#4b6274}.sbb-station-updated{margin-top:15px}.sbb-station-mapicon{background:#e2f3fc;border:2px solid #14649a;border-radius:50%;color:#145b91;display:flex;align-items:center;justify-content:center;font:700 12px/1 Arial,sans-serif;box-sizing:border-box;box-shadow:0 2px 5px rgba(0,0,0,.18)}@media(max-width:1000px){.sbb-station-essentialgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.sbb-station-essential:last-child{grid-column:1/-1}}@media(max-width:620px){.sbb-station-essentialgrid{grid-template-columns:1fr}.sbb-station-essential{padding:17px}.sbb-station-essential:last-child{grid-column:auto}.sbb-station-details{padding:12px}.sbb-station-essential-lifts{padding:16px}}.sbb-halte-station-guidecard.servicepoint{grid-column:1/-1}.sbb-station-essentialgrid{align-items:start}.sbb-halte-app .sbb-station-live-facilities .sbb-station-detailbody h3{font-family:inherit!important;font-size:17px!important;font-weight:600!important;line-height:1.4!important;color:#263746!important;margin:0 0 10px!important;padding:0!important;border:0!important}.sbb-halte-app .sbb-station-live-facilities .sbb-station-location h4{font-family:inherit!important;font-size:14px!important;font-weight:600!important;line-height:1.5!important;color:#465e74!important;margin:0 0 8px!important;padding:0!important;border:0!important;text-decoration:none!important}.sbb-halte-app .sbb-station-live-facilities .sbb-station-location p,.sbb-halte-app .sbb-station-live-facilities .sbb-station-detailbody>p{font-family:inherit!important;font-size:14px!important;font-weight:400!important;line-height:1.65!important;color:#465e74!important;margin:0 0 12px!important;padding:0!important;white-space:normal!important;text-align:left!important;overflow-wrap:anywhere}.sbb-halte-app .sbb-station-live-facilities .sbb-station-facility-group{margin:0;padding:18px 0 0;border-top:1px solid #e4edf3}.sbb-halte-app .sbb-station-live-facilities .sbb-station-facility-group:first-child{padding-top:0;border-top:0}.sbb-halte-app .sbb-station-live-facilities .sbb-station-location{padding:0 0 16px}.sbb-halte-app .sbb-station-live-facilities .sbb-station-location+.sbb-station-location{padding-top:14px}.sbb-halte-app .sbb-station-live-facilities .sbb-station-location:last-child{padding-bottom:0}.sbb-halte-app .sbb-station-live-facilities .sbb-station-location>:last-child{margin-bottom:0!important}.sbb-halte-app .sbb-station-live-facilities .sbb-station-facility-group+.sbb-station-facility-group{margin-top:18px}.sbb-halte-app .sbb-station-facility-overview{margin-top:24px}.sbb-halte-app .sbb-station-facility-heading{font-family:inherit!important;font-size:20px!important;font-weight:600!important;line-height:1.4!important;color:#263746!important;margin:0 0 14px!important;padding:0!important;border:0!important}.sbb-halte-app .sbb-station-facility-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}.sbb-halte-app .sbb-station-facility-card{min-width:0;min-height:168px;padding:18px;border:1px solid #dce8f0;border-radius:12px;background:#fff}.sbb-halte-app .sbb-station-facility-top{display:flex;gap:12px;align-items:flex-start;min-height:74px}.sbb-halte-app .sbb-station-facility-icon{flex:0 0 38px;width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:#eef7fd;color:#176ca8}.sbb-halte-app .sbb-station-facility-icon-svg{display:block;width:20px!important;height:20px!important;max-width:none!important;flex-shrink:0}.sbb-halte-app .sbb-station-facility-copy{min-width:0}.sbb-halte-app .sbb-station-facility-card h3{font-family:inherit!important;font-size:16px!important;font-weight:600!important;line-height:1.4!important;color:#263746!important;margin:0 0 4px!important;padding:0!important;border:0!important;overflow-wrap:anywhere}.sbb-halte-app .sbb-station-facility-card .sbb-station-facility-lead{font-family:inherit!important;font-size:14px!important;font-weight:400!important;line-height:1.6!important;color:#465e74!important;margin:0!important;padding:0!important;overflow-wrap:anywhere}.sbb-halte-app .sbb-station-facility-card>.sbb-station-details{margin:10px 0 0 50px!important;padding:4px 0 0!important;border:0!important;border-top:1px solid #e4edf3!important;border-radius:0;background:0 0}.sbb-halte-app .sbb-station-facility-card>.sbb-station-details>summary{min-height:40px;align-content:center;font-family:inherit!important;font-size:13px!important;font-weight:600!important;line-height:1.5!important;color:#176ca8}.sbb-halte-app .sbb-station-facility-card .sbb-station-detailbody{padding-top:8px}.sbb-halte-app .sbb-station-facility-actions{margin:10px 0 0 50px;padding-top:4px;border-top:1px solid #e4edf3;display:flex;flex-wrap:wrap;gap:6px}.sbb-halte-app .sbb-station-facility-map{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:4px 0;background:0 0;border:0;border-radius:4px;color:#176ca8!important;font-family:inherit!important;font-size:13px!important;font-weight:600!important;line-height:1.5!important;text-align:left;cursor:pointer;white-space:normal}.sbb-halte-app .sbb-station-facility-map .sbb-station-facility-icon-svg{width:16px!important;height:16px!important}.sbb-halte-app .sbb-station-facility-map:hover{text-decoration:underline}.sbb-halte-app .sbb-station-facility-map:focus-visible{outline:3px solid #277ac0;outline-offset:4px}@media(max-width:620px){.sbb-halte-app .sbb-station-facility-grid{grid-template-columns:1fr}.sbb-halte-app .sbb-station-facility-card{padding:16px;min-height:164px}}@media(pointer:coarse){.sbb-halte-app .sbb-station-facility-map,.sbb-halte-app .sbb-station-facility-card>.sbb-station-details>summary{min-height:44px}}.sbb-halte-app .sbb-station-facility-card:last-child:nth-child(odd){grid-column:1/-1;min-height:0}.sbb-halte-app .sbb-station-facility-card:last-child:nth-child(odd) .sbb-station-facility-top{min-height:0}@media(min-width:1000px){.sbb-halte-app .sbb-station-facility-card{min-height:144px}.sbb-halte-app .sbb-station-facility-top{min-height:50px}}@media(max-width:620px){.sbb-halte-app .sbb-station-facility-card{min-height:0}.sbb-halte-app .sbb-station-facility-top{min-height:0}}.sbb-halte-app .sbb-station-essentialgrid{align-items:stretch}@media(min-width:1001px){.sbb-halte-app .sbb-station-essentialgrid:has(>.sbb-station-essential>details[open]){align-items:start}}@media(min-width:621px) and (max-width:1000px){.sbb-halte-app .sbb-station-essentialgrid:has(>.sbb-station-essential:nth-child(-n+2)>details[open]){align-items:start}}.sbb-halte-app .sbb-station-essential>.sbb-station-details:not([open])>summary{min-height:3.2em;align-content:center}.sbb-halte-app .sbb-halte-station-guidecard.wide{grid-column:1/-1}.sbb-halte-transfer-preview{min-width:0}.sbb-halte-transfer-preview-intro{color:#667b8e;font-size:12px;line-height:1.5;margin:0 0 5px}.sbb-halte-transfer-preview .sbb-halte-transfer-row{padding:10px 0}.sbb-halte-transfer-preview .sbb-halte-transfer-time small{overflow-wrap:anywhere}.sbb-halte-transfer-preview .sbb-halte-transfer-service strong{white-space:normal;overflow-wrap:anywhere;line-height:1.35}.sbb-halte-app .sbb-halte-transfer-row[hidden]{display:none!important}.sbb-halte-app .sbb-halte-transfer-more{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;margin:10px 0 0;padding:6px 11px;min-height:34px;border:1px solid #bcd4e4;border-radius:8px;background:#f7fbfe;color:#176ca8;font:inherit;font-size:12px;font-weight:800;line-height:1.4;cursor:pointer;box-shadow:none;text-transform:none}.sbb-halte-app .sbb-halte-transfer-more:hover{background:#e9f4fb;border-color:#78add4}.sbb-halte-app .sbb-halte-transfer-more:focus-visible{outline:3px solid rgba(39,122,192,.35);outline-offset:3px}.sbb-halte-app .sbb-halte-transfer-more span{font-size:15px;line-height:1}@media(max-width:600px){.sbb-halte-app .sbb-halte-transfer-more{min-height:40px}}.sbb-halte-route-card{padding-top:20px;padding-bottom:20px}.sbb-halte-route-disclosure{margin:0;border:1px solid #dce8f0;border-radius:13px;overflow:hidden;background:#fff}.sbb-halte-app .sbb-halte-route-disclosure>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;cursor:pointer}.sbb-halte-route-disclosure>summary::-webkit-details-marker{display:none}.sbb-halte-app .sbb-halte-route-disclosure>summary:hover{background:#f6fbff}.sbb-halte-app .sbb-halte-route-disclosure>summary:focus-visible{outline:3px solid #277ac0;outline-offset:-3px}.sbb-halte-route-summarycopy{display:flex;flex-direction:column;gap:3px;min-width:0}.sbb-halte-route-summarycopy strong{color:#24465f;font-size:18px;line-height:1.3}.sbb-halte-route-summarycopy small{font-size:13px;line-height:1.5;color:#667b8e;font-weight:500}.sbb-halte-route-chevron{font-weight:800;font-size:23px;color:#277ac0;transition:transform .18s ease}.sbb-halte-route-disclosure[open] .sbb-halte-route-chevron{transform:rotate(180deg)}.sbb-halte-route-content{border-top:1px solid #e5edf3;padding:16px 18px 18px}.sbb-halte-route-tools{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.sbb-halte-app .sbb-halte-route-tools button{appearance:none;cursor:pointer;background:#fff;color:#215c8c;border:1px solid #b7d2e8;border-radius:999px;padding:8px 14px;font:700 13px/1.3 inherit;font-family:inherit;font-size:13px;font-weight:700;line-height:1.3}.sbb-halte-app .sbb-halte-route-tools button.is-active{background:#277ac0;border-color:#277ac0;color:#fff}.sbb-halte-app .sbb-halte-route-tools button:focus-visible{outline:3px solid #78b8e3;outline-offset:2px}.sbb-halte-route-content .sbb-halte-map{height:360px;border-radius:12px;overflow:hidden;background:#edf4f9}.sbb-halte-route-marker-wrap{background:0 0;border:0}.sbb-halte-route-marker{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#fff;border:3px solid #1276b8;box-shadow:0 2px 7px #102a4380;transition:transform .14s ease,box-shadow .14s ease}.sbb-halte-route-marker.selected{width:34px;height:34px;background:#174b82;color:#fff;border:4px solid #fff;outline:3px solid #174b82;font:800 10px/1 sans-serif}.sbb-halte-route-hover{z-index:5000!important}.sbb-halte-route-hover .sbb-halte-route-marker{transform:scale(1.35);box-shadow:0 2px 11px #16385299}.sbb-halte-route-content .sbb-halte-mapnote{margin:11px 0 0;font-size:12px;line-height:1.6;color:#60778a}@media(max-width:780px){.sbb-halte-route-content .sbb-halte-map{height:300px}}@media(max-width:480px){.sbb-halte-app .sbb-halte-route-disclosure>summary{padding:13px 12px}.sbb-halte-route-content{padding:13px 12px}.sbb-halte-route-content .sbb-halte-map{height:260px}.sbb-halte-route-tools{display:grid;grid-template-columns:1fr 1fr}.sbb-halte-app .sbb-halte-route-tools button{padding:10px 7px;font-size:12px}.sbb-halte-route-summarycopy strong{font-size:17px}}.sbb-halte-card details.sbb-halte-route-disclosure{margin:0;padding:0;border:1px solid #dce8f0;border-radius:13px}.sbb-halte-app .sbb-halte-route-card>.sbb-halte-section-title{margin-top:5px;margin-bottom:15px}.sbb-halte-route-card>.sbb-halte-map{height:390px;border-radius:13px;overflow:hidden;background:#edf4f9}.sbb-halte-route-card>.sbb-halte-mapnote{margin:12px 0 0;color:#60778a;font-size:12px;line-height:1.6}@media(max-width:780px){.sbb-halte-route-card>.sbb-halte-map{height:310px}}@media(max-width:480px){.sbb-halte-route-card>.sbb-halte-map{height:270px}}.sbb-halte-app .leaflet-tooltip.sbb-halte-route-tooltip{max-width:min(280px,78vw);min-width:150px;white-space:normal;padding:10px 13px;border:1px solid #d7e5f2;border-radius:11px;background:#fff;box-shadow:0 5px 20px rgba(21,54,82,.2);color:#173b57;font-family:inherit;line-height:1.35;text-align:left;pointer-events:none}.sbb-halte-app .sbb-halte-route-tip-name{display:block;font-size:14px;line-height:1.35;font-weight:750;color:#174b82}.sbb-halte-app .sbb-halte-route-tip-meta{display:block;margin-top:4px;font-size:12px;line-height:1.45;font-weight:500;color:#60768a}.sbb-halte-app .leaflet-tooltip-top.sbb-halte-route-tooltip:before{border-top-color:#fff}.sbb-halte-app .sbb-halte-route-popup .leaflet-popup-content-wrapper{border-radius:12px;box-shadow:0 6px 22px rgba(21,54,82,.2)}.sbb-halte-app .sbb-halte-route-popup .leaflet-popup-content{margin:12px 17px;font-family:inherit;line-height:1.4}.sbb-halte-app .sbb-halte-route-popup-copy strong{display:block;color:#174b82;font-size:16px;font-weight:750}.sbb-halte-app .sbb-halte-route-popup-copy span{display:block;color:#60768a;font-size:12px;margin-top:4px}