@font-face{font-family:Epilogue;src:url(epilogue.ttf) format("truetype");font-display:swap;font-weight:100 900}
@font-face{font-family:Nunito Sans;src:url(nunito-sans.ttf) format("truetype");font-display:swap;font-weight:200 1000}
:root{--cream:#fcf5e8;--sand:#e9d2ae;--sand-deep:#d7b584;--terra:#c56445;--terra-dark:#8e3f2b;--indigo:#293f68;--ink:#1e2b3f;--white:#fffdfa;--line:rgba(41,63,104,.22);--shadow:24px 28px 0 rgba(41,63,104,.08);--radius:30px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--cream)}
body{margin:0;color:var(--ink);background:linear-gradient(115deg,rgba(197,100,69,.06),transparent 36%),var(--cream);font:18px/1.68 "Nunito Sans",system-ui,sans-serif;padding-bottom:0}
a{color:var(--indigo);text-decoration-thickness:2px;text-underline-offset:4px}
a:hover{color:var(--terra-dark)}
:focus-visible{outline:4px solid var(--terra);outline-offset:4px}
.skip{position:fixed;top:10px;left:10px;z-index:99;padding:.7rem 1rem;background:var(--indigo);color:#fff;transform:translateY(-180%)}
.skip:focus{transform:none}
.site-head{min-height:92px;display:grid;grid-template-columns:minmax(210px,.8fr) minmax(520px,1.8fr) auto;align-items:center;gap:2rem;padding:0 clamp(1rem,4vw,5rem);border-bottom:1px solid var(--line);background:rgba(252,245,232,.94);position:sticky;top:0;z-index:20;backdrop-filter:blur(14px)}
.brand{display:grid;grid-template-columns:45px auto;grid-template-rows:1.1em 1.1em;gap:0 .7rem;text-decoration:none;color:var(--indigo);font-family:Epilogue,sans-serif;line-height:1;letter-spacing:.06em}
.brand strong{font-size:1.02rem;align-self:end}.brand small{font-size:.7rem;align-self:start;letter-spacing:.25em;color:var(--terra)}
.brand-mark{grid-row:1/3;display:grid;align-content:center;gap:5px;width:45px;height:45px;border:2px solid var(--indigo);border-radius:50%;padding:10px;position:relative;overflow:hidden}
.brand-mark:after{content:"";position:absolute;width:32px;height:32px;background:var(--terra);border-radius:50%;right:-15px;top:-13px}
.brand-mark i{display:block;height:3px;background:var(--indigo);border-radius:20px}.brand-mark i:nth-child(2){width:70%}
.condition-tabs{display:flex;gap:.35rem;align-items:center;justify-content:center;padding:.8rem;border-radius:999px;background:var(--sand)}
.condition-tabs a{padding:.48rem .8rem;border-radius:999px;text-decoration:none;font-size:.8rem;font-weight:800;color:var(--indigo);white-space:nowrap}
.condition-tabs a:hover,.condition-tabs a[aria-current=page]{background:var(--white);box-shadow:0 8px 22px rgba(41,63,104,.1)}
.header-call{justify-self:end;display:grid;text-decoration:none;color:#fff;background:var(--indigo);padding:.7rem 1rem .7rem 2.7rem;border-radius:50px 14px 14px 50px;font-family:Epilogue,sans-serif;font-weight:800;line-height:1.2;position:relative;box-shadow:10px 10px 0 var(--sand)}
.header-call:before{content:"";position:absolute;left:.7rem;top:50%;width:1.3rem;height:1.3rem;border:4px solid var(--terra);border-radius:50%;transform:translateY(-50%)}
.header-call span{font-size:.58rem;letter-spacing:.22em;color:var(--sand)}
main{overflow:hidden}.crumbs{max-width:1500px;margin:0 auto;padding:1.1rem clamp(1rem,5vw,5rem);display:flex;gap:.7rem;align-items:center;font-size:.82rem;font-weight:800}.crumbs span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hero{max-width:1500px;margin:0 auto;min-height:680px;padding:clamp(2rem,6vw,6rem) clamp(1rem,5vw,5rem);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);align-items:center;gap:clamp(2rem,6vw,7rem);position:relative}
.hero:before{content:"";position:absolute;z-index:-1;top:2rem;left:40%;right:-14%;bottom:3rem;background:var(--sand);clip-path:polygon(25% 0,100% 0,100% 100%,0 100%);opacity:.72}
.hero-copy{position:relative;z-index:2}.eyebrow{display:flex;flex-wrap:wrap;gap:.7rem;align-items:center;margin-bottom:1.2rem;color:var(--terra-dark);font:800 .78rem/1 Epilogue,sans-serif;letter-spacing:.14em;text-transform:uppercase}.eyebrow>span:first-child{padding:.65rem 1rem;border:1px solid var(--terra);border-radius:999px;background:rgba(255,253,250,.65)}
.zip-chip{padding:.65rem 1rem;border-radius:999px;background:var(--indigo);color:#fff}
h1,h2,h3{font-family:Epilogue,sans-serif;color:var(--indigo);line-height:1.06;letter-spacing:-.035em}
h1{font-size:clamp(2.8rem,6.2vw,6.5rem);max-width:13ch;margin:.15rem 0 1.4rem}h2{font-size:clamp(1.6rem,2.6vw,2.8rem);margin:.2rem 0 1rem}h3{font-size:1.05rem}
.hero-copy>p{max-width:66ch;font-size:1.1rem;margin:0 0 2rem}
.call-handle{display:flex;align-items:center;gap:0;max-width:600px}.handle-label{display:block;padding:.8rem 1.2rem;background:var(--sand);border-radius:999px 0 0 999px;font-size:.76rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;writing-mode:horizontal-tb}
.call-handle a{flex:1;display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1rem 1.3rem;background:var(--indigo);color:#fff;text-decoration:none;border-radius:0 999px 999px 0;box-shadow:13px 13px 0 rgba(197,100,69,.23)}
.call-handle b{font-size:.86rem}.call-handle strong{font:800 1.05rem/1 Epilogue,sans-serif;white-space:nowrap}.call-handle a:hover{background:var(--terra-dark);color:#fff}
.door-figure{margin:0;position:relative;transform:rotate(-1.5deg)}.door-figure:before{content:"";position:absolute;inset:18px -20px -22px 18px;border:2px solid var(--indigo);border-radius:var(--radius);z-index:-1}.door-figure img{display:block;width:100%;height:auto;border-radius:var(--radius);box-shadow:var(--shadow);background:var(--sand)}.door-figure figcaption{margin-top:1.3rem;text-align:right;font-size:.76rem;font-weight:800;color:var(--indigo)}
.status-rail{background:var(--indigo);color:#fff;display:grid;grid-template-columns:repeat(4,1fr);padding:0 clamp(1rem,5vw,5rem)}.status-rail span{padding:1.2rem;text-align:center;border-right:1px solid rgba(255,255,255,.18);font:700 .8rem/1.2 Epilogue,sans-serif;letter-spacing:.06em;text-transform:uppercase}.status-rail span:last-child{border:0}
.content-grid{max-width:1500px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:3rem;padding:clamp(3rem,7vw,7rem) clamp(1rem,5vw,5rem)}
.article-stack{display:grid;gap:2rem}.panel{position:relative;padding:clamp(1.6rem,4vw,3.5rem);border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,253,250,.72);box-shadow:var(--shadow)}.panel:nth-child(3n+2){margin-left:clamp(0px,5vw,70px);background:var(--sand)}.panel:nth-child(3n){margin-right:clamp(0px,4vw,55px);border-color:rgba(197,100,69,.42)}.panel p{max-width:78ch}.panel a{font-weight:800}.panel-code{position:absolute;top:1.4rem;right:1.5rem;width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:var(--terra);color:#fff;font:800 .72rem/1 Epilogue,sans-serif}.panel h2{max-width:22ch;padding-right:3rem}.faq{border-top:1px solid var(--line);padding:1rem 0}.faq:first-of-type{margin-top:1.5rem}.faq summary{cursor:pointer;font-weight:900;color:var(--indigo);font-family:Epilogue,sans-serif}.faq p{padding-left:1.3rem}
.side-board{align-self:start;display:grid;gap:1.2rem;position:sticky;top:118px}.side-board section{padding:1.5rem;border-radius:28px;background:var(--sand);box-shadow:14px 16px 0 rgba(41,63,104,.09)}.side-board section:last-child{background:var(--white);border:2px solid var(--terra)}.side-board h2{font-size:1.45rem}.side-board ol{padding-left:1.25rem;margin-bottom:0}.side-kicker{font:900 .68rem/1 Epilogue,sans-serif;color:var(--terra-dark);letter-spacing:.16em;text-transform:uppercase}.side-call{display:grid;gap:.2rem;padding:1.2rem 1.5rem;border-radius:999px;background:var(--terra);color:#fff;text-decoration:none;text-align:center;box-shadow:12px 13px 0 var(--sand-deep)}.side-call span{font:900 .66rem/1 Epilogue,sans-serif;letter-spacing:.14em}.side-call strong{font:800 1.35rem/1.2 Epilogue,sans-serif}.side-call:hover{background:var(--indigo);color:#fff}
.routes{padding:clamp(3rem,7vw,7rem) max(clamp(1rem,5vw,5rem),calc((100vw - 1500px)/2 + 5rem));background:var(--sand);display:grid;grid-template-columns:minmax(220px,.6fr) minmax(0,1.4fr);gap:3rem;align-items:start}.route-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.route-card{min-height:120px;display:grid;align-content:space-between;padding:1.3rem;border-radius:24px;background:var(--cream);border:1px solid rgba(41,63,104,.18);text-decoration:none;font-weight:900;box-shadow:8px 9px 0 rgba(197,100,69,.15)}.route-card span{font-size:.64rem;letter-spacing:.16em;color:var(--terra-dark)}
footer{display:grid;grid-template-columns:1.2fr 1fr auto;gap:3rem;padding:3.5rem max(clamp(1rem,5vw,5rem),calc((100vw - 1500px)/2 + 5rem));background:var(--indigo);color:#fff}footer a{color:#fff}.footer-brand{font:800 1.2rem/1 Epilogue,sans-serif;text-decoration:none}footer p{max-width:60ch;font-size:.82rem;color:rgba(255,255,255,.78)}footer nav{display:grid;grid-template-columns:repeat(2,auto);gap:.5rem 1.5rem;align-content:start}.updated{white-space:nowrap}.mobile-call{display:none}
.error-hero{min-height:72vh}
@media (prefers-reduced-motion:no-preference){.door-figure:after{content:"";position:absolute;inset:0;border-radius:var(--radius);background:linear-gradient(125deg,transparent 25%,rgba(255,255,255,.25) 45%,transparent 63%);transform:translateX(-110%);animation:sunpass 9s ease-in-out infinite}@keyframes sunpass{0%,65%,100%{transform:translateX(-110%)}80%{transform:translateX(110%)}}}
@media (max-width:1100px){.site-head{grid-template-columns:1fr auto}.condition-tabs{grid-column:1/-1;grid-row:2;padding:.55rem;overflow-x:auto;justify-content:flex-start;margin:0 -1rem}.hero{grid-template-columns:1fr;min-height:auto}.hero:before{left:18%;top:44%;bottom:1rem}.door-figure{max-width:780px}.content-grid{grid-template-columns:1fr}.side-board{position:static;grid-template-columns:1fr 1fr}.side-call{grid-column:1/-1;grid-row:1}.routes{grid-template-columns:1fr}footer{grid-template-columns:1fr 1fr}.updated{grid-column:1/-1}}
@media (max-width:720px){body{font-size:16px;padding-bottom:76px}.site-head{min-height:72px;padding:.65rem 1rem;gap:.8rem}.brand{grid-template-columns:38px auto}.brand-mark{width:38px;height:38px;padding:8px}.brand strong{font-size:.86rem}.brand small{font-size:.58rem}.header-call{display:none}.condition-tabs{display:none}.crumbs{padding:.8rem 1rem;font-size:.72rem}.hero{padding:2.3rem 1rem 3.4rem;gap:2.2rem}.hero:before{left:34%;right:-35%;top:46%;bottom:1rem}.hero-copy>p{font-size:1rem}.call-handle{display:block}.handle-label{display:inline-block;border-radius:999px 999px 0 0;margin-left:1rem}.call-handle a{border-radius:999px;padding:1rem 1.2rem}.call-handle b{max-width:45%}.door-figure{transform:none}.door-figure:before{inset:10px -8px -12px 10px}.door-figure figcaption{text-align:left}.status-rail{grid-template-columns:1fr 1fr;padding:0}.status-rail span:nth-child(2){border-right:0}.status-rail span:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.18)}.content-grid{padding:3rem 1rem;gap:2rem}.panel{padding:1.5rem;border-radius:24px;box-shadow:12px 14px 0 rgba(41,63,104,.07)}.panel:nth-child(n){margin:0}.panel-code{width:36px;height:36px;top:1rem;right:1rem}.panel h2{font-size:1.6rem}.side-board{grid-template-columns:1fr}.side-call{grid-column:auto}.routes{padding:3rem 1rem;gap:1.5rem}.route-grid{grid-template-columns:1fr}footer{grid-template-columns:1fr;padding:3rem 1rem}.updated{grid-column:auto}.mobile-call{display:block;position:fixed;left:0;right:0;bottom:0;z-index:30;padding:.55rem;background:rgba(252,245,232,.95);border-top:1px solid var(--line)}.mobile-call a{display:flex;justify-content:space-between;align-items:center;padding:.78rem 1rem;border-radius:999px;background:var(--indigo);color:#fff;text-decoration:none}.mobile-call span{font-weight:900}.mobile-call strong{font:800 .95rem/1 Epilogue,sans-serif}}

/* Spokane rail-and-river dispatch identity */
:root{--cream:#f1e9d7;--sand:#d9e4df;--sand-deep:#8ab0b7;--terra:#b7462f;--terra-dark:#7e2d1e;--indigo:#161a1d;--ink:#20262b;--white:#fffaf0;--line:rgba(22,26,29,.28);--shadow:12px 12px 0 rgba(45,111,128,.24);--radius:5px}
body{background-color:var(--cream);background-image:repeating-linear-gradient(0deg,transparent 0 31px,rgba(45,111,128,.07) 31px 32px)}.site-head{background:var(--indigo);border-bottom:8px solid var(--terra)}.brand,.brand strong,.brand small{color:#fff}.brand-mark{border-color:#fff;border-radius:3px}.brand-mark i{background:var(--terra)}.condition-tabs{background:#252b2f;border:1px solid rgba(255,255,255,.22);border-radius:3px}.condition-tabs a{color:#fff;border-radius:2px}.condition-tabs a:hover,.condition-tabs a[aria-current=page]{background:var(--sand-deep);color:var(--indigo)}.header-call{background:var(--terra);color:#fff;border-radius:3px;box-shadow:8px 8px 0 var(--sand-deep)}.header-call span{color:#fff}.hero{grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);border-inline:1px solid var(--line)}.hero:before{left:57%;right:-12%;background:var(--sand-deep);clip-path:polygon(14% 0,100% 0,100% 100%,0 100%)}.door-figure{transform:none}.door-figure:before{inset:12px -12px -12px 12px;border:3px solid var(--indigo);border-radius:0}.door-figure img{border-radius:0;box-shadow:var(--shadow)}.eyebrow>span:first-child,.zip-chip{border-radius:2px}.call-handle .handle-label{background:var(--sand);border-radius:2px 0 0 2px}.call-handle a{background:var(--terra);color:#fff;border-radius:0 2px 2px 0;box-shadow:8px 8px 0 var(--indigo)}.status-rail{background:var(--terra);border-block:4px solid var(--indigo)}.panel{border:1px solid var(--indigo);border-left:9px solid var(--sand-deep);border-radius:0;background:rgba(255,250,240,.94);box-shadow:var(--shadow)}.panel:nth-child(3n+2){margin-left:0;background:var(--sand);border-left-color:var(--terra)}.panel:nth-child(3n){margin-right:0;border-color:var(--indigo);border-left-color:var(--terra)}.panel-code{background:var(--indigo);color:#fff;border-radius:2px}.side-board section{border:1px solid var(--indigo);border-radius:0;box-shadow:9px 9px 0 rgba(183,70,47,.22)}.side-call{background:var(--terra);color:#fff;border-radius:0;box-shadow:9px 9px 0 var(--indigo)}.routes{background:var(--sand);border-block:8px solid var(--indigo)}.route-card{border:1px dashed var(--indigo);border-radius:2px;box-shadow:7px 7px 0 rgba(183,70,47,.19)}footer{background:var(--indigo);border-top:8px solid var(--terra)}
@media(max-width:1100px){.hero{grid-template-columns:minmax(0,1fr)}}
@media(max-width:720px){h1{font-size:clamp(2.15rem,11vw,3.1rem)}.hero:before{left:42%;right:-42%}.panel:nth-child(n){margin:0}.call-handle .handle-label{border-radius:2px 2px 0 0}.call-handle a{border-radius:2px}.mobile-call{background:var(--indigo);border-top:4px solid var(--terra)}.mobile-call a{background:var(--terra);color:#fff;border-radius:3px}}
