.sn-train{--train-ink:var(--foreground);--train-muted:var(--muted);--train-border:color-mix(in srgb, var(--foreground) 12%, transparent);--train-green:var(--radium-deep-solid);background:var(--background);min-width:0;min-height:100vh;color:var(--train-ink);padding-top:0;font-size:1.4rem;line-height:1.4}.sn-train-hero{background:linear-gradient(105deg, color-mix(in srgb, var(--primary) 88%, transparent), color-mix(in srgb, var(--primary) 35%, transparent)), url(/assets/train.jpg) center / cover no-repeat;align-items:center;min-height:100svh;padding:12rem 2.4rem 8rem;display:grid;position:relative;overflow:hidden}.sn-train-hero-inner{max-width:120rem;margin:0 auto}.sn-train-kicker{color:var(--radium-deep-solid);letter-spacing:.14em;text-transform:uppercase;margin:0 0 1rem;font-size:1.2rem;font-weight:700}.sn-train-hero h1{max-width:64rem;color:var(--white);letter-spacing:-.04em;margin:0;font-size:clamp(3.6rem,6vw,6.4rem);font-weight:700;line-height:1.05}.sn-train-intro{max-width:52rem;color:color-mix(in srgb, var(--white) 78%, transparent);margin:2rem 0 3.6rem;font-size:1.8rem;line-height:1.5}.sn-train-search{background:var(--white);border:1px solid color-mix(in srgb, var(--white) 40%, transparent);min-width:0;max-width:120rem;box-shadow:0 1.6rem 4rem color-mix(in srgb, var(--black) 20%, transparent);border-radius:1.2rem;padding:2rem}.sn-train-search-grid{gap:.8rem;min-width:0;display:grid}@media (min-width:900px){.sn-train-search-grid{grid-template-columns:1.3fr 1.3fr 1.1fr 1fr .9fr auto;gap:0}}.sn-train-field{border-bottom:1px solid var(--train-border);min-width:0;padding:1.2rem 1.4rem;position:relative}@media (min-width:900px){.sn-train-field{border-right:1px solid var(--train-border);border-bottom:0}}.sn-train-field label{color:var(--train-muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.6rem;font-size:1.1rem;font-weight:700;display:block}.sn-train-field input,.sn-train-field select{width:100%;min-width:0;color:var(--train-ink);font:inherit;background:0 0;border:0;outline:0;font-size:1.5rem;font-weight:700}.sn-train-field select{appearance:none;cursor:pointer}.sn-train-field-station input{padding-right:2.6rem}.sn-train-swap{z-index:2;border:1px solid var(--train-border);background:var(--white);width:3.2rem;height:3.2rem;color:var(--train-green);border-radius:50%;justify-content:center;align-items:center;font-size:1.8rem;display:none;position:absolute;top:50%;right:-1.6rem;transform:translateY(-50%)}@media (min-width:900px){.sn-train-swap{display:inline-flex}}.sn-train-date-chips{gap:.6rem;margin-top:.8rem;display:flex}.sn-train-date-chips button{border:1px solid var(--train-border);background:var(--white);color:var(--train-muted);border-radius:999px;padding:.4rem .8rem;font-size:1.1rem}.sn-train-date-chips button.is-active{border-color:var(--train-green);background:var(--tile-mint);color:var(--train-green)}.sn-train-search-btn{background:var(--train-green);width:100%;min-height:5.4rem;color:var(--white);border:0;border-radius:.8rem;margin-top:1.2rem;padding:0 2.4rem;font-size:1.6rem;font-weight:700}@media (min-width:900px){.sn-train-search-btn{border-radius:.8rem;width:auto;min-width:15rem;margin:0 0 0 1.2rem}}.sn-train-credit{background:var(--tile-mint);color:var(--radium-deep-solid);border-radius:.8rem;align-items:flex-start;gap:1rem;margin-top:1.6rem;padding:1.2rem 1.4rem;font-size:1.2rem;display:flex}.sn-train-credit strong{color:var(--train-green);flex:none}.sn-train-search-result{border-left:.4rem solid var(--radium);background:color-mix(in srgb, var(--white) 96%, transparent);max-width:48rem;color:var(--train-ink);flex-direction:column;gap:.4rem;margin-top:1.6rem;padding:1.6rem 2rem;display:flex}.sn-booking-form-error{color:#a13f3f;align-items:center;gap:.7rem;margin:1.2rem 0 0;font-size:1.3rem;display:flex}.sn-train-search-result span{color:var(--train-muted);font-size:1.3rem}.sn-train-tools,.sn-train-section{max-width:120rem;margin:0 auto;padding:4.8rem 2.4rem}.sn-train-tools{gap:1rem;padding-bottom:0;display:grid}@media (min-width:768px){.sn-train-hero{padding:11rem 2.4rem 10rem}.sn-train-tools{grid-template-columns:repeat(3,1fr)}}.sn-train-tools a{border:1px solid var(--train-border);background:var(--white);color:var(--train-ink);flex-direction:column;gap:.4rem;padding:1.8rem 2rem;text-decoration:none;display:flex}.sn-train-tools a:hover,.sn-train-routes a:hover{border-color:var(--train-green)}.sn-train-tools span{font-size:1.5rem;font-weight:700}.sn-train-tools small{color:var(--train-muted);font-size:1.2rem}@media (max-width:700px){.sn-train,.sn-train-hero,.sn-train-hero-inner,.sn-train-search,.sn-train-search-grid,.sn-train-field,.sn-train-field input,.sn-train-field select{box-sizing:border-box;min-width:0;max-width:100%}.sn-train-search{padding:1.2rem}.sn-train-field input,.sn-train-field select{text-overflow:ellipsis;overflow:hidden}}.sn-train-section h2{letter-spacing:-.03em;margin:0 0 2.4rem;font-size:2.6rem;font-weight:700}.sn-train-benefits{gap:1.6rem;display:grid}@media (min-width:768px){.sn-train-benefits{grid-template-columns:repeat(3,minmax(0,1fr))}}.sn-train-benefit{border-top:2px solid var(--train-green);background:var(--white);min-height:20rem;padding:2rem}.sn-train-benefit-number{color:var(--train-green);margin-bottom:4.8rem;font-size:1.2rem;font-weight:700;display:block}.sn-train-benefit h3{margin:0 0 .8rem;font-size:1.7rem}.sn-train-benefit p{color:var(--train-muted);margin:0;font-size:1.3rem}.sn-train-section-heading{justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2.4rem;display:flex}.sn-train-section-heading h2{margin-bottom:0}.sn-train-section-heading>p{max-width:28rem;color:var(--train-muted);margin:0;font-size:1.3rem}.sn-train-routes{gap:.8rem;display:grid}@media (min-width:768px){.sn-train-routes{grid-template-columns:repeat(4,minmax(0,1fr))}}.sn-train-routes a{border:1px solid var(--train-border);background:var(--white);min-height:5.2rem;color:var(--train-ink);justify-content:space-between;align-items:center;gap:1rem;padding:1.2rem 1.4rem;font-size:1.3rem;text-decoration:none;display:flex}.sn-train-routes a span{color:var(--train-green);font-size:1.7rem}@media (max-width:600px){.sn-train-section-heading{display:block}.sn-train-section-heading>p{margin-top:1.2rem}}
