/* Minimal, elegant, lightweight design */
:root{
  --ink:#0f172a;
  --muted:#64748b;
  --bg:#ffffff;
  --line:#e2e8f0;
  --brand:#0b63b6;
  --accent:#f5c400;
  --radius:16px;
  --shadow:0 10px 30px rgba(2,6,23,.08);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family: Inter, Helvetica, Arial, sans-serif;
  color:var(--ink); background:var(--bg); line-height:1.65;
}
.container{width:min(1100px,92vw); margin:0 auto}
.nav{position:sticky; top:0; z-index:50; background:#ffffffcc; backdrop-filter: blur(8px); border-bottom:1px solid var(--line)}
.nav .inner{display:flex; align-items:center; justify-content:space-between; padding:14px 0}
.brand{display:flex; align-items:center; gap:10px; font-weight:900; text-decoration:none; color:var(--ink)}
.brand .dot{width:10px;height:10px;border-radius:50%; background:linear-gradient(135deg, var(--brand), var(--accent))}
.menu{display:flex; gap:16px; flex-wrap:wrap}
.menu a{text-decoration:none; color:var(--ink); font-weight:800}
.menu a:hover{color:var(--brand)}
.cta-mini{display:none}
@media (max-width:760px){ .menu{display:none} .cta-mini{display:inline-flex} }

.btn{display:inline-flex; align-items:center; justify-content:center; padding:10px 16px; border-radius:12px;
     text-decoration:none; border:1px solid transparent; font-weight:800; transition:.2s ease; cursor:pointer}
.btn-primary{background:linear-gradient(135deg,var(--brand), #1382ff); color:#fff; box-shadow: var(--shadow)}
.btn-ghost{background:#fff; color:var(--brand); border-color:var(--brand)}
.btn-ghost:hover{background:var(--brand); color:#fff}

.badge{display:inline-block; padding:6px 10px; border-radius:999px; background:#eef6ff; color:#075985; font-weight:900; font-size:12px}
.section{padding:64px 0}
.grid{display:grid; gap:20px}
.grid.four{grid-template-columns: repeat(auto-fit, minmax(220px, 1fr))}
.grid.three{grid-template-columns: repeat(auto-fit, minmax(260px, 1fr))}
.grid.two{grid-template-columns: repeat(auto-fit, minmax(320px, 1fr))}

.card{background:#fff; border:1px solid var(--line); border-radius:16px; padding:16px; box-shadow: var(--shadow)}
.post{display:block; text-decoration:none; color:inherit}
.product .price{color:#0b3b77}

.hero{padding:86px 0 40px; background:
  radial-gradient(900px 520px at 15% -10%, #e6f2ff 12%, transparent 60%),
  radial-gradient(700px 420px at 100% 10%, #fff7cc 5%, transparent 50%)}
.hero h1{font-size: clamp(28px, 6vw, 44px); line-height:1.12; margin:10px 0}
.hero p{font-size: clamp(15px, 2.6vw, 18px); color:var(--muted)}
.hero .actions{display:flex; gap:10px; flex-wrap:wrap; margin-top:14px}

.small{font-size:13px}
.muted{color:var(--muted)}
.pad{padding:18px}
.alert{padding:10px 12px; border-radius:10px; margin-bottom:10px}
.alert.success{background:#ecfeff; border:1px solid #06b6d4}
.alert.error{background:#fef2f2; border:1px solid #ef4444}

.footer{padding:24px 0; border-top:1px solid var(--line); color:var(--muted); font-size:14px}
.footer .foot{display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap}
.footer .links{display:flex; gap:14px}
.search-inline{display:flex; gap:8px; align-items:center}
.search-inline input{padding:8px 12px; border:1px solid var(--line); border-radius:10px}


/* --- Hero with side image --- */
.hero-wrap{display:grid; grid-template-columns: 1.1fr .9fr; gap:24px; align-items:center}
@media (max-width:920px){ .hero-wrap{grid-template-columns:1fr} }
.hero-media{border-radius:16px; overflow:hidden; border:1px solid var(--line); box-shadow: var(--shadow)}
.hero-media img{width:100%; height:auto; display:block}
/* --- Cards with image thumbs --- */
.card-thumb{border-radius:12px; overflow:hidden; border:1px solid var(--line); margin-bottom:10px}
.card-thumb img{width:100%; height:auto; display:block}


/* === Responsive hero merged with title === */
.hero h1{display:grid; grid-template-columns: 1fr auto; align-items:center; gap: clamp(12px, 3vw, 24px)}
.hero .title{line-height:1.12}
.hero-art{
  width: clamp(140px, 28vw, 340px);
  aspect-ratio: 4/3;
  background: center / cover no-repeat var(--hero-img);
  border-radius: 16px;
  border:1px solid var(--line);
  box-shadow: var(--shadow);
}
@media (max-width: 920px){
  .hero h1{grid-template-columns: 1fr}
  .hero-art{order:2; width: 100%; aspect-ratio: 16/9}
  .hero p{margin-top: 6px}
}

/* === Responsive cards (posts & products) === */
.card-thumb{border-radius:12px; overflow:hidden; border:1px solid var(--line); margin-bottom:10px; aspect-ratio: 16/9}
.card-thumb img{width:100%; height:100%; object-fit:cover; display:block}

/* A11y helper */
.sr-only{position:absolute !important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0}

.hero h1{display:grid; grid-template-columns: 1fr auto; align-items:center; gap: clamp(12px, 3vw, 24px)}
.hero .title{line-height:1.12}
.hero-art{width: clamp(140px, 28vw, 340px); border-radius: 16px; border:1px solid var(--line); box-shadow: var(--shadow); overflow:hidden}
.hero-art img{display:block; width:100%; height:auto}
@media (max-width:920px){ .hero h1{grid-template-columns: 1fr} .hero-art{order:2; width:100%} }
