/* Samaritan Aviation · recruiting microsite
   Brand: navy #223357 · steel #35558C · gold #FFCE57 · paper #F7F4EC · Bebas Neue + Poppins */

@font-face{font-family:"Bebas Neue";src:url("../fonts/BebasNeue-Regular.sub.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Poppins";src:url("../fonts/Poppins-Regular.sub.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Poppins";src:url("../fonts/Poppins-Medium.sub.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Poppins";src:url("../fonts/Poppins-SemiBold.sub.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}

:root{
  --navy:#223357; --navy-deep:#17233f; --steel:#35558C; --gold:#FFCE57; --gold-tint:#FFF1C9; --paper:#F7F4EC; --white:#fff;
  --line:rgba(34,51,87,.16); --line-light:rgba(255,255,255,.22);
  --maxw:1240px; --gut:clamp(20px,5vw,64px);
  --display:"Bebas Neue","Arial Narrow",Impact,sans-serif;
  --body:"Poppins",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --ease:cubic-bezier(.2,.7,.2,1);
}

*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
/* arriving on a #link jumps straight there; smooth scrolling starts once the page is ready */
html{-webkit-text-size-adjust:100%;scroll-padding-top:84px}
html.is-ready{scroll-behavior:smooth}
body{margin:0;font-family:var(--body);font-size:1.0625rem;line-height:1.62;color:var(--navy);background:var(--navy-deep);-webkit-font-smoothing:antialiased;overflow-x:clip}
main{display:block;background:var(--paper)}
img{max-width:100%;height:auto;display:block}
picture{display:block}
a{color:inherit}
p{margin:0 0 1em}
h1,h2,h3,h4{font-family:var(--display);font-weight:400;text-transform:uppercase;line-height:.95;letter-spacing:.012em;margin:0}
ul,ol{margin:0;padding:0;list-style:none}
button{font:inherit}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:12px;top:-80px;z-index:200;background:var(--gold);color:var(--navy);padding:12px 18px;border-radius:8px;font-weight:600;text-decoration:none}
.skip:focus{top:12px}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px;box-shadow:0 0 0 7px var(--navy);border-radius:4px}
.wrap{width:min(100% - 2*var(--gut),var(--maxw));margin-inline:auto}
.sec{padding:clamp(72px,10vw,136px) 0;position:relative}

/* ---------- buttons and links ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6em;min-height:52px;padding:.75em 1.6em;border-radius:999px;font:600 1rem/1.1 var(--body);text-decoration:none;border:2px solid transparent;cursor:pointer;transition:transform .25s var(--ease),background-color .2s,color .2s,border-color .2s;text-align:center}
.btn small{font-size:.82em;font-weight:500}
.btn svg{width:1.05em;height:1.05em;flex:none;transition:transform .25s var(--ease)}
.btn:hover svg{transform:translateX(4px)}
.btn--gold{background:var(--gold);color:var(--navy)}
.btn--gold:hover{background:#ffdb82;transform:translateY(-2px)}
.btn--navy{background:var(--navy);color:#fff}
.btn--navy:hover{background:var(--steel);transform:translateY(-2px)}
.btn--ghost{border-color:currentColor;background:transparent;color:inherit}
.btn--ghost:hover{background:var(--navy);color:#fff;border-color:var(--navy)}
.on-dark .btn--ghost:hover{background:#fff;color:var(--navy);border-color:#fff}
.btn--sm{min-height:44px;padding:.55em 1.15em;font-size:.9rem}
.link-arrow{display:inline-flex;align-items:center;gap:.5em;font-weight:600;text-decoration:none;min-height:44px;border-bottom:2px solid var(--gold);padding:.15em 0;align-self:flex-start}
.link-arrow svg{width:1em;height:1em;transition:transform .25s var(--ease)}
.link-arrow:hover svg{transform:translateX(4px)}

/* ---------- section heading device ---------- */
.sec-head{margin-bottom:clamp(28px,4vw,52px)}
.sec-head__k{display:flex;align-items:center;gap:14px;margin-bottom:14px}
.num{font-family:var(--display);font-size:clamp(2.6rem,4.4vw,3.6rem);line-height:.8;color:transparent;-webkit-text-stroke:1.5px var(--navy)}
.on-dark .num{-webkit-text-stroke-color:var(--gold)}
.bar{width:30px;height:3px;background:var(--gold);flex:none}
.eyebrow{font:600 .78rem/1.2 var(--body);letter-spacing:.2em;text-transform:uppercase;color:var(--steel)}
.on-dark .eyebrow{color:var(--gold)}
.sec-title{font-size:clamp(2.7rem,6.4vw,5.4rem);max-width:16ch}
.lede{font-size:clamp(1.1rem,1.5vw,1.3rem);line-height:1.5;max-width:46ch}

/* ---------- header ---------- */
.site-head{position:fixed;inset:0 0 auto 0;z-index:60;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px var(--gut);transition:background-color .3s,padding .3s,box-shadow .3s;color:#fff}
.site-head.is-stuck{background:var(--navy-deep);padding-block:10px;box-shadow:0 1px 0 rgba(255,255,255,.08)}
.site-head__mark{display:block;flex:none;padding:7px 0}
.site-head__mark img{width:clamp(138px,15vw,188px)}
.site-nav{display:flex;align-items:center;gap:clamp(14px,2.2vw,30px)}
.site-nav a:not(.btn){font:500 .93rem/1 var(--body);text-decoration:none;padding:14px 2px;border-bottom:2px solid transparent}
.site-nav a:not(.btn):hover{border-bottom-color:var(--gold)}
@media (max-width:900px){.site-nav a:not(.btn){display:none}}

/* ---------- hero ---------- */
.hero{position:relative;isolation:isolate;overflow:hidden;color:#fff;background:var(--navy-deep);min-height:max(620px,calc(100vh - 148px));min-height:max(620px,calc(100svh - 148px));display:flex;flex-direction:column;justify-content:space-between;padding:clamp(104px,15vh,150px) var(--gut) clamp(34px,5vh,56px)}
.hero__media{position:absolute;inset:0;z-index:-2}
.hero__media picture,.hero__media img{width:100%;height:100%}
.hero__media img{object-fit:cover;object-position:50% 64%;animation:heroZoom 16s var(--ease) both}
.hero__shade{position:absolute;inset:0;z-index:-1;background:
  linear-gradient(180deg,rgba(23,35,63,.9) 0%,rgba(23,35,63,.62) 26%,rgba(23,35,63,0) 56%),
  linear-gradient(0deg,rgba(23,35,63,.95) 0%,rgba(23,35,63,.7) 16%,rgba(23,35,63,0) 40%)}
.hero__top{max-width:none}
.hero .eyebrow{color:var(--gold);display:flex;align-items:center;gap:14px;margin-bottom:18px}
.hero h1{font-size:clamp(3rem,6.5vw,6.9rem);line-height:.92}
.hero h1 .row{display:block}
.hero h1 .ln{display:inline-block;vertical-align:top;overflow:hidden;padding-top:.04em}
.hero h1 .ln>span{display:block;animation:lineUp .9s var(--ease) both}
.hero h1 .row:nth-child(1) .ln:nth-child(2)>span{animation-delay:.09s}
.hero h1 .row:nth-child(2) .ln:nth-child(1)>span{animation-delay:.18s}
.hero h1 .row:nth-child(2) .ln:nth-child(2)>span{animation-delay:.27s}
.hero h1 em{font-style:normal;color:var(--gold)}
.hero__foot{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;flex-wrap:wrap;animation:fadeUp .9s .45s var(--ease) both}
.hero__impact{font-size:clamp(1.05rem,1.55vw,1.32rem);line-height:1.45;font-weight:500;max-width:37ch;margin:0;padding-left:20px;border-left:3px solid var(--gold)}
/* hero option B: the village photo needs the full screen height so the people and canoes stay in frame */
.hero--b{min-height:max(640px,100vh);min-height:max(640px,100svh)}
.hero--b .hero__media img{object-position:50% 36%}
.hero--b .hero__shade{background:
  linear-gradient(180deg,rgba(23,35,63,.94) 0%,rgba(23,35,63,.7) 22%,rgba(23,35,63,0) 47%),
  linear-gradient(0deg,rgba(23,35,63,.96) 0%,rgba(23,35,63,.78) 13%,rgba(23,35,63,0) 31%)}
.pv{position:fixed;left:50%;transform:translateX(-50%);bottom:14px;white-space:nowrap;z-index:70;background:var(--gold);color:var(--navy);font:600 .8rem/1.2 var(--body);padding:10px 14px;border-radius:999px;text-decoration:none}
@media (max-width:900px){.pv{left:auto;right:12px;top:22px;bottom:auto;transform:none}}
@keyframes heroZoom{from{transform:scale(1.09)}to{transform:scale(1)}}
@keyframes lineUp{from{transform:translateY(105%)}to{transform:none}}
@keyframes fadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@media (max-width:760px){
  /* phones: photo on top, words on solid navy underneath, so the type never sits on a bright part of the photo */
  .hero,.hero--b{min-height:max(100vh,690px);min-height:max(100svh,690px);display:grid;grid-template-rows:minmax(240px,1fr) auto auto;justify-content:normal;padding:0 var(--gut) 28px}
  .hero__media{position:relative;inset:auto;z-index:0;grid-row:1;margin-inline:calc(-1*var(--gut));min-height:0;overflow:hidden}
  .hero__media picture{position:absolute;inset:0}
  .hero__media img{object-position:50% 62%}
  .hero--b .hero__media img{object-position:50% 70%}
  .hero__media::after{content:"";position:absolute;inset:0;background:
    linear-gradient(180deg,rgba(23,35,63,.78) 0%,rgba(23,35,63,0) 26%),
    linear-gradient(0deg,var(--navy-deep) 0%,rgba(23,35,63,.5) 14%,rgba(23,35,63,0) 34%)}
  .hero__shade{display:none}
  .hero__top{grid-row:2;margin:14px 0 18px}
  .hero__foot{grid-row:3;gap:20px}
  .hero h1{font-size:clamp(2.75rem,13.2vw,4.2rem)}
  .hero h1 .ln{display:block}
  .hero__foot .btn{width:100%}
  .site-nav .btn{display:none}
}

/* ---------- impact numbers ---------- */
.stats{background:var(--navy);color:#fff;padding:clamp(26px,3.4vw,40px) 0}
.stats__row{display:flex;justify-content:space-between;align-items:stretch}
.stats__pair{display:contents}
.stat{margin:0;width:max-content;flex:none}
.stat__fig{display:block;overflow:hidden;font-family:var(--display);font-size:clamp(2.5rem,4.6vw,4.1rem);line-height:.9;color:var(--gold);white-space:nowrap;padding-top:.06em}
/* the figures rise into place on load (plain CSS, no script), so the approved numbers always render */
.stat__fig>span{display:block;animation:lineUp .9s .6s var(--ease) both}
.stat .stat__lab{animation:fadeUp .7s .95s var(--ease) both}
.stats__pair:nth-of-type(1) .stat:last-child .stat__fig>span{animation-delay:.7s}
.stats__pair:nth-of-type(2) .stat:first-child .stat__fig>span{animation-delay:.8s}
.stats__pair:nth-of-type(2) .stat:last-child .stat__fig>span{animation-delay:.9s}
.stat__fig small{font-size:.5em;margin-left:.12em}
.stat__lab{display:block;font-size:clamp(.8rem,1vw,.92rem);line-height:1.3;font-weight:500;margin-top:8px;max-width:19ch}
.stat__div{flex:none;width:1px;background:var(--line-light)}
@media (max-width:860px){
  .stats__row{display:block}
  .stats__pair{display:flex;justify-content:space-evenly;align-items:stretch}
  .stats__row>.stat__div{display:block;width:auto;height:1px;margin:22px 0}
  .stat__lab{max-width:15ch}
}

/* ---------- who we are ---------- */
.who__top{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(24px,5vw,84px);align-items:end;margin-bottom:clamp(30px,4.4vw,60px)}
.who__top .sec-head{margin-bottom:0}
.who__text p{font-size:clamp(1.05rem,1.3vw,1.18rem)}
.who__text p:last-child{margin-bottom:0}
.collage{position:relative;padding-bottom:7%}
.collage__a{border-radius:20px;overflow:hidden;aspect-ratio:21/10}
.collage__a img{object-position:50% 92%}
.collage__b{position:absolute;right:4%;bottom:0;width:30%;border-radius:14px;overflow:hidden;aspect-ratio:3/2;border:8px solid var(--paper)}
.collage picture{width:100%;height:100%}
.collage img{width:100%;height:100%;object-fit:cover}
.collage__route{position:absolute;right:35.5%;bottom:.5%;width:15%;pointer-events:none}
@media (max-width:900px){
  .who__top{grid-template-columns:1fr}
  .collage{padding-bottom:17%}
  .collage__a{aspect-ratio:4/3}
  .collage__a img{object-position:38% 70%}
  .collage__b{width:50%;right:0}
  .collage__route{right:54%;width:30%;bottom:2%}
}

/* ---------- video ---------- */
.watch{background:var(--navy-deep);color:#fff}
.watch__grid{display:grid;gap:clamp(18px,2.4vw,30px)}
.watch__grid[data-n="2"]{grid-template-columns:minmax(0,1.62fr) minmax(0,1fr);align-items:end}
.watch__grid[data-n="3"]{grid-template-columns:minmax(0,2fr) minmax(0,1fr);grid-template-rows:auto auto}
.watch__grid[data-n="3"] .vid--feature{grid-row:1 / span 2}
.vid{position:relative;border-radius:16px;overflow:hidden;background:#0d1528;aspect-ratio:16/9;isolation:isolate;border:1px solid rgba(255,255,255,.14)}
.watch__grid[data-n="3"] .vid--feature{aspect-ratio:auto;min-height:100%}
.vid picture,.vid img{position:absolute;inset:0;width:100%;height:100%}
.vid img{object-fit:cover;transition:transform .8s var(--ease)}
.vid::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(13,21,40,.92) 0%,rgba(13,21,40,.35) 46%,rgba(13,21,40,.12) 100%);z-index:1;pointer-events:none}
.vid__btn{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:10px;width:100%;padding:clamp(16px,2.4vw,30px);background:none;border:0;color:#fff;cursor:pointer;text-align:left}
.vid__play{position:absolute;left:50%;top:44%;transform:translate(-50%,-50%);width:clamp(62px,7vw,96px);aspect-ratio:1;border-radius:50%;background:var(--gold);display:grid;place-items:center;transition:transform .3s var(--ease)}
.vid__play::before{content:"";position:absolute;inset:-10px;border-radius:50%;border:2px dashed rgba(255,206,87,.7)}
.vid__play svg{width:36%;height:36%;margin-left:8%;fill:var(--navy)}
.vid:hover img{transform:scale(1.04)}
.vid:hover .vid__play{transform:translate(-50%,-50%) scale(1.08)}
.vid__k{font:600 .72rem/1 var(--body);letter-spacing:.2em;text-transform:uppercase;color:var(--gold);background:rgba(13,21,40,.84);padding:7px 11px;border-radius:999px}
@supports not (aspect-ratio:1/1){.vid::before{content:"";display:block;padding-top:56.25%}}
.vid__t{font-family:var(--display);text-transform:uppercase;line-height:.95;font-size:clamp(1.5rem,2.3vw,2.2rem)}
.vid--feature .vid__t{font-size:clamp(1.9rem,3.8vw,3.5rem)}
.vid iframe{position:absolute;inset:0;width:100%;height:100%;border:0;z-index:3}
.vid.is-playing::after,.vid.is-playing .vid__btn{display:none}
@media (max-width:820px){.watch__grid[data-n]{grid-template-columns:1fr}.watch__grid[data-n="3"] .vid--feature{grid-row:auto;aspect-ratio:16/9}}

/* ---------- roles: boarding passes with a sticky photo stage ---------- */
.roles__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,5vw,80px);align-items:start}
.stage{position:sticky;top:104px;border-radius:20px;overflow:hidden;aspect-ratio:4/5;max-height:calc(100vh - 140px);width:100%;background:var(--navy);isolation:isolate}
.stage__img{position:absolute;inset:0;opacity:0;transition:opacity .7s var(--ease),transform 1.4s var(--ease);transform:scale(1.05)}
.stage__img.is-on{opacity:1;transform:none}
.stage__img picture,.stage__img img{width:100%;height:100%}
.stage__img img{object-fit:cover}
.stage::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(0deg,rgba(23,35,63,.9) 0%,rgba(23,35,63,0) 48%)}
.stage__cap{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:26px 28px;color:#fff;display:flex;align-items:flex-end;justify-content:space-between;gap:16px}
.stage__n{font-family:var(--display);font-size:clamp(4rem,7vw,6.4rem);line-height:.78;color:transparent;-webkit-text-stroke:2px var(--gold)}
.stage__t{font-family:var(--display);text-transform:uppercase;font-size:clamp(1.5rem,2.2vw,2.1rem);line-height:.95;text-align:right;max-width:11ch}
.passes{display:grid;gap:18px}
.pass{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 208px;background:#fff;border:1px solid var(--line);border-radius:16px;transition:transform .35s var(--ease),border-color .3s,box-shadow .3s}
.pass::before{content:"";position:absolute;left:-1px;top:18px;bottom:18px;width:5px;border-radius:0 4px 4px 0;background:var(--gold);transform:scaleY(0);transition:transform .35s var(--ease)}
.pass.is-active{border-color:var(--navy);transform:translateX(6px)}
.pass.is-active::before{transform:scaleY(1)}
.pass__photo{display:none}
.pass__main{padding:24px 26px 26px 30px}
.pass__k{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;font:600 .72rem/1.2 var(--body);letter-spacing:.18em;text-transform:uppercase;color:var(--steel);margin:0 0 12px}
.pass__serve{letter-spacing:.06em;text-transform:none;font-weight:500;font-size:.8rem;background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:5px 11px;color:var(--navy)}
.pass__title{font-size:clamp(1.9rem,3vw,2.6rem);margin-bottom:10px}
.pass__line{margin:0;font-size:1rem;line-height:1.5}
.pass__stub{position:relative;display:flex;flex-direction:column;justify-content:center;gap:12px;padding:22px 22px 22px 26px;border-left:2px dashed var(--line)}
.pass__stub::before,.pass__stub::after{content:"";position:absolute;left:-12px;width:22px;height:22px;border-radius:50%;background:var(--paper);border:1px solid var(--line)}
.pass__stub::before{top:-12px;clip-path:inset(50% 0 0 0)}
.pass__stub::after{bottom:-12px;clip-path:inset(0 0 50% 0)}
.pass.is-active .pass__stub::before,.pass.is-active .pass__stub::after{border-color:var(--navy)}
.pass__stub .btn{width:100%}
@media (max-width:1020px){
  .roles__grid{grid-template-columns:1fr}
  .stage{display:none}
  .pass__photo{display:block;grid-column:1 / -1;aspect-ratio:16/9;overflow:hidden;border-radius:15px 15px 0 0}
  .pass__photo picture,.pass__photo img{width:100%;height:100%}
  .pass__photo img{object-fit:cover}
  .pass.is-active{transform:none}
  .pass::before{display:none}
}
@media (max-width:640px){
  .pass{grid-template-columns:1fr}
  .pass__main{padding:20px 20px 18px 22px}
  .pass__stub{border-left:0;border-top:2px dashed var(--line);flex-direction:row;align-items:center;justify-content:space-between;padding:16px 20px 18px 22px}
  .pass__stub::before,.pass__stub::after{top:-12px;bottom:auto;clip-path:inset(0 0 0 50%)}
  .pass__stub::before{left:-12px}
  .pass__stub::after{left:auto;right:-12px;clip-path:inset(0 50% 0 0)}
  .pass__stub .btn{width:auto}
}

/* ---------- routes (signature device) ---------- */
.route{display:flex;margin:0;padding:0}
.route li{position:relative;flex:1 1 0;padding-top:34px;padding-right:14px;font:500 .9rem/1.3 var(--body);transition:opacity .5s var(--ease),transform .5s var(--ease)}
.route li::before{content:"";position:absolute;left:0;top:0;width:20px;height:20px;border-radius:50%;border:2px solid currentColor;background:var(--route-bg,var(--navy));z-index:1}
.route li::after{content:"";position:absolute;left:20px;right:0;top:9px;border-top:2px dashed currentColor;opacity:.55;transform-origin:left;transition:transform .6s var(--ease)}
.route li:last-child{flex:0 0 auto;padding-right:0}
.route li:last-child::after{display:none}
.route li:last-child::before{background:var(--gold);border-color:var(--gold);box-shadow:0 0 0 5px rgba(255,206,87,.28)}
.anim .route li{opacity:0;transform:translateY(8px)}
.anim .route li::after{transform:scaleX(0)}
.anim .route.is-in li{opacity:1;transform:none}
.anim .route.is-in li::after{transform:scaleX(1)}
.route.is-in li:nth-child(2){transition-delay:.12s}.route.is-in li:nth-child(2)::after{transition-delay:.2s}
.route.is-in li:nth-child(3){transition-delay:.24s}.route.is-in li:nth-child(3)::after{transition-delay:.32s}
.route.is-in li:nth-child(4){transition-delay:.36s}.route.is-in li:nth-child(4)::after{transition-delay:.44s}
.route.is-in li:nth-child(5){transition-delay:.48s}.route.is-in li:nth-child(5)::after{transition-delay:.56s}
.route.is-in li:nth-child(6){transition-delay:.6s}
.route--stack br{display:none}
.route--stack{display:block}
.route--stack li{padding:0 0 18px 34px;min-height:38px}
.route--stack li::after{left:9px;right:auto;top:20px;bottom:0;border-top:0;border-left:2px dashed currentColor;transform-origin:top}
.anim .route--stack li::after{transform:scaleY(0)}
.anim .route--stack.is-in li::after{transform:scaleY(1)}
.route--stack li:last-child{padding-bottom:0;min-height:0}
@media (max-width:760px){
  .route br{display:none}
  .route{display:block}
  .route li{padding:0 0 18px 34px;min-height:38px}
  .route li::after{left:9px;right:auto;top:20px;bottom:0;border-top:0;border-left:2px dashed currentColor;transform-origin:top}
  .anim .route li::after{transform:scaleY(0)}
  .anim .route.is-in li::after{transform:scaleY(1)}
  .route li:last-child{padding-bottom:0;min-height:0}
}

/* ---------- five ways to serve ---------- */
.ways{background:#fff}
.ways__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(16px,2vw,26px)}
.way-long{grid-column:1 / -1;background:var(--navy);color:#fff;border-radius:22px;padding:clamp(26px,4vw,52px);display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(24px,4vw,60px);align-items:center;--route-bg:var(--navy)}
.way__k{font:600 .72rem/1 var(--body);letter-spacing:.2em;text-transform:uppercase;color:var(--steel);margin:0 0 12px}
.way-long .way__k,.way-short .way__k{margin:0 0 12px}
.on-dark .way__k,.way-long .way__k{color:var(--gold)}
.way__t{font-size:clamp(2.2rem,4vw,3.4rem);margin-bottom:12px}
.way-long p{margin:0}
.way-long__note{margin-top:26px!important;font-size:.95rem;color:rgba(255,255,255,.86);padding-top:18px;border-top:1px solid var(--line-light)}
.way-short{grid-column:1 / -1;background:var(--gold-tint);border:2px solid var(--gold);border-radius:22px;padding:clamp(24px,3.4vw,44px);display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(20px,4vw,56px);align-items:center;--route-bg:var(--gold-tint)}
.way-short p{margin:0}
.way-short__steps{font-weight:600;margin-bottom:14px!important}
.way-card{grid-column:span 4;display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:22px;overflow:hidden;--route-bg:var(--paper)}
.way-card__photo{aspect-ratio:16/10;overflow:hidden;position:relative}
.way-card__photo picture,.way-card__photo img{width:100%;height:100%}
.way-card__photo img{object-fit:cover;transition:transform .8s var(--ease)}
.way-card:hover .way-card__photo img{transform:scale(1.05)}
.way-card__len{position:absolute;left:18px;bottom:14px;z-index:1;font-family:var(--display);color:#fff;line-height:.8;display:flex;align-items:flex-end;gap:8px;text-transform:uppercase}
.way-card__len b{font-weight:400;font-size:clamp(3.6rem,6vw,5.2rem);color:transparent;-webkit-text-stroke:2px var(--gold)}
.way-card__len span{font-size:1.5rem;padding-bottom:6px}
.way-card__photo::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(23,35,63,.85) 0%,rgba(23,35,63,0) 60%)}
.way-card__body{padding:24px 24px 26px;display:flex;flex-direction:column;gap:14px;flex:1}
.way-card__body h3{font-size:clamp(1.8rem,2.6vw,2.3rem)}
.way-card__body p{margin:0}
.way-card__steps{margin-top:auto;padding-top:6px}
.way-card__steps .route li{font-size:.84rem}
.way-card__acts{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;padding-top:6px}
.way-card--contract{background:var(--navy);color:#fff;border-color:var(--navy)}
.way-card--contract .way__k{color:var(--gold);margin:0}
.way-card--contract .way-card__acts{margin-top:auto}
@media (max-width:1020px){.way-card{grid-column:span 6}.way-card--contract{grid-column:1 / -1}.way-long,.way-short{grid-template-columns:1fr}}
@media (max-width:680px){.way-card{grid-column:1 / -1}}

/* ---------- ministry band ---------- */
.band{position:relative;isolation:isolate;overflow:hidden;color:#fff;background:var(--navy-deep);min-height:min(92vh,860px);display:flex;align-items:flex-end}
.band__media{position:absolute;inset:-8% 0;z-index:-2;will-change:transform}
.band__media picture,.band__media img{width:100%;height:100%}
.band__media img{object-fit:cover;object-position:50% 40%}
.band__shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(23,35,63,.96) 0%,rgba(23,35,63,.78) 30%,rgba(23,35,63,0) 68%)}
.band__inner{padding-block:clamp(56px,8vw,110px);display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(20px,5vw,80px);align-items:end}
.band h2{font-size:clamp(3rem,8.4vw,7.6rem);line-height:.88}
.band h2 em{font-style:normal;color:var(--gold)}
.band p{font-size:clamp(1.02rem,1.3vw,1.18rem);margin:0;padding-left:20px;border-left:3px solid var(--gold)}
@media (max-width:900px){
  .band{display:block;min-height:0}
  .band__media{position:relative;inset:auto;aspect-ratio:4/3;transform:none!important}
  .band__media img{object-position:38% 50%}
  .band__shade{display:none}
  .band__inner{grid-template-columns:1fr;padding-block:36px 56px}
}

/* ---------- churches ---------- */
/* desktop: both columns finish on the same line. The photo grows to fill the left column and the
   four tiles stretch to fill the right one, so neither side leaves empty space. */
.church__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(30px,5vw,84px);align-items:stretch}
.church__left{display:flex;flex-direction:column}
.church__photo{position:relative;flex:1 1 auto;min-height:270px;border-radius:18px;overflow:hidden;margin-top:30px}
.church__photo picture{position:absolute;inset:0}
.church__photo picture,.church__photo img{width:100%;height:100%}
.church__photo img{object-fit:cover;object-position:50% 62%}
.church__acts{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:clamp(14px,2vw,24px)}
.tile{position:relative;overflow:hidden}
.tile::after{content:"";position:absolute;right:-64px;top:-64px;width:210px;height:210px;border-radius:50%;border:2px dashed rgba(255,206,87,.32);pointer-events:none}
.tile>*{position:relative;z-index:1}
.tile{background:var(--navy);color:#fff;border-radius:20px;padding:clamp(22px,2.6vw,34px);min-height:250px;display:flex;flex-direction:column;justify-content:space-between;gap:26px;transition:transform .4s var(--ease),background-color .3s}
.tile:hover{background:var(--steel)}
.tile__n{font-family:var(--display);font-size:clamp(3.4rem,5vw,4.6rem);line-height:.8;color:transparent;-webkit-text-stroke:2px var(--gold)}
.tile h3{font-size:clamp(1.9rem,2.8vw,2.5rem);margin-bottom:8px}
.tile p{margin:0;font-size:1rem;line-height:1.5}
@media (max-width:1020px){.church__grid{grid-template-columns:1fr}.church__left{display:block}.church__photo{aspect-ratio:5/4;min-height:0}.tiles{grid-auto-rows:auto}}
@media (max-width:600px){.tiles{grid-template-columns:1fr}.tile{min-height:0}.tile::after{display:none}}

/* ---------- next step: the form ---------- */
.start{position:relative;isolation:isolate;background:var(--navy-deep);color:#fff;overflow:hidden}
.start__media{position:absolute;inset:0 0 auto 0;height:min(78vh,760px);z-index:-2}
.start__media picture,.start__media img{width:100%;height:100%}
.start__media img{object-fit:cover;object-position:50% 40%}
.start__shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(23,35,63,.84) 0%,rgba(23,35,63,.8) 34%,var(--navy-deep) min(78vh,760px))}
.start__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,5vw,80px);align-items:start}
.start__intro{position:sticky;top:104px}
.start .sec-title{max-width:11ch}
.start__lede{font-size:clamp(1.05rem,1.35vw,1.2rem);max-width:40ch}
.start__contact{font-weight:500;margin-top:24px}
.start__contact a{display:inline-block;padding:11px 0;text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:5px}
@media (max-width:1020px){.start__grid{grid-template-columns:1fr}.start__intro{position:static}}

/* live boarding pass */
.ticket{margin-top:30px;background:var(--paper);color:var(--navy);border-radius:16px;display:grid;grid-template-columns:minmax(0,1fr) 88px;max-width:470px;position:relative;transform:rotate(-1.6deg);transition:transform .5s var(--ease)}
.ticket.is-live{transform:rotate(0)}
.ticket__main{padding:18px 20px 16px}
.ticket__head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:10px;margin-bottom:12px;border-bottom:1px solid var(--line)}
.ticket__head img{width:118px}
.ticket__head span{font:600 .62rem/1 var(--body);letter-spacing:.2em;text-transform:uppercase;color:var(--steel)}
.ticket dl{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px;margin:0}
.ticket dt{font:600 .6rem/1 var(--body);letter-spacing:.18em;text-transform:uppercase;color:var(--steel);margin-bottom:4px}
.ticket dd{margin:0;font-family:var(--display);text-transform:uppercase;font-size:1.18rem;line-height:1;min-height:1.2em;overflow-wrap:anywhere}
.ticket dd.is-empty{color:rgba(34,51,87,.34)}
.ticket .wide{grid-column:1 / -1}
.ticket__route{display:flex;align-items:center;gap:8px;margin-top:14px;color:var(--steel)}
.ticket__route i{width:12px;height:12px;border:2px solid currentColor;border-radius:50%;flex:none}
.ticket__route b{flex:1;border-top:2px dashed currentColor;opacity:.6}
.ticket__route i:last-child{background:var(--gold);border-color:var(--gold)}
.ticket__stub{border-left:2px dashed var(--line);display:grid;place-items:center;position:relative;padding:14px 0}
.ticket__stub::before,.ticket__stub::after{content:"";position:absolute;left:-10px;width:18px;height:18px;border-radius:50%;background:var(--navy-deep)}
.ticket__stub::before{top:-9px}.ticket__stub::after{bottom:-9px}
.ticket__bars{width:44px;height:78%;background:repeating-linear-gradient(0deg,var(--navy) 0 3px,transparent 3px 6px,var(--navy) 6px 7px,transparent 7px 11px,var(--navy) 11px 15px,transparent 15px 17px)}
@media (max-width:1020px){.ticket{display:none}}

.formcard{background:var(--paper);color:var(--navy);border-radius:22px;padding:clamp(22px,3.4vw,44px)}
.form{display:grid;grid-template-columns:1fr 1fr;gap:18px 18px}
.fld{display:flex;flex-direction:column;gap:7px;min-width:0}
.fld--wide{grid-column:1 / -1}
.fld label,.fld legend{font:600 .9rem/1.3 var(--body);padding:0}
.fld .opt{font-weight:400;color:#4a5878}
.fld input[type=text],.fld input[type=email],.fld input[type=tel],.fld select,.fld textarea{width:100%;min-height:52px;padding:12px 14px;border:2px solid rgba(34,51,87,.64);border-radius:10px;background:#fff;color:var(--navy);font:400 1rem/1.4 var(--body);transition:border-color .2s}
.fld textarea{min-height:120px;resize:vertical}
.fld select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 10'%3E%3Cpath d='M1 1l7 7 7-7' fill='none' stroke='%23223357' stroke-width='2'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;background-size:14px;padding-right:44px}
.fld input:hover,.fld select:hover,.fld textarea:hover{border-color:var(--navy)}
.fld input:focus-visible,.fld select:focus-visible,.fld textarea:focus-visible{border-color:var(--navy);outline:3px solid var(--gold);outline-offset:1px;box-shadow:0 0 0 6px var(--navy)}
.fld [aria-invalid="true"]{border-color:#a3271f}
.fld__note{font-size:.88rem;line-height:1.45;margin:0;color:#3b4a6b}
.fld__err{font-size:.88rem;font-weight:600;color:#8f1f18;margin:0;display:flex;gap:6px;align-items:flex-start}
.fld__err[hidden]{display:none}
.fld__err::before{content:"!";flex:none;display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#8f1f18;color:#fff;font-size:.75rem;margin-top:1px}
fieldset.fld{border:0;margin:0;padding:0}
fieldset.fld legend{padding-bottom:13px}   /* a little more air between the question and its pill buttons */
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{position:relative}
.chip input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.chip span{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;border:2px solid rgba(34,51,87,.64);border-radius:999px;background:#fff;font:500 .93rem/1 var(--body);transition:background-color .2s,color .2s,border-color .2s}
.chip input:checked+span{background:var(--navy);border-color:var(--navy);color:#fff}
.chip input:focus-visible+span{outline:3px solid var(--gold);outline-offset:1px;box-shadow:0 0 0 6px var(--navy)}
.check{display:flex;gap:12px;align-items:flex-start;font-size:.95rem;line-height:1.45}
.check input{flex:none;width:24px;height:24px;margin:0;accent-color:var(--navy)}
.form__foot{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;margin-top:4px}
.form__foot .btn{min-width:240px}
.form__fine{font-size:.86rem;margin:0;color:#3b4a6b;flex:1 1 220px}
.form__alert{grid-column:1 / -1;border:2px solid #8f1f18;background:#fdecea;color:#5e120d;border-radius:12px;padding:14px 16px;font-size:.95rem}
.form__alert[hidden]{display:none}
.form__alert ul{margin:8px 0 0;padding-left:20px;list-style:disc}
.form__alert a{font-weight:600}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.btn[aria-busy="true"]{opacity:.7;pointer-events:none}
.thanks{text-align:left}
.thanks[hidden]{display:none}
.thanks h3{font-size:clamp(2.4rem,4.4vw,3.6rem);margin-bottom:14px}
.thanks__ring{width:64px;height:64px;border-radius:50%;background:var(--gold);display:grid;place-items:center;margin-bottom:22px}
.thanks__ring svg{width:30px;height:30px;stroke:var(--navy);fill:none;stroke-width:3}
.thanks__next{margin:22px 0 0;padding-top:20px;border-top:1px solid var(--line)}
.thanks__next a,.form__alert a,.form__fine a{display:inline-block;padding:11px 0}
.thanks__preview{border:2px dashed var(--steel);border-radius:12px;padding:12px 14px;font-size:.92rem;margin-bottom:22px;background:#fff}
@media (max-width:640px){.form{grid-template-columns:1fr}.form__foot .btn{width:100%}}

/* ---------- footer ---------- */
.foot{background:var(--navy-deep);color:#fff;padding:clamp(52px,7vw,96px) 0 clamp(96px,9vw,120px);border-top:1px solid var(--line-light)}
.foot__line{font-family:var(--display);text-transform:uppercase;font-size:clamp(2.6rem,7.6vw,6.6rem);line-height:.9;margin:0 0 10px}
.foot__tok{font:500 .82rem/1.3 var(--body);letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin:0 0 clamp(34px,5vw,60px)}
.foot__row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:22px 40px;padding-top:28px;border-top:1px solid var(--line-light)}
.foot__row img{width:170px}
.foot__contact{font-weight:500;margin:0}
.foot__contact a,.foot__links a{display:inline-block;padding:11px 0;text-decoration:underline;text-decoration-color:rgba(255,206,87,.8);text-underline-offset:5px}
.foot__links{display:flex;flex-wrap:wrap;gap:8px 26px;font-size:.95rem}

/* ---------- flight-path rail (desktop) ---------- */
.rail{position:fixed;right:18px;top:50%;transform:translateY(-50%);z-index:50;display:none;padding:14px 9px;border-radius:999px;background:rgba(23,35,63,.82);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);opacity:0;pointer-events:none;transition:opacity .4s}
.rail.is-on{opacity:1;pointer-events:auto}
.rail ol{position:relative;display:grid;gap:17px}
.rail ol::before{content:"";position:absolute;left:50%;top:6px;bottom:6px;border-left:2px dashed rgba(255,255,255,.34);transform:translateX(-1px)}
.rail a{position:relative;display:block;width:14px;height:14px;border-radius:50%;border:2px solid #fff;background:var(--navy-deep);transition:background-color .3s,border-color .3s,transform .3s}
.rail a::after{content:"";position:absolute;inset:-9px}
.rail a span{position:absolute;right:28px;top:50%;transform:translateY(-50%) translateX(6px);white-space:nowrap;background:var(--navy-deep);color:#fff;font:600 .72rem/1 var(--body);letter-spacing:.14em;text-transform:uppercase;padding:8px 12px;border-radius:999px;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s}
.rail a:hover span,.rail a:focus-visible span{opacity:1;transform:translateY(-50%)}
.rail a.is-done{background:#fff}
.rail a.is-here{background:var(--gold);border-color:var(--gold);transform:scale(1.35)}
@media (min-width:1280px){.rail{display:block}}

/* ---------- sticky phone call-to-action ---------- */
.mcta{position:fixed;left:0;right:0;bottom:0;z-index:55;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:rgba(23,35,63,.96);transform:translateY(110%);transition:transform .35s var(--ease);display:none}
.mcta .btn{width:100%}
.mcta.is-on{transform:none}
@media (max-width:900px){.mcta{display:block}}

/* ---------- reveal on scroll ----------
   Sections are visible by default. They start hidden only while <html> carries "anim", which the page sets
   itself and removes if the script fails or never loads, so a script error can never leave the page blank. */
.rv{transition:opacity .8s var(--ease),transform .8s var(--ease)}
.anim .rv{opacity:0;transform:translateY(26px)}
.anim .rv.is-in{opacity:1;transform:none}
.rv[data-d="1"]{transition-delay:.08s}.rv[data-d="2"]{transition-delay:.16s}.rv[data-d="3"]{transition-delay:.24s}

/* ---------- role pages ---------- */
.rhero{position:relative;isolation:isolate;overflow:hidden;color:#fff;background:var(--navy-deep);min-height:min(88vh,820px);min-height:min(88svh,820px);display:flex;align-items:flex-end;padding:140px 0 clamp(40px,6vw,72px)}
.rhero__media{position:absolute;inset:0;z-index:-2}
.rhero__media picture,.rhero__media img{width:100%;height:100%}
.rhero__media img{object-fit:cover;animation:heroZoom 16s var(--ease) both}
.rhero__shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(23,35,63,.97) 0%,rgba(23,35,63,.88) 34%,rgba(23,35,63,.5) 60%,rgba(23,35,63,.08) 84%),linear-gradient(180deg,rgba(23,35,63,.8) 0%,rgba(23,35,63,0) 24%)}
.crumb{font:500 .9rem/1 var(--body);margin:0 0 14px;display:flex;flex-wrap:wrap;gap:2px 10px;align-items:center;width:max-content;max-width:100%;background:rgba(23,35,63,.88);padding:2px 16px;border-radius:999px}
.crumb a{display:inline-block;text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:5px;padding:14px 0}
.crumb span{padding:14px 0}
.rhero h1{font-size:clamp(3rem,8vw,7rem);line-height:.9;max-width:14ch;text-wrap:balance}
.rhero__hook{font-size:clamp(1.15rem,1.9vw,1.6rem);line-height:1.35;font-weight:500;max-width:34ch;margin:22px 0 28px;padding-left:20px;border-left:3px solid var(--gold)}
.rhero__k{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;margin:0 0 18px;width:max-content;max-width:100%;background:rgba(23,35,63,.88);padding:8px 10px 8px 16px;border-radius:999px}
.rhero__k .eyebrow{color:var(--gold)}
.rhero__k .tag{font:500 .82rem/1 var(--body);border:1px solid rgba(255,255,255,.5);border-radius:999px;padding:7px 12px}
.rbody{padding:clamp(56px,8vw,110px) 0}
.rlead{font-size:clamp(1.25rem,2.1vw,1.75rem);line-height:1.4;font-weight:500;max-width:30ch;margin:0}
.rlead+.rlead{margin-top:.8em}
.rgrid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(24px,5vw,80px);align-items:start}
.rblocks{display:grid;gap:clamp(34px,4.4vw,56px)}
.rblock h2{font-size:clamp(1.9rem,3.2vw,2.7rem);margin-bottom:12px;display:flex;align-items:center;gap:14px}
.rblock h2::before{content:"";width:26px;height:3px;background:var(--gold);flex:none}
.rblock p{margin:0 0 .9em;max-width:62ch}
.rblock p:last-child{margin-bottom:0}
.rblock ul.dots{display:grid;gap:10px;max-width:62ch}
.rblock ul.dots li{position:relative;padding-left:26px}
.rblock ul.dots li::before{content:"";position:absolute;left:0;top:.5em;width:12px;height:12px;border-radius:50%;border:2px solid var(--steel)}
.rstory{background:var(--navy);color:#fff;border-radius:22px;padding:clamp(26px,4vw,48px);position:relative;overflow:hidden}
.rstory h2{color:var(--gold);margin-bottom:12px}
.rstory p{font-size:clamp(1.05rem,1.4vw,1.22rem);max-width:58ch}
.rstory::after{content:"";position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;border:2px dashed rgba(255,206,87,.35)}
.checklist{background:#fff;border:1px solid var(--line);border-radius:22px;padding:clamp(24px,3.4vw,44px)}
.checklist ul{display:grid;gap:14px;margin-top:6px}
.checklist li{position:relative;padding-left:40px;font-weight:500;line-height:1.45}
.checklist li::before{content:"";position:absolute;left:0;top:1px;width:24px;height:24px;border-radius:6px;background:var(--navy)}
.checklist li::after{content:"";position:absolute;left:8px;top:5px;width:7px;height:12px;border:solid var(--gold);border-width:0 3px 3px 0;transform:rotate(45deg)}
.checklist h2{font-size:clamp(1.9rem,3.2vw,2.7rem);margin-bottom:18px}
.rways{display:grid;gap:18px}
.rways>.link-arrow{justify-self:start}
.rways__also{margin:6px 0 0}
.rways .way-long{grid-template-columns:1fr;border-radius:22px}
.rways .way-long p{max-width:62ch}
.rways .way-short{grid-template-columns:1fr}
.rside{position:sticky;top:110px;display:grid;gap:18px}
.rside__photo{border-radius:18px;overflow:hidden;aspect-ratio:4/5}
.rside__photo picture,.rside__photo img{width:100%;height:100%}
.rside__photo img{object-fit:cover}
.rcta{background:var(--navy-deep);color:#fff;padding:clamp(60px,8vw,110px) 0}
.rcta__grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(24px,5vw,70px);align-items:end}
.rcta h2{font-size:clamp(2.8rem,7vw,6rem);line-height:.9}
.rcta h2 em{font-style:normal;color:var(--gold)}
.rcta p{margin:0 0 20px;font-size:1.1rem}
.rcta__contact{font-weight:500;font-size:1rem!important;margin-top:22px!important}
.rcta__contact a{display:inline-block;padding:11px 0;text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:5px}
.others{padding:clamp(48px,6vw,80px) 0;background:#fff}
.others h2{font-size:clamp(1.8rem,3vw,2.4rem);margin-bottom:22px}
/* nine links in an even three-by-three grid; every card the same height, text centred on the arrow */
.others ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.others li{display:flex}
.others a{flex:1;display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:80px;line-height:1.3;padding:14px 22px;border:1px solid var(--line);border-radius:14px;text-decoration:none;font-weight:600;background:var(--paper);transition:border-color .2s,transform .25s var(--ease)}
.others a:hover{border-color:var(--navy);transform:translateY(-2px)}
.others a svg{width:1em;height:1em;flex:none}
.others a[aria-current]{background:var(--navy);color:#fff;border-color:var(--navy)}
@media (max-width:900px){.others ul{grid-template-columns:repeat(2,minmax(0,1fr))}.others li:last-child{grid-column:1 / -1}}
@media (max-width:560px){.others ul{grid-template-columns:1fr}.others li:last-child{grid-column:auto}.others a{min-height:74px}}
@media (max-width:960px){.rgrid{grid-template-columns:1fr}.rside{position:static;order:-1}.rside__photo{aspect-ratio:16/10}.rcta__grid{grid-template-columns:1fr}}

@media (prefers-reduced-motion:reduce){
  html,html.is-ready{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .anim .rv,.anim .route li{opacity:1;transform:none}
  .anim .route li::after{transform:none}
}
@media print{.site-head,.rail,.mcta,.watch{display:none!important}.anim .rv,.anim .route li{opacity:1!important;transform:none!important}.anim .route li::after{transform:none!important}}

#form-fallback{margin-bottom:18px}
