/* ==========================================================================
   Prayista Foundation site styles
   Plain CSS, design tokens only. No build step.
   ========================================================================== */

/* --- Reset / base ------------------------------------------------------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  background:var(--color-bg);
  color:var(--text-primary);
  font-family:var(--font-body);
  font-size:var(--text-body-size);
  line-height:var(--text-body-line);
  -webkit-font-smoothing:antialiased;
  transition:background var(--duration-base) var(--ease-standard);
}
img{max-width:100%;display:block}
a{color:inherit}
button{font:inherit}
h1,h2,h3,h4{font-family:var(--font-heading);color:var(--text-primary);margin:0}
p{margin:0}
ul{margin:0}
:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:4px}
.skip-link{position:absolute;left:-9999px;top:0;z-index:200;background:var(--color-primary);color:var(--text-on-primary);padding:12px 20px;border-radius:0 0 var(--radius-md) 0;font-weight:700;text-decoration:none}
.skip-link:focus{left:0}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* --- Layout primitives -------------------------------------------------- */
.wrap{max-width:1280px;margin:0 auto;width:100%}
.wrap-lg{max-width:1200px;margin:0 auto;width:100%}
.wrap-md{max-width:1080px;margin:0 auto;width:100%}
.wrap-sm{max-width:760px;margin:0 auto;width:100%}
.wrap-xs{max-width:620px;margin:0 auto;width:100%}

.section{padding:72px 28px}
.section-lg{padding:80px 28px}
.section-sm{padding:56px 28px}
.section-tight{padding:24px 28px}
.section--raised{background:var(--color-surface-raised)}
.section--primary{background:var(--color-primary)}
.section--center{text-align:center}

.stack{display:flex;flex-direction:column}
.stack-sm{gap:10px}
.stack-md{gap:16px}
.stack-lg{gap:22px}
.row{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.row-center{justify-content:center}
.mt-auto{margin-top:auto}

.grid{display:grid}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.grid-5{display:grid;grid-template-columns:repeat(5,1fr);gap:20px}
.grid > *{min-width:0}
.grid-2 > *,.grid-3 > *,.grid-4 > *,.grid-5 > *{min-width:0}
.hero-grid{display:grid;grid-template-columns:1.05fr 0.95fr;gap:56px;align-items:center}
.hero-grid > *{min-width:0}
.split-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:36px;align-items:start}
.split-grid > *{min-width:0}

@media(max-width:1000px){
  .child-grid{grid-template-columns:repeat(3,1fr) !important}
}
@media(max-width:900px){
  .grid-3,.grid-4,.grid-5{grid-template-columns:1fr 1fr}
  .hero-grid{grid-template-columns:1fr;gap:36px}
}
@media(max-width:800px){
  .split-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  .child-grid{grid-template-columns:1fr 1fr !important}
}
@media(max-width:640px){
  .grid-2,.grid-3,.grid-4{grid-template-columns:1fr}
  .grid-5{grid-template-columns:1fr 1fr}
  .section,.section-lg{padding:56px 20px}
  .section-sm{padding:40px 20px}
}

/* --- Typography scale --------------------------------------------------- */
.eyebrow{
  font-family:var(--font-body);font-weight:700;font-size:13px;
  letter-spacing:.05em;text-transform:uppercase;color:var(--color-secondary);
}
.eyebrow--primary{color:var(--color-primary)}
.eyebrow--on-primary{color:var(--text-on-primary);opacity:.85}
.eyebrow--muted{color:var(--text-tertiary)}

.h-display{font-family:var(--font-heading);font-weight:800;font-size:56px;line-height:1.05;margin:0}
.h1{font-family:var(--font-heading);font-weight:800;font-size:42px;line-height:1.1;margin:0}
.h2{font-family:var(--font-heading);font-weight:700;font-size:34px;line-height:1.2;margin:0}
.h3{font-family:var(--font-heading);font-weight:700;font-size:22px;margin:0}
.h4{font-family:var(--font-heading);font-weight:700;font-size:17px;margin:0}
.h5{font-family:var(--font-heading);font-weight:700;font-size:15px;margin:0}
.page-title{font-family:var(--font-heading);font-weight:800;font-size:38px;line-height:1.15;margin:0}
.section-title{font-family:var(--font-heading);font-weight:700;font-size:30px;margin:0}

