/* Critical CSS - Mobile-first, Lighthouse optimized */
*,*::before,*::after{box-sizing:border-box}
.skip-link{position:absolute;top:-100px;left:0;background:#115e59;color:#fff;padding:.5rem 1rem;z-index:9999;transition:top .2s}
.skip-link:focus{top:0}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
body{margin:0;font-family:system-ui,-apple-system,sans-serif;background:#f8fafc;color:#1e293b;min-height:100vh;display:flex;flex-direction:column}
img{max-width:100%;height:auto;display:block;contain:layout}
a{color:inherit;text-decoration:none}
.container{width:100%;max-width:1280px;margin:0 auto;padding:0 1rem}
.flex{display:flex}
.flex-col{flex-direction:column}
.flex-wrap{flex-wrap:wrap}
.flex-1{flex:1}
.items-center{align-items:center}
.items-start{align-items:flex-start}
.justify-between{justify-content:space-between}
.justify-center{justify-content:center}
.gap-2{gap:.5rem}
.gap-4{gap:1rem}
.grid{display:grid}
.grid-cols-1{grid-template-columns:1fr}
.p-2{padding:.5rem}
.p-3{padding:.75rem}
.p-4{padding:1rem}
.px-2{padding-left:.5rem;padding-right:.5rem}
.px-3{padding-left:.75rem;padding-right:.75rem}
.px-4{padding-left:1rem;padding-right:1rem}
.py-1{padding-top:.25rem;padding-bottom:.25rem}
.py-2{padding-top:.5rem;padding-bottom:.5rem}
.py-3{padding-top:.75rem;padding-bottom:.75rem}
.py-6{padding-top:1.5rem;padding-bottom:1.5rem}
.mb-1{margin-bottom:.25rem}
.mb-2{margin-bottom:.5rem}
.mb-3{margin-bottom:.75rem}
.mb-4{margin-bottom:1rem}
.mb-6{margin-bottom:1.5rem}
.mt-2{margin-top:.5rem}
.mt-4{margin-top:1rem}
.mt-6{margin-top:1.5rem}
.mt-auto{margin-top:auto}
.text-sm{font-size:.875rem}
.text-lg{font-size:1.125rem}
.text-xl{font-size:1.25rem}
.text-2xl{font-size:1.5rem}
.font-medium{font-weight:500}
.font-semibold{font-weight:600}
.font-bold{font-weight:700}
.text-slate-500{color:#64748b}
.text-slate-600{color:#475569}
.text-slate-800{color:#1e293b}
.text-teal-600{color:#0d9488}
.text-teal-700{color:#0f766e}
.text-amber-500{color:#f59e0b}
.text-amber-600{color:#d97706}
.text-amber-700{color:#b45309}
.bg-amber-100{background:#fef3c7}
.text-white{color:#fff}
.bg-white{background:#fff}
.bg-slate-50{background:#f8fafc}
.bg-slate-100{background:#f1f5f9}
.bg-slate-200{background:#e2e8f0}
.bg-slate-300{background:#cbd5e1}
.bg-slate-800{background:#1e293b}
.bg-teal-600{background:#0d9488}
.bg-teal-700{background:#0f766e}
.bg-teal-800{background:#115e59}
.bg-green-100{background:#dcfce7}
.bg-green-600{background:#16a34a}
.bg-red-100{background:#fee2e2}
.text-red-700{color:#b91c1c}
.text-green-700{color:#15803d}
.rounded{border-radius:.25rem}
.rounded-lg{border-radius:.5rem}
.shadow{box-shadow:0 1px 3px rgba(0,0,0,.1)}
.shadow-md{box-shadow:0 4px 6px rgba(0,0,0,.1)}
.transition{transition:all .2s ease}
.shadow-lg{box-shadow:0 10px 15px rgba(0,0,0,.1)}
.shadow-xl{box-shadow:0 20px 25px rgba(0,0,0,.1)}
.border{border:1px solid #e2e8f0}
.border-t{border-top:1px solid #e2e8f0}
.border-green-400{border-color:#4ade80}
.border-red-400{border-color:#f87171}
.space-y-2>*+*{margin-top:.5rem}
.space-y-4>*+*{margin-top:1rem}
.inline-block{display:inline-block}
.text-right{text-align:right}
.text-left{text-align:left}
.text-center{text-align:center}
.inline{display:inline}
.hover\:bg-teal-700:hover{background:#0f766e}
.hover\:bg-teal-500:hover{background:#14b8a6}
.hover\:bg-teal-600:hover{background:#0d9488}
.hover\:bg-slate-300:hover{background:#cbd5e1}
.hover\:bg-slate-200:hover{background:#e2e8f0}
.hover\:underline:hover{text-decoration:underline}
.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.min-w-0{min-width:0}
.min-h-screen{min-height:100vh}
.mx-auto{margin-left:auto;margin-right:auto}
.object-cover{object-fit:cover}
.aspect-video{aspect-ratio:16/9}
.w-full{width:100%}
.w-12{width:3rem}
.h-12{height:3rem}
.w-14{width:3.5rem}
.h-14{height:3.5rem}
.w-20{width:5rem}
.h-20{height:5rem}
.max-w-md{max-width:28rem}
.max-w-xl{max-width:36rem}
.max-w-2xl{max-width:42rem}
.fixed{position:fixed}
.absolute{position:absolute}
.relative{position:relative}
.bottom-4{bottom:1rem}
.right-4{right:1rem}
.bottom-16{bottom:4rem}
.right-0{right:0}
.z-50{z-index:50}
.hidden{display:none}
.overflow-y-auto{overflow-y:auto}
.overflow-x-auto{overflow-x:auto}
.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.prose h1{font-size:1.5rem;font-weight:700;margin:1rem 0 .5rem}
.prose h2{font-size:1.25rem;font-weight:600;margin:.75rem 0 .5rem}
.prose h3{font-size:1.125rem;font-weight:500;margin:.5rem 0 .25rem}
.prose p{margin-bottom:.5rem}
.prose ul{list-style:disc;padding-left:1.5rem;margin-bottom:.5rem}
.prose img{max-width:100%;height:auto;border-radius:.25rem}
input,textarea,select{font:inherit}
@media(min-width:640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,1fr)}.sm\:grid-cols-3{grid-template-columns:repeat(3,1fr)}}
@media(min-width:768px){.md\:grid-cols-4{grid-template-columns:repeat(4,1fr)}}
@media(min-width:1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,1fr)}.lg\:grid-cols-4{grid-template-columns:repeat(4,1fr)}}
