/* Faith Pass teal brand refresh */
:root{--navy:#06454d;--ink:#083b43;--gold:#08bdb2;--ivory:#f2f7f5;--paper:#fbfdfc}
body{background:#f2f7f5;color:#083b43}
.brand b,.hero-copy h1 em,.eyebrow span,.lifecycle span{color:#08a9a1}
.nav{border-color:#06454d1f;background:#fbfdfceb}
.create,.primary{background:#06454d}.create i,.primary span{background:#08bdb2;color:#04363d}
.hero{background:linear-gradient(90deg,transparent 49.9%,#06454d0d 50%,transparent 50.1%),linear-gradient(#f2f7f5,#e5f0ee)}
.hero:before{background-image:linear-gradient(#06454d0a 1px,transparent 1px),linear-gradient(90deg,#06454d0a 1px,transparent 1px)}
.ticket{background:radial-gradient(circle at 85% 5%,#08767c,transparent 36%),#043b44}
.ticket:after{border-color:#08bdb266;box-shadow:0 0 0 32px #08bdb20f,0 0 0 64px #08bdb20a}
.confirmed,.section-kicker span,.story-card header b,.plans header b{color:#48ddd2}
.s3>div i,.live-count>i b,.scan-line,.scan-beam{background:#08bdb2}
.s1>i{background:#d7f4f1;color:#087b75}.pulse{background:#08a79f;box-shadow:0 0 0 5px #d5f4f1}
.dark-section,.analytics-section{background:#043b44}.story-3,.big-stat,.p2{background:#08a9a1}.story-ui strong{color:#06454d}
.flow-intro em,.workspace-heading em,.rsvp-copy em,.passes-head em,.check-copy em,.churches-section em,.network-copy em,.comms-copy em,.analytics-head em,.pricing-head em,.final-copy em{color:#08a9a1}
.workspace-section{background:#e5f0ee}.rsvp-section,.comms-section{background:#fbfdfc}.passes-section{background:#dcebe8}.churches-section{background:#f3f8f6}.network-section{background:#e3efed}.pricing-section{background:#edf5f3}.final-section{background:#d7e8e5}
.dash-brand img,.campus-ui header img{border-radius:8px}.dashboard aside,.campus-ui header,.plans article.featured,.blank-pass footer{background:#06454d}
.team i,.phone-action span,.scan-button,.plans button span{background:#08bdb2;color:#04363d}
.steps i.done{background:#08a9a1}.phone-event small,.rsvp-copy li:before,.pricing-head p,.message-types b{color:#078e88}
.collectible.p1{background:#f5faf8}.collectible.p2{background:#08a9a1}.collectible.p3{background:#08656c}
.usecase-marquee i{background:#08bdb2}.usecase-marquee{color:#9fb9b5}
.line-chart i{background:linear-gradient(#26d2c7,#087c78)}
body>div>main>footer,main>footer{background:#f7fbfa;color:#06454d;padding-top:54px}
.footer-logo-wrap{display:grid;place-items:center;padding:10px 0 48px}
.footer-logo-full{display:block;width:min(560px,78vw);height:auto;object-fit:contain}
.footer-bottom{border-top-color:#bdd7d3;color:#507278}.footer-bottom nav{color:#06454d}
@media(max-width:600px){.footer-logo-full{width:min(430px,92vw)}.footer-logo-wrap{padding-bottom:34px}}
/* Intentional temporary QR placeholders. */
.qr,.mini-qr,.qr-large{position:relative;background-color:#fff;background-image:repeating-conic-gradient(#063f49 0 25%,transparent 0 50%),linear-gradient(90deg,transparent 45%,#063f49 45% 55%,transparent 55%);background-size:9px 9px,100% 100%;border:4px solid #fff;outline:1px solid #b9d6d2;overflow:hidden}
.qr:before,.mini-qr:before,.qr-large:before{content:"";position:absolute;left:2px;top:2px;width:12px;height:12px;border:3px solid #063f49;background:#fff;box-shadow:25px 0 0 -3px #fff,25px 0 0 0 #063f49,0 25px 0 -3px #fff,0 25px 0 0 #063f49}
.qr-large{background-size:14px 14px,100% 100%}
.pass-stack .collectible:not(:has(.pass-foot)):after{content:"";position:absolute;left:20px;bottom:20px;width:42px;height:42px;background:repeating-conic-gradient(#063f49 0 25%,#fff 0 50%) 50%/8px 8px;border:4px solid #fff;outline:1px solid #b9d6d2}
.footer-logo-full{mix-blend-mode:multiply}
body>div>main>footer,main>footer{background:#fff}
/* Supplied scannable QR artwork. */
.qr,.mini-qr,.qr-large{background:#fff url('assets/ticketkore_qr_code.png') center/contain no-repeat!important;border:4px solid #fff;outline:1px solid #b9d6d2}
.qr:before,.mini-qr:before,.qr-large:before{content:none!important}
.pass-stack .collectible:not(:has(.pass-foot)):after{background:#fff url('assets/ticketkore_qr_code.png') center/contain no-repeat!important}
/* Seamless event-type marquee. */
.usecase-marquee{width:calc(100% + 10vw);margin-left:-5vw;transform:rotate(-1.5deg);overflow:hidden}
.usecase-marquee .marquee-track{display:flex;width:max-content;animation:faithPassMarquee 34s linear infinite;will-change:transform}
.usecase-marquee .marquee-track span{display:flex;align-items:center;white-space:nowrap;padding-right:28px}
@keyframes faithPassMarquee{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.usecase-marquee .marquee-track{animation:none}}
/* Contrast corrections for dark product surfaces. */
.dashboard aside{color:#c5d9d7}
.dashboard aside button{color:#c5d9d7}
.dashboard aside button span{color:#8ee2dc;border-color:#4b777b}
.dashboard aside button:hover,.dashboard aside button:focus-visible{background:#173f4c;color:#fff}
.dashboard aside button.active{background:#193d4e;color:#fff}
.dashboard aside button.active span{color:#fff;border-color:#557582}
.story-3 small,.story-3 strong{color:#043b44}
.story-4 small{color:#a9c9c6}
.story-4 strong{color:#fff}