.lede{font-family:var(--font-body);font-size:17px;line-height:27px;color:var(--text-secondary);margin:0}
.text{font-family:var(--font-body);font-size:15px;line-height:23px;color:var(--text-secondary);margin:0}
.text-sm{font-family:var(--font-body);font-size:14px;line-height:22px;color:var(--text-secondary);margin:0}
.text-xs{font-family:var(--font-body);font-size:13px;line-height:20px;color:var(--text-secondary);margin:0}
.fine{font-family:var(--font-body);font-size:12px;line-height:18px;color:var(--text-tertiary);margin:0}
.sacred{font-family:var(--font-sacred);font-style:italic;font-size:19px;line-height:30px;color:var(--text-secondary);margin:0}
.on-primary{color:var(--text-on-primary)}
.measure{max-width:640px}
.measure-narrow{max-width:560px}
.center-block{margin-left:auto;margin-right:auto}

@media(max-width:640px){
  .h-display{font-size:38px}
  .h1{font-size:32px}
  .h2,.section-title{font-size:26px}
  .page-title{font-size:30px}
}

/* --- Buttons ------------------------------------------------------------ */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--font-heading);font-weight:700;font-size:14px;
  padding:11px 22px;border-radius:var(--radius-pill);
  background:var(--color-primary);color:var(--text-on-primary);
  border:1px solid transparent;cursor:pointer;text-decoration:none;
  transition:background var(--duration-fast) var(--ease-standard),
             transform var(--duration-fast) var(--ease-standard),
             box-shadow var(--duration-fast) var(--ease-standard);
}
.btn:hover{background:var(--color-primary-strong)}
.btn:active{transform:translateY(1px)}
.btn-lg{font-size:15px;padding:15px 28px}
.btn-sm{font-size:13px;padding:9px 18px}
.btn-block{width:100%}
.btn-secondary{background:var(--color-surface);color:var(--color-primary);border-color:var(--divider-strong)}
.btn-secondary:hover{background:var(--color-primary-soft)}
.btn-ghost{background:transparent;color:var(--color-primary);border-color:transparent}
.btn-ghost:hover{background:var(--color-primary-soft)}
.btn-danger{background:transparent;color:var(--color-error);border-color:transparent;align-self:flex-start}
.btn-danger:hover{background:var(--color-error-soft)}
.btn-invert{background:var(--color-surface);color:var(--color-primary)}
.btn-invert:hover{background:var(--color-primary-soft)}
.link{font-family:var(--font-heading);font-weight:700;font-size:15px;color:var(--color-primary);text-decoration:none}
.link:hover{text-decoration:underline}
.link-sm{font-size:13px}
.link-back{font-family:var(--font-body);font-size:13px;font-weight:700;color:var(--color-primary);text-decoration:none}
.link-muted{font-family:var(--font-heading);font-weight:700;font-size:14px;color:var(--text-tertiary);text-decoration:none}

/* --- Chips, badges, pills ----------------------------------------------- */
.chip{
  display:inline-flex;align-items:center;font-family:var(--font-body);
  font-size:13px;font-weight:700;padding:8px 18px;border-radius:var(--radius-pill);
  border:1px solid var(--divider-strong);background:var(--color-surface);
  color:var(--text-primary);cursor:pointer;text-decoration:none;
  transition:background var(--duration-fast) var(--ease-standard);
}
.chip:hover{background:var(--color-primary-soft)}
.chip.is-active{background:var(--color-primary);border-color:var(--color-primary);color:var(--text-on-primary)}
.badge{
  display:inline-flex;align-items:center;font-family:var(--font-body);
  font-size:12px;font-weight:700;padding:5px 12px;border-radius:var(--radius-pill);
  background:var(--color-secondary-soft);color:var(--color-secondary);
}
.badge--info{background:var(--color-info-soft);color:var(--color-info)}
.badge--success{background:var(--color-success-soft);color:var(--color-success)}
.badge--warning{background:var(--color-warning-soft);color:var(--color-warning)}
.tag{
  font-family:var(--font-body);font-size:12px;font-weight:700;
  color:var(--color-secondary);background:var(--color-secondary-soft);
  padding:5px 12px;border-radius:var(--radius-pill);
}

