html,body,#root{min-height:100%;margin:0}:root{--bg:#0f0f12;--bg-alt:#17171c;--accent:#ff5b3c;--accent-soft:#ffb199;--text:#f4f4f5;--text-muted:#a1a1aa;--card:#1d1d23;--radius:14px}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:Segoe UI,system-ui,-apple-system,sans-serif}.page{flex-direction:column;min-height:100vh;display:flex}.topbar{z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f0f12e6;border-bottom:1px solid #26262e;position:sticky;top:0}.topbar__inner{justify-content:space-between;align-items:center;gap:24px;max-width:1100px;margin:0 auto;padding:16px 24px;display:flex}.brand{letter-spacing:-.02em;font-size:1.4rem;font-weight:800}.brand__accent{color:var(--accent)}.nav{gap:20px;display:flex}.nav a{color:var(--text-muted);font-weight:500;text-decoration:none}.nav a:hover{color:var(--text)}.cart{white-space:nowrap;font-weight:600}.cart__count{background:var(--accent);color:#fff;text-align:center;border-radius:999px;min-width:22px;margin-left:4px;padding:0 6px;font-size:.85rem;display:inline-block}.hero{text-align:center;background:radial-gradient(circle at 50% 0%, #2a1810 0%, var(--bg) 65%);padding:96px 24px 72px}.hero h1{letter-spacing:-.03em;margin:0 0 12px;font-size:clamp(2rem,5vw,3.4rem)}.hero p{color:var(--text-muted);margin:0 0 32px;font-size:1.15rem}.hero__cta{background:var(--accent);color:#fff;border-radius:999px;padding:14px 32px;font-weight:700;text-decoration:none;transition:transform .15s,background .15s;display:inline-block}.hero__cta:hover{background:var(--accent-soft);transform:translateY(-2px)}main{flex:1;width:100%;max-width:1100px;margin:0 auto;padding:0 24px}.catalog h2,.testimonials h2,.newsletter h2{margin-bottom:28px;font-size:1.6rem}.grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px;margin-bottom:72px;display:grid}.card{background:var(--card);border-radius:var(--radius);border:1px solid #29292f;flex-direction:column;padding:24px;transition:transform .15s,border-color .15s;display:flex;position:relative}.card:hover{border-color:var(--accent);transform:translateY(-4px)}.card__tag{background:var(--accent);color:#fff;letter-spacing:.04em;border-radius:999px;padding:4px 10px;font-size:.7rem;font-weight:800;position:absolute;top:16px;right:16px}.card__emoji{margin-bottom:12px;font-size:2.6rem}.card h3{margin:0 0 8px;font-size:1.1rem}.card__desc{color:var(--text-muted);flex:1;margin:0 0 20px;font-size:.92rem;line-height:1.4}.card__footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.card__price{font-size:1.05rem;font-weight:800}.card button{border:1px solid var(--accent);color:var(--accent);cursor:pointer;background:0 0;border-radius:8px;padding:9px 14px;font-weight:700;transition:background .15s,color .15s}.card button:hover{background:var(--accent);color:#fff}.testimonials{margin-bottom:72px}.testimonials__grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;display:grid}blockquote{background:var(--bg-alt);border-left:3px solid var(--accent);border-radius:0 var(--radius) var(--radius) 0;margin:0;padding:20px}blockquote p{color:var(--text);margin:0 0 10px;line-height:1.5}blockquote footer{color:var(--text-muted);font-size:.85rem}.newsletter{text-align:center;background:var(--bg-alt);border-radius:var(--radius);margin-bottom:64px;padding:48px 24px}.newsletter p{color:var(--text-muted);margin-bottom:24px}.newsletter__form{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.newsletter__form input{background:var(--bg);color:var(--text);border:1px solid #29292f;border-radius:8px;min-width:240px;padding:12px 16px}.newsletter__form button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:12px 22px;font-weight:700}.footer{text-align:center;color:var(--text-muted);border-top:1px solid #26262e;padding:28px 24px;font-size:.85rem}.toast{background:var(--card);border:1px solid var(--accent);border-radius:10px;padding:12px 20px;font-weight:600;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0006}
