.transit-front{--ink:#24474d;--muted:#667c80;--red:#b04335;--paper:#fffefa;--line:#dce6e2;--green:#eff5f0;--max:1360px;font:15px/1.6 Manrope,Arial,sans-serif;color:var(--ink);background:var(--paper)}
.transit-front *{box-sizing:border-box}
.transit-front h1,.transit-front h2,.transit-front h3,.transit-front p{margin:0}
.transit-front h1,.transit-front h2,.transit-front h3{font-weight:700}
.transit-front button,.transit-front input{font:inherit}
.transit-front button,.transit-front a{touch-action:manipulation}
.transit-front button{cursor:pointer;color:inherit}
.transit-front a{color:inherit;text-decoration:none}
.transit-front button:focus-visible,.transit-front a:focus-visible,.transit-front input:focus-visible{outline:3px solid #1e7bb0;outline-offset:4px}
.transit-front [hidden]{display:none!important}
.transit-front .wrap{width:min(var(--max),calc(100% - 72px));margin:auto}
.transit-front .icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}
.transit-front .symbol-library,.transit-front .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.transit-front .skip{position:fixed;top:-90px;left:10px;z-index:100;background:#fff;padding:12px}
.transit-front .skip:focus{top:10px}
.transit-front .site-head{border-bottom:1px solid var(--line)}
.transit-front .topbar{height:86px;display:flex;align-items:center;gap:27px}
.transit-front .brand img{width:126px;height:auto;display:block}
.transit-front .search{display:flex;gap:12px;align-items:center;background:var(--green);border:1px solid #e5ede8;border-radius:50px;padding:8px 15px;max-width:450px;flex:1;margin-left:24px}
.transit-front .search input{width:100%;border:0;outline:0;background:transparent;font-size:13px;min-width:0}
.transit-front .search>svg{width:18px;color:var(--muted)}
.transit-front .search button{border:0;background:transparent;display:flex;padding:3px}
.transit-front .phone{display:flex;align-items:center;gap:12px;margin-left:auto;line-height:1.35}
.transit-front .phone svg{color:var(--red)}
.transit-front .phone small{display:block;color:var(--muted);font-size:11px}
.transit-front .phone strong{font-size:18px;letter-spacing:.4px}
.transit-front .shop{font-size:13px;font-weight:700;border-left:1px solid var(--line);padding-left:26px}
.transit-front .cart{display:flex}
.transit-front .nav{height:47px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px;font-weight:700}
.transit-front .nav a:hover{color:var(--red)}
.transit-front .red{color:var(--red)}
.transit-front .hero{padding:24px 0 0}
.transit-front .hero-copy{display:flex;justify-content:space-between;gap:45px;align-items:center}
.transit-front .eyebrow{text-transform:uppercase;font-size:10px;letter-spacing:1.8px;font-weight:700;color:var(--muted)}
.transit-front h1{font-size:60px;line-height:1.08;letter-spacing:-3px;margin:9px 0 19px}
.transit-front h1 span{color:var(--red)}
.transit-front .hero-intro{padding-right:35px}
.transit-front .hero-intro p{font-size:17px;line-height:1.7;color:var(--muted)}
.transit-front .hero-intro strong{color:var(--ink)}
.transit-front .actions{display:flex;align-items:center;gap:25px;margin-top:20px}
.transit-front .button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:47px;padding:11px 21px;border:1px solid transparent;border-radius:6px;font-size:13px;font-weight:700;transition:background .18s,box-shadow .18s}
.transit-front .primary{background:var(--red);color:#fff}
.transit-front .primary:hover{background:#91372c}
.transit-front .secondary{background:#fff;border-color:var(--line)}
.transit-front .secondary:hover{background:var(--green)}
.transit-front .text-link{font-size:12px;font-weight:700}
.transit-front .text-link:hover{text-decoration:underline;text-underline-offset:4px}
.transit-front .proof{display:grid;grid-template-columns:1fr 1.4fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0;margin:5px 0 21px}
.transit-front .proof>div,.transit-front .proof>a{display:flex;align-items:center;gap:15px;padding:0 20px}
.transit-front .proof>a{padding-left:0}
.transit-front .proof>div{border-left:1px solid var(--line)}
.transit-front .proof strong{white-space:nowrap;font-size:26px;letter-spacing:-1px;color:var(--red)}
.transit-front .proof strong>span{font-size:18px}
.transit-front .proof>div>span,.transit-front .proof>a>span{font-size:11px;line-height:1.6;max-width:205px;color:var(--muted)}
.transit-front .section-heading{display:flex;align-items:center;justify-content:space-between;margin:0 0 15px}
.transit-front .section-heading .eyebrow{font-size:9px}
.transit-front h2{font-size:29px;line-height:1.2;letter-spacing:-1px;margin-top:4px}
.transit-front .seasons{display:flex;border:1px solid var(--line);border-radius:7px;padding:3px;background:#fff}
.transit-front .seasons button{display:flex;align-items:center;gap:7px;border:0;background:none;border-radius:4px;padding:8px 15px;font-size:12px}
.transit-front .seasons .icon{width:16px;height:16px}
.transit-front .seasons button[aria-pressed=true]{background:var(--ink);color:#fff}
.transit-front .scene-layout{display:grid;grid-template-columns:minmax(0,1fr) 305px;gap:20px}
.transit-front .scene{position:relative;align-self:start;aspect-ratio:2/1;background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.transit-front .campus-image{width:100%;height:100%;display:block;object-fit:contain}
.transit-front .scene-tag{position:absolute;top:13px;display:flex;align-items:center;gap:7px;font-size:10px;font-weight:700;letter-spacing:.2px;background:#fffffff0;border:1px solid #e9eee8;border-radius:5px;padding:6px 9px;pointer-events:none}
.transit-front .scene-tag .icon{width:14px;height:14px}
.transit-front .tag-summer{left:13px;color:#84753d}
.transit-front .tag-winter{right:13px;color:#557b8e}
.transit-front .pin{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);width:25px;height:25px;display:grid;place-items:center;background:#fff;border:1px solid #ffffff;box-shadow:0 1px 5px #163c4655;border-radius:50%;padding:0;transition:opacity .2s,box-shadow .2s;z-index:2}
.transit-front .pin:after{content:'';width:10px;height:10px;background:var(--red);border-radius:50%;display:block}
.transit-front .pin[aria-pressed=true]{box-shadow:0 0 0 6px #b0433533,0 0 0 1px #b04335;border-color:var(--red)}
.transit-front .pin[aria-pressed=true]:after{animation:ixTransitSoftpulse 3s 2}
.transit-front .pin-label{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);padding:4px 8px;background:var(--ink);color:#fff;border-radius:4px;font-size:10px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .15s}
.transit-front .pin:hover .pin-label,.transit-front .pin:focus-visible .pin-label,.transit-front .pin[aria-pressed=true] .pin-label{opacity:1}
.transit-front .service-pin{position:absolute;bottom:8px;display:flex;align-items:center;gap:6px;font-size:10px;font-weight:700;background:#fffefaf2;border:1px solid #dbe3dd;box-shadow:0 2px 7px #203f491a;border-radius:5px;padding:6px 9px;z-index:3}
.transit-front .service-pin .icon{width:14px;height:14px}
.transit-front .service-pin:hover{background:var(--green);border-color:#b9cbbd}
.transit-front .van{left:6%}
.transit-front .parcel{left:33%}
.transit-front .service-pin[aria-pressed=true]{border-color:var(--red);color:var(--red)}
.transit-front .detail{background:var(--green);border:1px solid #dce6de;border-radius:10px;padding:23px;display:flex;flex-direction:column;justify-content:space-between;min-height:100%}
.transit-front .detail .eyebrow{font-size:9px;letter-spacing:1px;color:var(--red)}
.transit-front .detail h3{font-size:27px;line-height:1.16;letter-spacing:-1px;margin:11px 0 13px}
.transit-front .detail-copy>p:not(.eyebrow){font-size:12px;line-height:1.8;color:#5c7275}
.transit-front .detail ul{list-style:none;padding:0;margin:15px 0 17px;font-size:11px;line-height:1.7;color:#4d666a}
.transit-front .detail li{padding:5px 0;border-bottom:1px solid #dfe8e1}
.transit-front .detail li:before{content:'·';color:var(--red);font-weight:700;margin-right:8px}
.transit-front .detail-actions{display:flex;flex-direction:column;gap:8px}
.transit-front .detail-actions .button{font-size:12px;padding:10px 12px;min-height:43px;gap:8px}
.transit-front .detail-actions .text-link{font-size:11px;text-align:center;padding:5px 0 0}
.transit-front .detail.changed .detail-copy{animation:ixTransitAppear .25s ease-out}
.transit-front .system-choice{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0 0}
.transit-front .system-choice button{background:transparent;border:1px solid var(--line);border-radius:5px;padding:7px 11px;font-size:11px;transition:background .18s,border-color .18s}
.transit-front .system-choice button:hover{background:var(--green);border-color:#a3b9ad}
.transit-front .system-choice button[aria-pressed=true]{border-color:var(--ink);background:var(--ink);color:#fff}
.transit-front .service-paths{padding-top:42px}
.transit-front .service-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px}
.transit-front .service-heading h2{font-size:26px}
.transit-front .service-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.transit-front .service-grid article{padding:25px 28px 27px;position:relative}
.transit-front .service-grid article:first-child{padding-left:0}
.transit-front .service-grid article+article{border-left:1px solid var(--line)}
.transit-front .service-grid .icon{color:var(--red);width:27px;height:27px;vertical-align:middle;margin-right:12px}
.transit-front .service-number{font-size:9px;letter-spacing:1.3px;color:var(--muted)}
.transit-front .service-grid h3{font-size:20px;letter-spacing:-.5px;line-height:1.4;margin:15px 0 10px}
.transit-front .service-grid p{font-size:12px;line-height:1.8;color:var(--muted);max-width:340px}
.transit-front .service-grid a{display:flex;justify-content:space-between;align-items:center;color:var(--red);font-weight:700;font-size:12px;margin-top:19px;max-width:340px}
.transit-front .service-grid article.flash{background:#e9f0e9;animation:ixTransitServiceflash .6s ease-out}
.transit-front .family-section{padding:35px 0}
.transit-front .family-section h2{font-size:26px}
.transit-front .family-links{display:grid;grid-template-columns:repeat(3,1fr);gap:0 24px;margin-top:15px}
.transit-front .family-links a{border-bottom:1px solid var(--line);padding:12px 0;font-size:12px}
.transit-front .family-links a:hover{color:var(--red)}
.transit-front .talk{background:var(--green);border:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:25px;padding:25px 30px;border-radius:8px}
.transit-front .talk h2{font-size:24px}
.transit-front .talk p:not(.eyebrow){font-size:12px;color:var(--muted);margin-top:8px}
.transit-front .talk .button{flex-shrink:0}
.transit-front .footer{padding-top:30px;padding-bottom:30px;display:flex;align-items:center;justify-content:space-between;gap:25px;color:var(--muted);font-size:11px}
.transit-front .footer .brand img{width:95px}
.transit-front .footer>a:not(.brand){font-weight:700}
@keyframes ixTransitSoftpulse{50%{opacity:.65}}
@keyframes ixTransitAppear{from{opacity:.4;transform:translateY(4px)}to{opacity:1;transform:none}}
@keyframes ixTransitServiceflash{from{background:#e0ebe0}to{background:#e9f0e9}}
@media(min-width:1600px){.transit-front .scene-layout{grid-template-columns:minmax(0,1fr) 320px}}
@media(max-width:1100px){.transit-front .wrap{width:calc(100% - 42px)}
.transit-front .topbar{gap:20px}
.transit-front .search{margin-left:0;max-width:360px}
.transit-front .phone small{display:none}
.transit-front .phone strong{font-size:15px}
.transit-front .shop{padding-left:18px;font-size:11px}
.transit-front .nav{font-size:10px;gap:12px}
.transit-front h1{font-size:51px}
.transit-front .hero-intro{padding-right:0}
.transit-front .hero-intro p{font-size:14px}
.transit-front .actions{gap:15px}
.transit-front .proof strong{font-size:23px}
.transit-front .proof>div,.transit-front .proof>a{gap:10px;padding-right:10px}
.transit-front .proof>div>span,.transit-front .proof>a>span{font-size:10px}
.transit-front .scene-layout{grid-template-columns:minmax(0,1fr) 275px;gap:14px}
.transit-front .detail{padding:19px}
.transit-front .detail h3{font-size:24px}
.transit-front .detail li{font-size:10px}
.transit-front .service-heading h2{font-size:23px}}
@media(max-width:850px){.transit-front .topbar{height:77px}
.transit-front .brand img{width:112px}
.transit-front .search{max-width:none}
.transit-front .phone{display:none}
.transit-front .nav{justify-content:flex-start;overflow-x:auto;white-space:nowrap;height:42px;gap:23px}
.transit-front .nav a:last-child{display:none}
.transit-front .hero-copy{gap:20px}
.transit-front h1{font-size:45px;letter-spacing:-2px}
.transit-front .hero-intro p{font-size:12px}
.transit-front .actions{flex-wrap:wrap;gap:10px;margin-top:12px}
.transit-front .button{font-size:12px;padding:10px 14px}
.transit-front .proof{grid-template-columns:1fr 1.4fr}
.transit-front .proof>div:last-child{display:none}
.transit-front .scene-layout{grid-template-columns:1fr}
.transit-front .detail{display:grid;grid-template-columns:1fr 240px;gap:25px;min-height:0}
.transit-front .detail h3{margin:8px 0}
.transit-front .detail ul{display:none}
.transit-front .detail-actions{justify-content:center}
.transit-front .scene-tag{font-size:10px}
.transit-front .system-choice button{padding:8px 11px}
.transit-front .service-heading{display:block}
.transit-front .service-heading h2{margin-top:7px}
.transit-front .service-grid article{padding:20px}
.transit-front .service-grid h3{font-size:18px}
.transit-front .talk{padding:23px}
.transit-front .talk h2{font-size:21px}
.transit-front .footer{flex-wrap:wrap}
.transit-front .footer span{display:none}}
@media(max-width:550px){.transit-front .wrap{width:calc(100% - 30px)}
.transit-front .topbar{height:76px;gap:16px;flex-wrap:wrap;position:relative}
.transit-front .brand img{width:110px}
.transit-front .search{order:4;flex-basis:100%;max-width:none;margin:0 0 10px;padding:6px 12px}
.transit-front .site-head .topbar{height:121px;align-content:center;row-gap:8px}
.transit-front .shop{margin-left:auto;border:0;font-size:11px;padding:0}
.transit-front .cart .icon{width:21px}
.transit-front .nav{height:41px;font-size:11px;gap:22px}
.transit-front .hero{padding-top:22px}
.transit-front .hero-copy{display:block}
.transit-front h1{font-size:41px;letter-spacing:-2px;margin:8px 0 15px}
.transit-front .hero-intro p{font-size:13px;line-height:1.6}
.transit-front .hero-intro p br{display:none}
.transit-front .actions{gap:17px;margin-top:15px}
.transit-front .hero-intro .button{font-size:11px;min-height:42px;padding:10px 14px}
.transit-front .hero-intro .text-link{font-size:11px}
.transit-front .proof{margin:21px 0;padding:13px 0;gap:12px;grid-template-columns:.85fr 1.4fr}
.transit-front .proof>div,.transit-front .proof>a{display:block;padding:0}
.transit-front .proof>div{padding-left:14px}
.transit-front .proof strong{font-size:24px;line-height:1.4;display:block}
.transit-front .proof>a>span,.transit-front .proof>div>span{display:block;font-size:10px;margin-top:4px}
.transit-front .section-heading{display:block;margin-bottom:13px}
.transit-front h2{font-size:26px}
.transit-front .section-heading .eyebrow{font-size:9px}
.transit-front .seasons{display:inline-flex;margin-top:15px}
.transit-front .seasons button{padding:7px 14px}
.transit-front .scene{border-radius:7px}
.transit-front .scene-tag{top:6px;padding:3px 5px;font-size:7px;gap:4px}
.transit-front .scene-tag .icon{width:10px;height:10px}
.transit-front .tag-summer{left:6px}
.transit-front .tag-winter{right:6px}
.transit-front .pin{width:22px;height:22px}
.transit-front .pin:after{width:7px;height:7px}
.transit-front .pin-label{font-size:8px;padding:3px 5px;bottom:calc(100% + 5px)}
.transit-front .pin[aria-pressed=true]{box-shadow:0 0 0 3px #b0433533,0 0 0 1px #b04335}
.transit-front .pin:not([aria-pressed=true]) .pin-label{display:none}
.transit-front .service-pin{bottom:5px;font-size:7px;padding:3px 5px;gap:3px}
.transit-front .service-pin .icon{width:10px;height:10px}
.transit-front .van{left:4%}
.transit-front .parcel{left:37%}
.transit-front .detail{display:flex;padding:19px;gap:17px}
.transit-front .detail .eyebrow{font-size:9px}
.transit-front .detail h3{font-size:25px}
.transit-front .detail-copy>p:not(.eyebrow){font-size:12px}
.transit-front .detail-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.transit-front .detail-actions .button{font-size:10px;padding:8px 7px;min-height:41px;gap:5px}
.transit-front .detail-actions .icon{width:15px;height:15px}
.transit-front .detail-actions .text-link{grid-column:1/-1;font-size:11px;padding-top:4px}
.transit-front .system-choice{gap:6px;margin-top:12px}
.transit-front .system-choice button{font-size:10px;padding:8px 10px}
.transit-front .service-paths{padding-top:30px}
.transit-front .service-heading h2{font-size:24px}
.transit-front .service-grid{grid-template-columns:1fr;margin-top:16px}
.transit-front .service-grid article,.transit-front .service-grid article:first-child{padding:22px 3px}
.transit-front .service-grid article+article{border-left:0;border-top:1px solid var(--line)}
.transit-front .service-grid h3{font-size:21px;margin-top:11px}
.transit-front .service-grid p,.transit-front .service-grid a{font-size:12px;max-width:none}
.transit-front .service-grid a{margin-top:13px}
.transit-front .family-section{padding:28px 0}
.transit-front .family-section h2{font-size:23px}
.transit-front .family-links{grid-template-columns:1fr 1fr;gap:0 14px}
.transit-front .family-links a{font-size:10px;line-height:1.6}
.transit-front .talk{display:block;padding:21px}
.transit-front .talk h2{font-size:22px}
.transit-front .talk .button{margin-top:17px;font-size:11px}
.transit-front .footer{gap:15px;font-size:10px;padding:24px 0}
.transit-front .footer .brand img{width:90px}}
@media(prefers-reduced-motion:reduce){.transit-front *,.transit-front *:before,.transit-front *:after{animation:none!important;transition:none!important}}
@media(min-width:851px){.transit-front .hero{padding-top:18px}
.transit-front h1{font-size:55px;line-height:1.05;margin-bottom:14px}
.transit-front .proof{margin-bottom:15px}
.transit-front .section-heading{margin-bottom:12px}}
@media(max-width:550px){.transit-front .pin:not([aria-pressed=true]){display:none}
.transit-front .pin{width:26px;height:26px}
.transit-front .system-choice button{min-height:35px;font-size:11px}
.transit-front .service-pin{font-size:8px;min-height:25px}
.transit-front .detail-actions .button{font-size:11px}}
.transit-front .hero{display:block;grid-template-columns:none;min-height:0}