.rail-pass-selector{color:var(--text);font-family:var(--font-body)}.rail-pass-selector--full{min-height:340px}@media (width<=700px){.rail-pass-selector--full{min-height:540px}}.rail-pass-selector--full.rail-pass-selector--preset{min-height:560px}.rail-pass-selector--compact{min-height:220px}.rail-pass-selector__shell{background:var(--panel-soft);border:1px solid var(--line);border-radius:var(--radius);padding:20px}.rail-pass-selector__wizard{gap:14px;display:grid}.rail-pass-selector__intro{gap:4px;display:grid}.rail-pass-selector__eyebrow{color:var(--accent-dark);letter-spacing:0;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:800}.rail-pass-selector__title,.rail-pass-selector__result-title{color:var(--text);font-family:var(--font-heading);letter-spacing:0;margin:0;font-size:1.35rem;font-weight:700;line-height:1.2}.rail-pass-selector__step,.rail-pass-selector__result{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);gap:14px;padding:16px;display:grid}.rail-pass-selector__step.is-locked{opacity:.68}.rail-pass-selector__step-heading,.rail-pass-selector__result-top,.rail-pass-selector__summary-button{justify-content:space-between;align-items:center;gap:12px;display:flex}.rail-pass-selector__step-heading>span,.rail-pass-selector__summary-button>span{color:var(--muted);letter-spacing:0;text-transform:uppercase;font-size:.82rem;font-weight:800}.rail-pass-selector__step-heading button,.rail-pass-selector__link-button{color:var(--accent-dark);cursor:pointer;font:inherit;text-underline-offset:3px;background:0 0;border:0;padding:0;font-weight:800;text-decoration:underline}.rail-pass-selector__summary-button{color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;width:100%;padding:0}.rail-pass-selector__summary-button strong{color:var(--text);text-align:right;font-size:.95rem}.rail-pass-selector__choice-grid{gap:10px;display:grid}.rail-pass-selector__choice-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.rail-pass-selector__choice,.rail-pass-selector__scheme{background:var(--panel);border:1px solid var(--line);color:var(--text);cursor:pointer;text-align:left;border-radius:8px;justify-content:space-between;align-items:stretch;gap:10px;min-height:74px;padding:12px;transition:background-color .15s,border-color .15s,box-shadow .15s;display:flex}.rail-pass-selector__choice{flex-direction:column}.rail-pass-selector__choice-icon{color:var(--accent-dark);display:inline-flex}.rail-pass-selector__choice-icon svg{width:30px;height:30px}.rail-pass-selector__choice.is-selected,.rail-pass-selector__scheme.is-selected,.rail-pass-selector__segmented button.is-selected,.rail-pass-selector__class-toggle button.is-selected{border-color:var(--accent-dark);box-shadow:inset 0 0 0 1px var(--accent-dark)}.rail-pass-selector__choice span,.rail-pass-selector__scheme strong{font-size:1.08rem;font-weight:700}.rail-pass-selector__scheme strong{font-size:1.15rem;line-height:1.25}.rail-pass-selector__choice small{font-size:.95rem}.rail-pass-selector__scheme-prices small{color:var(--text);white-space:nowrap;font-size:1rem;font-weight:700}.rail-pass-selector__scheme-tag,.rail-pass-selector__scheme-prices small.rail-pass-selector__scheme-tag{color:var(--muted);letter-spacing:.02em;text-transform:uppercase;white-space:normal;font-size:.78rem;font-weight:600}.rail-pass-selector__scheme-tag.is-recommended{background:var(--badge-bg);color:var(--badge-text);border-radius:4px;justify-self:start;padding:2px 6px;display:inline-block}@media (hover:hover){.rail-pass-selector__choice:hover,.rail-pass-selector__scheme:hover,.rail-pass-selector__segmented button:hover,.rail-pass-selector__class-toggle button:hover,.rail-pass-selector__stepper-controls button:hover,.rail-pass-selector__field select:hover{background:var(--hover-bg);border-color:var(--accent-dark)}.rail-pass-selector__primary:hover:not(:disabled),.rail-pass-selector__buy:hover,.rail-pass-selector__primary:focus-visible:not(:disabled),.rail-pass-selector__buy:focus-visible{background:var(--cta-hover-bg)}.rail-pass-selector__link-button:hover{color:var(--accent-dark);text-decoration:underline}}.rail-pass-selector small,.rail-pass-selector__muted{color:var(--muted);margin:0;font-size:.9rem;line-height:1.45}.rail-pass-selector__field,.rail-pass-selector__field-group{gap:8px;display:grid}.rail-pass-selector__field span,.rail-pass-selector__field-title{color:var(--text);margin:0;font-size:1rem;font-weight:800}.rail-pass-selector__field select{background:var(--panel);border:1px solid var(--line);color:var(--text);font:inherit;border-radius:8px;min-height:44px;padding:8px 10px}.rail-pass-selector__steppers,.rail-pass-selector__option-list{gap:8px;display:grid}.rail-pass-selector__stepper{border:1px solid var(--line);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;min-height:64px;padding:10px 12px;display:flex}.rail-pass-selector__stepper span{font-weight:800;display:block}.rail-pass-selector__stepper-controls{grid-template-columns:36px 28px 36px;align-items:center;gap:8px;display:grid}.rail-pass-selector__stepper-controls button,.rail-pass-selector__segmented button,.rail-pass-selector__class-toggle button{background:var(--panel);border:1px solid var(--line);color:var(--text);cursor:pointer;font:inherit;border-radius:8px;min-height:38px;padding:8px 10px;font-weight:600;transition:background-color .15s,border-color .15s}.rail-pass-selector__stepper-controls strong{text-align:center}.rail-pass-selector__primary,.rail-pass-selector__buy{background:var(--accent-dark);color:#fff;cursor:pointer;font:inherit;border:0;border-radius:22px;justify-content:center;align-items:center;min-height:44px;padding:10px 22px;font-weight:500;text-decoration:none;transition:background-color .15s;display:inline-flex}.rail-pass-selector__primary:disabled{cursor:not-allowed;opacity:.45}.rail-pass-selector__notice{background:var(--accent-soft-bg);border:1px solid var(--line);color:var(--badge-text);border-radius:8px;margin:0;padding:10px 12px}.rail-pass-selector__segmented,.rail-pass-selector__class-toggle{flex-wrap:wrap;gap:8px;display:flex}.rail-pass-selector__scheme{width:100%}.rail-pass-selector__scheme>span{gap:3px;display:grid}.rail-pass-selector__scheme-prices{text-align:right;justify-items:end;min-width:112px}.rail-pass-selector__option-list--all{border-top:1px solid var(--line);padding-top:8px}.rail-pass-selector__total{background:var(--footer-bg);color:var(--footer-text);text-align:right;border-radius:8px;gap:2px;min-width:120px;padding:10px 12px;display:grid}.rail-pass-selector__total span{text-transform:uppercase;font-size:.78rem;font-weight:800}.rail-pass-selector__total strong{font-size:1.25rem}.rail-pass-selector__price-lines{border-top:1px solid var(--line);gap:8px;margin:0;padding:12px 0 0;list-style:none;display:grid}.rail-pass-selector__price-lines li{justify-content:space-between;gap:12px;display:flex}.rail-pass-selector__reassurance{color:var(--muted);margin:0;font-size:.9rem}.rail-pass-selector__compact-card{gap:12px;display:grid}@media (width<=700px){.rail-pass-selector__choice-grid--two,.rail-pass-selector__result-top{grid-template-columns:1fr}.rail-pass-selector__result-top{align-items:stretch;display:grid}.rail-pass-selector__stepper,.rail-pass-selector__summary-button,.rail-pass-selector__scheme{flex-direction:column;align-items:stretch}.rail-pass-selector__scheme-prices,.rail-pass-selector__summary-button strong{text-align:left;justify-items:start}.rail-pass-selector__total{text-align:left}}