/* --- Cards -------------------------------------------------------------- */
.card{
  background:var(--color-surface);border:1px solid var(--divider);
  border-radius:var(--radius-lg);padding:26px;
}
.card--flat{background:transparent}
.card--raised{background:var(--color-surface-raised)}
.card--pad-lg{padding:32px}
.card--xl{border-radius:var(--radius-xl)}
.card--elevated{box-shadow:var(--shadow-1)}
.card-link{
  display:flex;flex-direction:column;text-decoration:none;overflow:hidden;
  background:var(--color-surface);border:1px solid var(--divider);
  border-radius:var(--radius-lg);
  transition:transform var(--duration-base) var(--ease-standard),
             box-shadow var(--duration-base) var(--ease-standard);
}
.card-link:hover{transform:translateY(-3px);box-shadow:var(--shadow-3)}
.card-media{width:100%;object-fit:cover;display:block;background:var(--color-primary-soft)}
.card-body{padding:18px;display:flex;flex-direction:column;gap:8px;flex:1}
.card-body--lg{padding:28px;gap:12px}
.card-icon{
  width:48px;height:48px;border-radius:var(--radius-md);
  background:var(--color-primary-soft);display:flex;align-items:center;
  justify-content:center;font-size:22px;
}
.card-icon--secondary{background:var(--color-secondary-soft)}
.card-icon--round{border-radius:50%;width:54px;height:54px}

/* --- Media / images ----------------------------------------------------- */
.media{
  width:100%;object-fit:cover;border-radius:var(--radius-xl);
  background:var(--color-primary-soft);display:block;
}
.media--hero{height:520px;box-shadow:var(--shadow-4)}
.media--tall{height:440px}
.media--std{height:400px}
.media--post{height:380px}
.media--wide{height:260px;border-radius:0}
.media--card{height:180px;border-radius:0}
.media--child{height:220px;border-radius:0}
.media--product{height:200px;border-radius:0}
.media--event{height:220px;border-radius:0}
.media--hub{height:160px;border-radius:0}
.media--avatar{width:96px;height:96px;border-radius:50%;object-fit:cover}
.media--sponsor{height:180px;border-radius:18px}
.media--profile{height:420px;border-radius:var(--radius-lg)}
.media--story{height:420px;border-radius:var(--radius-lg)}
.placeholder{
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,var(--color-primary-soft),var(--color-secondary-soft));
  color:var(--text-tertiary);font-family:var(--font-body);font-size:13px;text-align:center;padding:12px;
}
@media(max-width:900px){
  .media--hero{height:380px}
  .media--tall,.media--profile,.media--story{height:320px}
}

/* --- Stats -------------------------------------------------------------- */
.stat{text-align:center}
.stat-value{font-family:var(--font-heading);font-weight:800;font-size:30px;color:var(--color-primary);line-height:1.1}
.stat-label{font-family:var(--font-body);font-size:13px;color:var(--text-secondary);margin-top:4px}
.stat--lg .stat-value{font-size:42px}
.stat--on-primary .stat-value{color:var(--text-on-primary)}
.stat--on-primary .stat-label{color:var(--text-on-primary);opacity:.85;font-size:14px}
.stat--boxed{padding:20px;border-radius:var(--radius-lg);background:var(--color-surface);border:1px solid var(--divider)}
.stat-inline{display:flex;gap:32px;flex-wrap:wrap;margin-top:12px}
.stat-inline .stat-value{font-size:26px;color:var(--text-primary)}
.stat-inline .stat-label{color:var(--text-tertiary)}
.stat-inline > div{text-align:left}

