/* Shared Nira tokens and components; layouts stay in their templates. */
:root{
 --nira-color-primary:#649064;--nira-color-primary-hover:#4c734c;--nira-color-soft:#f3f6f0;
 --nira-color-ink:#1f3028;--nira-color-muted:#59645d;--nira-color-line:#e3e9df;
 --nira-radius-card:24px;--nira-radius-control:14px;
 --nira-shadow-card:0 8px 28px rgba(31,48,40,.045);--nira-shadow-hover:0 14px 34px rgba(31,48,40,.09);
 --color-matcha-main:var(--nira-color-primary);--color-matcha-dark:var(--nira-color-primary-hover);--color-matcha-light:var(--nira-color-soft);
 --nira-primary:var(--nira-color-primary);--nira-primary-hover:var(--nira-color-primary-hover);
 --theme-primary:var(--nira-color-primary);--theme-primary-light:var(--nira-color-soft);--theme-accent:var(--nira-color-primary-hover)
}
body{accent-color:var(--nira-color-primary)}
body main .nira-ui-card{border-radius:var(--nira-radius-card);border-color:var(--nira-color-line);box-shadow:var(--nira-shadow-card);transition:box-shadow .25s ease,border-color .25s ease,transform .25s ease}
body main .nira-ui-card:hover{border-color:#cddac7;box-shadow:var(--nira-shadow-hover)}
body main .nira-ui-button,.nira-button{border-radius:var(--nira-radius-control);font-weight:800;transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.nira-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:12px 24px;font-size:14px;text-decoration:none}
.nira-button-primary{background:var(--nira-color-primary);color:#fff;box-shadow:0 6px 16px #64906426}
.nira-button-primary:hover{background:var(--nira-color-primary-hover);transform:translateY(-2px)}
.nira-button-secondary{background:#fff;color:var(--nira-color-primary-hover);border:1px solid var(--nira-color-line)}
.nira-button-secondary:hover{background:var(--nira-color-soft);border-color:#cddac7}
main .hover\:bg-matcha:hover{color:#fff}
main :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=hidden]),select,textarea){border-radius:var(--nira-radius-control)}
body :is(a,button,input,textarea,select,summary):focus-visible{outline:2px solid var(--nira-color-primary-hover);outline-offset:4px}
main :is(.shadow-matcha-soft,.shadow-nira-soft,.shadow-soft){box-shadow:var(--nira-shadow-card)}
main .hover\:shadow-matcha-soft:hover,main .hover\:shadow-nira-hover:hover{box-shadow:var(--nira-shadow-hover)}
.nira-collection-nav{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;margin:36px auto 0;padding:8px 0;min-height:88px;text-align:center}
.nira-collection-status{font-size:13px;line-height:1.9;color:var(--nira-color-muted);margin:0}
.nira-collection-status:empty{display:none}
.nira-collection-spinner{display:none;width:24px;height:24px;border:2px solid #dce6d6;border-top-color:var(--nira-color-primary);border-radius:50%;animation:nira-collection-spin .8s linear infinite}
.nira-collection-nav.is-loading .nira-collection-spinner{display:block}
.nira-collection-nav.is-loading .nira-collection-next{display:none}
.nira-collection-next[hidden]{display:none!important}
.nira-collection-nav.has-error .nira-collection-status{color:#9d3e3e}
@keyframes nira-collection-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.nira-ui-card,.nira-ui-button,.nira-button{transition:none!important;transform:none!important}.nira-collection-spinner{animation:none}}

/* Scoped medical icons; no icon font or external dependency. */
.nira-medical-icon{display:block;width:28px;height:28px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.nira-service-svg{width:32px;height:32px}
.nira-icon-accent{fill:currentColor;fill-opacity:.2;stroke:none}
.nira-mobile-injury-link{display:flex;align-items:center;gap:10px}
.nira-mobile-injury-icon{display:flex;align-items:center;justify-content:center;width:34px;height:34px;flex:0 0 auto;border-radius:10px;background:var(--nira-color-soft);color:var(--nira-color-primary)}
.nira-mobile-injury-icon .nira-medical-icon{width:24px;height:24px}
/* Center the contact card on the footer's top border, whatever its height. */
.nira-site-footer{margin-top:128px}
.nira-contact-banner{position:absolute;top:-4px;left:0;right:0;z-index:30;transform:translateY(-50%)}
@media(max-width:767px){
 .nira-site-footer{margin-top:160px;padding-top:160px}
 .nira-contact-title{font-size:clamp(15px,4.2vw,24px);white-space:nowrap}
 .nira-contact-banner>div{padding:24px 18px}
 .nira-article-thumbnail{height:auto!important;aspect-ratio:794/446}
 .nira-article-thumbnail>img{display:block;width:100%;height:100%;object-fit:contain;transform:none!important}
}
