
:root{
  --bg:#f7fafc; /* light background */
  --text:#0f172a;
  --muted:#475569;
  --card:#ffffff;
  --brand:#00b894; /* green */
  --brand-2:#ff7a00; /* orange */
  --brand-3:#ef233c; /* red */
  --brand-4:#1e90ff; /* blue */
  --ring:rgba(30,144,255,.25);
  --shadow: 0 10px 30px rgba(2, 6, 23, .08);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:Inter,system-ui,Arial,sans-serif;color:var(--text);background:var(--bg);line-height:1.6}
img{max-width:100%;height:auto;border-radius:16px}
.container{max-width:1100px;margin:0 auto;padding:0 18px}
.small{font-size:.9rem}
.muted{color:var(--muted)}
.flex-between{display:flex;align-items:center;justify-content:space-between;gap:12px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:22px}
.card{background:var(--card);padding:18px;border-radius:18px;box-shadow:var(--shadow);transition:transform .15s ease, box-shadow .2s ease}
.card:hover{transform:translateY(-2px);box-shadow:0 16px 40px rgba(2,6,23,.12)}
.btn{display:inline-block;padding:10px 16px;border-radius:999px;background:linear-gradient(135deg,var(--brand),var(--brand-4));color:white;text-decoration:none;font-weight:600;box-shadow:var(--shadow)}
.btn-outline{background:transparent;border:2px solid var(--brand);color:var(--brand)}
.badge{display:inline-block;padding:4px 10px;border-radius:999px;background:rgba(0,184,148,.1);color:#0b6b5f;font-weight:600;font-size:.8rem}
/* Header */
.site-header{position:sticky;top:0;background:rgba(255,255,255,.7);backdrop-filter:saturate(140%) blur(10px);border-bottom:1px solid #e2e8f0;z-index:20}
.site-header .logo{display:flex;align-items:center;gap:10px;font-weight:800;text-decoration:none;color:var(--text);font-size:1.25rem}
.logo-mark{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:9px;background:linear-gradient(135deg,var(--brand-2),var(--brand-4));color:white}
.main-nav a{margin:0 8px;text-decoration:none;color:var(--text);padding:8px 10px;border-radius:10px}
.main-nav a:hover{background:#eef2ff}
.menu-btn{display:none;border:none;background:transparent;font-size:22px}
/* Footer */
.site-footer{margin-top:40px;padding:36px 0;background:#fff;border-top:1px solid #e2e8f0}
.link-list{list-style:none;padding:0;margin:0}
.link-list li{margin:8px 0}
.link-list a{text-decoration:none;color:var(--text)}
/* Hero */
.hero{padding:40px 0}
.hero h1{font-size:2.25rem;line-height:1.1;margin:0 0 10px}
.hero p{color:var(--muted);max-width:700px}
.hero .actions{margin-top:18px;display:flex;gap:12px;flex-wrap:wrap}
/* Animated background */
.bg-animated{position:fixed;inset:0;overflow:hidden;z-index:-1}
.bg-animated span{position:absolute;width:180px;height:180px;border-radius:50%;filter:blur(40px);opacity:.4;animation:float 12s ease-in-out infinite}
.bg-animated span:nth-child(1){background:var(--brand);top:5%;left:10%}
.bg-animated span:nth-child(2){background:var(--brand-2);top:30%;left:70%;animation-delay:1.5s}
.bg-animated span:nth-child(3){background:var(--brand-3);top:70%;left:60%;animation-delay:3s}
.bg-animated span:nth-child(4){background:var(--brand-4);top:60%;left:15%;animation-delay:4.5s}
.bg-animated span:nth-child(5){background:#e84393;top:10%;left:50%;animation-delay:6s}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-25px)}}
/* Carousel */
.carousel{position:relative;overflow:hidden;border-radius:18px;background:#fff;box-shadow:var(--shadow)}
.carousel-track{display:flex;transition:transform .6s cubic-bezier(.22,.61,.36,1)}
.carousel-item{min-width:100%;padding:18px}
.carousel-controls{position:absolute;inset:0;display:flex;align-items:center;justify-content:space-between;padding:0 10px}
.carousel button{border:none;background:rgba(0,0,0,.5);color:#fff;width:36px;height:36px;border-radius:50%}
/* Blog */
.post{background:#fff;border-radius:18px;padding:18px;box-shadow:var(--shadow)}
.post h1{margin:8px 0 0}
.post .meta{color:var(--muted);font-size:.9rem}
.post img{margin:14px 0}
.prose p{margin:14px 0}
.prose h2{margin:20px 0 6px}
.prose ul{padding-left:20px}
/* Shop */
.shop-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}
.product-card{background:#fff;padding:16px;border-radius:18px;box-shadow:var(--shadow)}
.price{font-weight:800}
.actions-row{display:flex;gap:10px;flex-wrap:wrap}
input,select,textarea{width:100%;padding:10px 12px;border-radius:10px;border:1px solid #cbd5e1;outline:none}
input:focus,textarea:focus,select:focus{box-shadow:0 0 0 4px var(--ring)}
label{font-weight:600}
/* Cookie consent */
.cookie-consent{position:fixed;bottom:16px;right:16px;background:#111827;color:#fff;padding:14px;border-radius:14px;display:none;gap:10px;align-items:center;max-width:520px;box-shadow:var(--shadow)}
.cookie-consent button{background:#22c55e;border:none;border-radius:10px;padding:8px 10px;color:#fff;font-weight:700}
/* Responsive */
@media (max-width: 860px){
  .grid-3{grid-template-columns:1fr}
  .grid-4{grid-template-columns:1fr 1fr}
  .main-nav{display:none;position:absolute;right:14px;top:60px;background:#fff;padding:10px;border-radius:12px;box-shadow:var(--shadow)}
  .main-nav.open{display:block}
  .menu-btn{display:block}
}
