/* Self-hosted brand fonts — Archivo + Fraunces (latin) */
@font-face{font-family:'Archivo';font-style:normal;font-weight:300;font-display:swap;src:url('archivo-latin-300-normal.woff2') format('woff2');}
@font-face{font-family:'Archivo';font-style:normal;font-weight:400;font-display:swap;src:url('archivo-latin-400-normal.woff2') format('woff2');}
@font-face{font-family:'Archivo';font-style:normal;font-weight:500;font-display:swap;src:url('archivo-latin-500-normal.woff2') format('woff2');}
@font-face{font-family:'Archivo';font-style:normal;font-weight:600;font-display:swap;src:url('archivo-latin-600-normal.woff2') format('woff2');}
@font-face{font-family:'Archivo';font-style:normal;font-weight:700;font-display:swap;src:url('archivo-latin-700-normal.woff2') format('woff2');}
@font-face{font-family:'Archivo';font-style:italic;font-weight:400;font-display:swap;src:url('archivo-latin-400-italic.woff2') format('woff2');}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:300;font-display:swap;src:url('fraunces-latin-300-normal.woff2') format('woff2');}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:400;font-display:swap;src:url('fraunces-latin-400-normal.woff2') format('woff2');}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:500;font-display:swap;src:url('fraunces-latin-500-normal.woff2') format('woff2');}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:600;font-display:swap;src:url('fraunces-latin-600-normal.woff2') format('woff2');}
@font-face{font-family:'Fraunces';font-style:italic;font-weight:300;font-display:swap;src:url('fraunces-latin-300-italic.woff2') format('woff2');}
@font-face{font-family:'Fraunces';font-style:italic;font-weight:400;font-display:swap;src:url('fraunces-latin-400-italic.woff2') format('woff2');}

/* ============================================================
   CDN-independent fallbacks for the Tailwind utilities this
   site depends on. Loaded before the Tailwind CDN <script>,
   so Tailwind still wins when it is available; these only take
   effect if cdn.tailwindcss.com is blocked or fails to load.
   Keeps page rhythm intact rather than collapsing to zero.
   ============================================================ */
.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}
.flex-col{flex-direction:column}.items-center{align-items:center}
.items-start{align-items:flex-start}.items-baseline{align-items:baseline}
.justify-center{justify-content:center}.justify-between{justify-content:space-between}
.text-center{text-align:center}.w-full{width:100%}.leading-none{line-height:1}
.relative{position:relative}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}

.pt-6{padding-top:1.5rem}.pt-8{padding-top:2rem}.pt-24{padding-top:6rem}
.pt-28{padding-top:7rem}.pt-36{padding-top:9rem}
.pb-4{padding-bottom:1rem}.pb-8{padding-bottom:2rem}.pb-10{padding-bottom:2.5rem}
.pb-12{padding-bottom:3rem}.pb-16{padding-bottom:4rem}
.py-4{padding-top:1rem;padding-bottom:1rem}
.py-12{padding-top:3rem;padding-bottom:3rem}
.py-14{padding-top:3.5rem;padding-bottom:3.5rem}
.py-16{padding-top:4rem;padding-bottom:4rem}
.py-20{padding-top:5rem;padding-bottom:5rem}
.py-24{padding-top:6rem;padding-bottom:6rem}

.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-8{margin-top:2rem}
.mt-9{margin-top:2.25rem}.mt-10{margin-top:2.5rem}.mt-12{margin-top:3rem}
.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}
.mb-12{margin-bottom:3rem}.mb-14{margin-bottom:3.5rem}

@media(min-width:1024px){.lg\:px-10{padding-left:2.5rem;padding-right:2.5rem}}