/* --- Progress bars ------------------------------------------------------ */
.bar-row{margin-bottom:16px}
.bar-head{
  display:flex;justify-content:space-between;font-family:var(--font-body);
  font-size:14px;color:var(--text-secondary);margin-bottom:6px;
}
.bar{height:9px;border-radius:var(--radius-pill);background:var(--divider);overflow:hidden}
.bar-fill{height:100%;border-radius:var(--radius-pill);background:var(--color-primary)}
.bar-fill--secondary{background:var(--color-secondary)}

/* --- Lists / rows ------------------------------------------------------- */
.list-row{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:14px 16px;border-radius:var(--radius-md);border:1px solid var(--divider);
  background:var(--color-surface);text-decoration:none;
}
.list-row:hover{border-color:var(--divider-strong)}
.split-row{
  display:flex;justify-content:space-between;gap:12px;
  font-family:var(--font-body);font-size:14px;color:var(--text-secondary);
}
.divider{height:1px;background:var(--divider);border:0;margin:0}
.history-row{
  display:flex;justify-content:space-between;align-items:center;gap:12px;
  padding:12px 0;border-bottom:1px solid var(--divider);
  font-family:var(--font-body);font-size:14px;
}

/* --- Forms -------------------------------------------------------------- */
.field{display:flex;flex-direction:column;gap:6px;font-family:var(--font-body)}
.field-label{font-size:13px;font-weight:600;color:var(--text-secondary)}
.input,.textarea,.select{
  width:100%;font-family:var(--font-body);font-size:15px;
  padding:12px 14px;border-radius:var(--radius-md);
  border:1px solid var(--divider-strong);background:var(--color-surface);
  color:var(--text-primary);outline:none;
  transition:border-color var(--duration-fast) var(--ease-standard),
             box-shadow var(--duration-fast) var(--ease-standard);
}
.input:focus,.textarea:focus,.select:focus{
  border-color:var(--color-primary);
  box-shadow:0 0 0 3px var(--color-primary-soft);
}
.textarea{resize:vertical;min-height:120px}
.input--lg{font-size:16px;padding:14px 16px}
.field-error{font-size:12px;color:var(--color-error);font-weight:600}
.input.is-invalid,.textarea.is-invalid{border-color:var(--color-error)}
.checkbox-row{
  display:flex;align-items:center;gap:8px;font-family:var(--font-body);
  font-size:13px;color:var(--text-secondary);cursor:pointer;
}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:640px){.form-grid{grid-template-columns:1fr}}
.alert{
  padding:14px 18px;border-radius:var(--radius-md);font-family:var(--font-body);
  font-size:14px;font-weight:600;
}
.alert--success{background:var(--color-success-soft);color:var(--color-success)}
.alert--error{background:var(--color-error-soft);color:var(--color-error)}

/* --- Header ------------------------------------------------------------- */
.site-header{
  position:sticky;top:0;z-index:100;
  background:var(--glass-fill-strong);
  -webkit-backdrop-filter:blur(var(--blur-glass));
  backdrop-filter:blur(var(--blur-glass));
  border-bottom:1px solid var(--divider);
}
.header-inner{
  max-width:1280px;margin:0 auto;padding:14px 28px;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none}
.brand img{width:34px;height:34px;object-fit:contain}
.logo-dark{display:none}
[data-theme="dark"] .logo-light{display:none}
[data-theme="dark"] .logo-dark{display:inline-block}
.brand-name{font-family:var(--font-heading);font-weight:700;font-size:18px;color:var(--text-primary);white-space:nowrap}
.brand-name span{color:var(--color-primary)}
.nav{display:flex;gap:22px;align-items:center}
.nav a{
  font-family:var(--font-body);font-weight:600;font-size:15px;
  text-decoration:none;white-space:nowrap;color:var(--text-secondary);
  transition:color var(--duration-fast) var(--ease-standard);
}
.nav a:hover{color:var(--color-primary)}
.nav a.is-active{color:var(--color-primary)}
.header-actions{display:flex;align-items:center;gap:12px}
.icon-btn{
  width:38px;height:38px;border-radius:50%;border:1px solid var(--divider-strong);
  background:var(--color-surface);color:var(--text-primary);cursor:pointer;
  font-size:16px;display:flex;align-items:center;justify-content:center;flex:none;
}
.icon-btn:hover{background:var(--color-primary-soft)}
.nav-toggle{display:none}
.mobile-nav{
  display:none;flex-direction:column;padding:8px 28px 24px;gap:18px;
  background:var(--color-surface);border-top:1px solid var(--divider);
}
.mobile-nav.is-open{display:flex}
.mobile-nav a{
  font-family:var(--font-body);font-weight:600;font-size:17px;
  color:var(--text-primary);text-decoration:none;
}
.mobile-nav a.is-active{color:var(--color-primary)}
@media(max-width:900px){
  .nav{display:none}
  .nav-toggle{display:flex}
  .header-inner{padding:12px 20px}
}
@media(max-width:520px){
  .brand-name{font-size:15px}
  .header-donate{display:none}
}

