/* ============================================================
   Navigate Care Alberta — shared shell for sub-pages
   Chrome + components copied from the app-shell (Navigate_Care_Alberta.html)
   so /guides pages carry the same identity. Zero-build: plain CSS.
   ============================================================ */
*{-webkit-tap-highlight-color:transparent;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'DM Sans',system-ui,sans-serif;background:#F7F9FC;color:#364152;overflow-x:hidden;margin:0}
::-webkit-scrollbar{width:4px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:#CBD5E1;border-radius:99px}

/* accordions */
.acc-body{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.4,0,.2,1),padding .3s ease}
.acc-body.open{max-height:8000px}
.acc-chev{transition:transform .3s ease}
.acc-chev.rot{transform:rotate(180deg)}

/* stagger reveal */
@keyframes fadeIn{to{opacity:1;transform:translateY(0)}}
.stag{opacity:0;transform:translateY(12px);animation:fadeIn .35s ease forwards}
.stag-1{animation-delay:.05s}.stag-2{animation-delay:.1s}.stag-3{animation-delay:.15s}
.stag-4{animation-delay:.2s}.stag-5{animation-delay:.25s}.stag-6{animation-delay:.3s}

/* hero + tags + flow steps */
.hero-grad{background:linear-gradient(135deg,#0A1628 0%,#122040 40%,#0D3B66 70%,#0D7C5F 100%)}
/* generated Alberta-dusk art layer (path relative to this CSS file) */
.hero-art{position:relative;overflow:hidden}
.hero-art::before{content:'';position:absolute;inset:0;background:url('img/hero-dusk.webp') center bottom/cover no-repeat;animation:heroDrift 45s ease-in-out infinite alternate;transform-origin:center bottom}
.hero-art>*{position:relative}
@keyframes heroDrift{from{transform:scale(1.03) translateX(-1.2%)}to{transform:scale(1.09) translateX(1.2%)}}
/* per-guide spot illustration in the hero — floats in, then bobs gently */
.hero-spot{float:right;width:92px;height:92px;margin:2px 0 8px 14px;border-radius:18px;
  border:1px solid rgba(255,255,255,.18);box-shadow:0 4px 18px rgba(0,0,0,.35);
  opacity:0;animation:spotIn .7s cubic-bezier(.34,1.56,.64,1) .2s forwards,spotBob 6s ease-in-out 1.2s infinite}
@keyframes spotIn{from{opacity:0;transform:translateY(10px) scale(.9)}to{opacity:1;transform:none}}
@keyframes spotBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@media (prefers-reduced-motion:reduce){.hero-spot{animation:none;opacity:1}}
/* "Did you know?" tidbit — pops in on page load (guides) or tab open (shell) */
.tidbit{position:relative;display:flex;gap:12px;align-items:flex-start;background:#FFFBF2;border:1px solid #F7E3B8;border-left:3px solid #F5A623;border-radius:14px;padding:12px 16px;margin:0 0 18px;opacity:0;transform:translateY(14px) scale(.95)}
.nav-sec.active .tidbit,.tidbit.on{animation:tidbitPop .6s cubic-bezier(.34,1.56,.64,1) .35s forwards}
@keyframes tidbitPop{60%{opacity:1;transform:translateY(-3px) scale(1.015)}to{opacity:1;transform:none}}
.tb-kick{display:block;font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#B45309;margin-bottom:2px}
.tidbit p{margin:0;font-size:.85rem;line-height:1.5;color:#364152}
.tb-dot{flex-shrink:0;width:10px;height:10px;margin-top:5px;border-radius:50%;background:#F5A623;animation:tbPulse 2.2s ease-in-out 1s infinite}
@keyframes tbPulse{0%,100%{box-shadow:0 0 0 0 rgba(245,166,35,.45)}50%{box-shadow:0 0 0 7px rgba(245,166,35,0)}}
/* generated tab icons */
.bnav-img{width:24px;height:24px;object-fit:contain;opacity:.55;transition:opacity .2s ease,transform .2s ease}
.nca-tabs a.active .bnav-img{opacity:1;transform:scale(1.12)}
.tag{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;border-radius:99px;font-size:.75rem;font-weight:500;background:#E8F0FE;color:#0D7C5F;border:1px solid #D1E0F0}
.flow-step{position:relative;padding-left:2.5rem}
.flow-step::before{content:'';position:absolute;left:.75rem;top:2rem;bottom:0;width:2px;background:#E2E8F0}
.flow-step:last-child::before{display:none}
.flow-dot{position:absolute;left:0;top:.25rem;width:1.5rem;height:1.5rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:700;color:#fff;flex-shrink:0}

/* keyboard focus */
:focus-visible{outline:2px solid #F5A623;outline-offset:2px;border-radius:6px}

/* crisis strip + bottom nav (same as app shell) */
.nca-bnav{position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid #E2E8F0;z-index:40;box-shadow:0 -2px 12px rgba(0,0,0,.06);padding-bottom:env(safe-area-inset-bottom)}
.crisis-strip{background:#0A1628;display:flex;align-items:stretch;max-width:36rem;margin:0 auto}
.crisis-strip a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-height:46px;padding:6px 4px;text-decoration:none;transition:background .15s ease}
.crisis-strip a+a{border-left:1px solid rgba(255,255,255,.12)}
.crisis-strip a:hover,.crisis-strip a:active{background:rgba(255,255,255,.08)}
.crisis-strip .cs-num{font-weight:700;font-size:.85rem;color:#fff;line-height:1.1}
.crisis-strip .cs-sub{font-size:.6rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:#94A3B8;line-height:1.1}
.crisis-strip .cs-num b{color:#FFC857}
.nca-tabs{max-width:36rem;margin:0 auto;display:flex;border-top:1px solid #E2E8F0}
.nca-tabs a{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 0;text-decoration:none}
.nca-tabs .bnav-icon{font-size:1.25rem;transition:all .2s ease}
.nca-tabs .bnav-label{font-size:10px;color:#94A3B8}
.nca-tabs a.active .bnav-icon{transform:scale(1.1)}
.nca-tabs a.active .bnav-label{color:#0D7C5F;font-weight:600}

@media print{.nca-bnav,.nca-disc{display:none!important}}
