*{box-sizing:border-box}html,body{margin:0;font-family:Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif;background:#f8fafc;color:#0b1220}
a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}
.container{max-width:1100px;margin:0 auto;padding:0 16px}
.site-header{position:sticky;top:0;background:#fff;border-bottom:1px solid #e5e7eb;z-index:10}
.nav{display:flex;justify-content:space-between;align-items:center;height:64px}
.brand a{font-weight:800}.nav-right{display:flex;gap:12px;align-items:center}
.btn{display:inline-block;padding:8px 14px;border-radius:9999px;border:1px solid #0b1220}.btn-outline{background:transparent}
.user-menu{position:relative}.user-btn{border:1px solid #0b1220;border-radius:10px;background:#fff;padding:6px 10px;cursor:pointer}
.user-menu .menu{position:absolute;right:0;top:120%;background:#fff;border:1px solid #e5e7eb;border-radius:10px;min-width:200px;box-shadow:0 6px 24px rgba(0,0,0,.08);display:none}
.user-menu .menu.open{display:block}.user-menu .menu a{display:block;padding:10px 12px}
.hero{position:relative;overflow:hidden}
.slider{display:grid;grid-template-columns:100%;align-items:center;min-height:52vh;background:#0c0e14;color:#fff}
.slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity .6s}
.slide.active{opacity:1}.slide-caption{position:absolute;left:50%;transform:translateX(-50%);bottom:18px;background:rgba(0,0,0,.45);border:1px solid rgba(255,255,255,.18);padding:6px 10px;border-radius:10px}
.section{padding:48px 0}.grid{display:grid;gap:24px}.grid-2{grid-template-columns:1fr}.grid-3{grid-template-columns:1fr}
.card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:18px;box-shadow:0 2px 10px rgba(0,0,0,.03)}.price{font-size:28px;font-weight:800}
.site-footer{padding:36px 0;border-top:1px solid #e5e7eb;background:#fff}.small{font-size:12px;color:#6b7280}
input,textarea{width:100%;padding:10px;border:1px solid #cbd5e1;border-radius:10px}label{display:block;margin:8px 0 4px}
@media(min-width:820px){.grid-2{grid-template-columns:1.1fr .9fr}.grid-3{grid-template-columns:repeat(3,1fr)}}

/* nudge badge for setting a local password */
.badge-nudge { display:inline-block; padding:6px 10px; margin-right:8px; font-size:12px; border-radius:9999px; background:#fffbeb; border:1px solid #f59e0b; color:#7c2d12; text-decoration:none }
.badge-nudge:hover { background:#fef3c7; text-decoration:none }