/* --- Footer ------------------------------------------------------------- */
.site-footer{
  background:var(--color-surface-raised);border-top:1px solid var(--divider);
  padding:56px 28px 28px;
}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr 1.2fr;gap:32px}
.footer-grid > *{min-width:0}
.footer-col{display:flex;flex-direction:column;gap:10px}
.footer-heading{
  font-family:var(--font-heading);font-weight:700;font-size:13px;
  color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em;
}
.footer-col a{font-family:var(--font-body);font-size:14px;color:var(--text-secondary);text-decoration:none}
.footer-col a:hover{color:var(--color-primary)}
.socials{display:flex;gap:10px;margin-top:4px}
.social{
  width:34px;height:34px;border-radius:50%;background:var(--color-surface);
  border:1px solid var(--divider-strong);display:flex;align-items:center;
  justify-content:center;color:var(--text-primary);text-decoration:none;font-size:14px;
}
.social:hover{background:var(--color-primary-soft);color:var(--color-primary)}
.subscribe-form{display:flex;gap:8px}
.subscribe-form .input{flex:1;min-width:0;font-size:13px;padding:10px 12px}
.subscribe-form .btn{white-space:nowrap;padding:10px 16px;font-size:13px}
.footer-base{
  display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;
  gap:12px;margin-top:44px;padding-top:24px;border-top:1px solid var(--divider);
}
.footer-base span{font-family:var(--font-body);font-size:13px;color:var(--text-tertiary)}
@media(max-width:900px){.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.footer-grid{grid-template-columns:1fr}.site-footer{padding:40px 20px 24px}}

/* --- Page-specific helpers ---------------------------------------------- */
.hero-cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:8px}
.pillar-card{display:flex;flex-direction:column;gap:14px;padding:28px 22px;text-decoration:none}
.step-num{
  font-family:var(--font-heading);font-weight:800;font-size:15px;
  color:var(--color-primary-strong);background:var(--color-primary-soft);
  width:36px;height:36px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
}
.logo-strip{display:flex;justify-content:center;gap:48px;flex-wrap:wrap;margin-top:28px;opacity:.7}
.logo-strip span{font-family:var(--font-heading);font-weight:700;font-size:18px;color:var(--text-secondary)}
.avatar{
  width:38px;height:38px;border-radius:50%;background:var(--color-primary-soft);
  color:var(--color-primary-strong);display:flex;align-items:center;
  justify-content:center;font-family:var(--font-heading);font-weight:700;font-size:14px;flex:none;
}
.quote-block{text-align:center;max-width:800px;margin:0 auto}
.prose{display:flex;flex-direction:column;gap:20px;font-family:var(--font-body);font-size:17px;line-height:29px;color:var(--text-secondary)}
.prose p{margin:0}
.pull-quote{font-family:var(--font-sacred);font-style:italic;font-size:19px;line-height:30px;color:var(--text-primary)}

.tab-switch{display:flex;background:var(--color-bg);border-radius:var(--radius-pill);padding:4px}
.tab-switch button{
  flex:1;font-family:var(--font-heading);font-weight:700;font-size:14px;
  padding:10px;border:none;border-radius:var(--radius-pill);cursor:pointer;
  background:transparent;color:var(--text-secondary);
}
.tab-switch button.is-active{background:var(--color-surface);color:var(--color-primary);box-shadow:var(--shadow-1)}

.amount-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
@media(max-width:640px){.amount-grid{grid-template-columns:1fr 1fr}}
.amount{
  display:flex;flex-direction:column;align-items:center;padding:16px 8px;
  border-radius:var(--radius-md);cursor:pointer;font-family:var(--font-body);
  border:1px solid var(--divider-strong);background:var(--color-surface);
  color:var(--text-primary);text-align:center;
  transition:border-color var(--duration-fast) var(--ease-standard);
}
.amount:hover{border-color:var(--color-primary)}
.amount.is-active{border:2px solid var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary-strong)}
.amount-value{font-family:var(--font-heading);font-weight:800;font-size:20px}
.amount-note{font-size:11px;line-height:15px;opacity:.85;margin-top:4px}

.pay-methods{display:flex;gap:10px;flex-wrap:wrap}
.pay{
  padding:10px 18px;border-radius:var(--radius-pill);font-family:var(--font-body);
  font-size:13px;font-weight:700;cursor:pointer;
  border:1px solid var(--divider-strong);background:var(--color-surface);color:var(--text-primary);
}
.pay.is-active{border-color:var(--color-primary);background:var(--color-primary);color:var(--text-on-primary)}

.summary-card{position:sticky;top:96px}
@media(max-width:800px){.summary-card{position:static}}

.cta-band{
  padding:48px;border-radius:var(--radius-xl);
  background:var(--color-primary);text-align:center;
}
.cta-panel{
  padding:28px;border-radius:var(--radius-lg);background:var(--color-surface-raised);
  border:1px solid var(--divider);text-align:center;
}
.success-mark{
  width:72px;height:72px;border-radius:50%;background:var(--color-secondary-soft);
  color:var(--color-secondary);display:flex;align-items:center;justify-content:center;font-size:32px;
}
.notice{
  padding:22px;border-radius:var(--radius-lg);
  background:var(--color-secondary-soft);border:1px solid var(--divider);
}
.map-embed{
  height:220px;border-radius:var(--radius-lg);
  background:linear-gradient(135deg,var(--color-primary-soft),var(--color-secondary-soft));
  border:1px solid var(--divider);display:flex;align-items:center;justify-content:center;
  font-family:var(--font-body);font-size:13px;color:var(--text-tertiary);
}
.map-frame{
  width:100%;height:320px;border:1px solid var(--divider);
  border-radius:var(--radius-lg);display:block;
  transition:filter var(--duration-base) var(--ease-standard);
}
[data-theme="dark"] .map-frame{
  /* Google's embed has no dark param; invert + hue-rotate approximates a dark map. */
  filter:invert(0.92) hue-rotate(180deg) brightness(0.9) contrast(0.9);
}
.error-code{
  font-family:var(--font-heading);font-weight:800;font-size:72px;color:var(--color-primary-soft);
}
.pill-stat{
  padding:14px;border-radius:var(--radius-md);background:var(--color-surface);
  border:1px solid var(--divider);text-align:center;
}
.pill-stat-label{font-family:var(--font-heading);font-weight:700;font-size:13px;color:var(--text-tertiary)}
.pill-stat-value{font-family:var(--font-body);font-weight:700;color:var(--text-primary)}
.contact-line span:first-child{
  font-family:var(--font-heading);font-weight:700;font-size:14px;
  color:var(--text-tertiary);display:block;
}
.contact-line span:last-child,.contact-line a{
  font-family:var(--font-body);font-size:15px;color:var(--text-primary);text-decoration:none;
}
.contact-line a{color:var(--color-primary)}
.pagination{display:flex;gap:8px;justify-content:center;margin-top:40px;flex-wrap:wrap}
.pagination a,.pagination span{
  font-family:var(--font-body);font-size:14px;font-weight:600;padding:8px 14px;
  border-radius:var(--radius-md);text-decoration:none;color:var(--text-secondary);
  border:1px solid var(--divider);
}
.pagination .is-current{background:var(--color-primary);color:var(--text-on-primary);border-color:var(--color-primary)}

/* --- Print -------------------------------------------------------------- */
@media print{
  .site-header,.site-footer,.btn,.nav-toggle{display:none !important}
  body{background:#fff}
}
