/* Casa Décoration — static affiliate site (Vilna Gaon SRL) */
:root{
  --ink:#2b2622; --muted:#6b635b; --line:#e8e2da;
  --bg:#fbf9f6; --card:#ffffff; --accent:#b07a52; --accent-dark:#8a5e3d;
  --max:1100px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0; background:var(--bg); color:var(--ink);
  font:16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
.wrap{max-width:var(--max); margin:0 auto; padding:0 20px}
a{color:var(--accent-dark); text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif; font-weight:600; line-height:1.25; color:var(--ink)}

/* Header */
.site-header{background:var(--card); border-bottom:1px solid var(--line); position:sticky; top:0; z-index:10}
.header-inner{display:flex; align-items:center; justify-content:space-between; height:64px}
.brand{font-family:Georgia,serif; font-size:1.4rem; font-weight:700; color:var(--ink)}
.brand span{color:var(--accent); margin-left:2px}
.nav a{color:var(--muted); font-size:.95rem; margin-left:22px}
.nav a:hover{color:var(--accent-dark); text-decoration:none}

/* Hero */
.hero{background:linear-gradient(160deg,#f3ece3,#fbf9f6); padding:72px 0; text-align:center; border-bottom:1px solid var(--line)}
.hero h1{font-size:2.4rem; margin:0 0 12px}
.lede{font-size:1.15rem; color:var(--muted); max-width:640px; margin:0 auto 24px}
.btn{display:inline-block; background:var(--accent); color:#fff; padding:12px 26px; border-radius:6px; font-weight:600}
.btn:hover{background:var(--accent-dark); text-decoration:none}

/* Sections */
.section{padding:48px 0}
.section h2{font-size:1.6rem; margin:0 0 24px}

/* Card grid */
.grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:24px}
.card{background:var(--card); border:1px solid var(--line); border-radius:10px; overflow:hidden; transition:transform .15s,box-shadow .15s}
.card:hover{transform:translateY(-3px); box-shadow:0 10px 28px rgba(80,60,40,.10)}
.card-img{aspect-ratio:16/10; background:linear-gradient(135deg,#e6ddd1,#d8ccbb)}
.card-body{padding:18px}
.cat{display:inline-block; font-size:.72rem; letter-spacing:.06em; text-transform:uppercase; color:var(--accent); font-weight:700; margin-bottom:8px}
.card-body h3{font-size:1.12rem; margin:0 0 8px}
.card-body p{margin:0; color:var(--muted); font-size:.95rem}

/* Category tiles */
.cats{display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); gap:16px}
.cat-tile{display:flex; align-items:center; justify-content:center; min-height:96px; background:var(--card); border:1px solid var(--line); border-radius:10px; font-family:Georgia,serif; font-size:1.15rem; color:var(--ink); font-weight:600}
.cat-tile:hover{border-color:var(--accent); color:var(--accent-dark); text-decoration:none}

/* Footer */
.site-footer{background:#2b2622; color:#cabfb3; margin-top:48px; padding:40px 0}
.disclosure{font-size:.88rem; color:#b6a99c; max-width:760px; margin:0 0 20px}
.footer-nav a{color:#e3d8cb; margin-right:20px; font-size:.92rem}
.copy{font-size:.85rem; color:#8a8076; margin-top:16px}

/* Category / product pages */
.page-head{background:linear-gradient(160deg,#f3ece3,#fbf9f6); padding:44px 0; border-bottom:1px solid var(--line)}
.page-head h1{font-size:2rem; margin:0 0 8px}
.page-head p{color:var(--muted); margin:0}
.products{display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:20px; padding:40px 0}
.product{position:relative; background:var(--card); border:1px solid var(--line); border-radius:10px; overflow:hidden; display:flex; flex-direction:column; transition:transform .15s,box-shadow .15s}
.product:hover{transform:translateY(-3px); box-shadow:0 10px 28px rgba(80,60,40,.10)}
.product-img{display:block; background:#fff; padding:10px; text-align:center}
.product-img img{max-width:100%; height:auto; object-fit:contain}
.badge{position:absolute; top:10px; left:10px; background:var(--accent); color:#fff; font-size:.75rem; font-weight:700; padding:3px 8px; border-radius:4px; z-index:2}
.product-body{padding:14px; display:flex; flex-direction:column; gap:8px; flex:1}
.brand{font-size:.72rem; text-transform:uppercase; letter-spacing:.05em; color:var(--muted); font-weight:700}
.product-body h3{font-family:-apple-system,sans-serif; font-size:.92rem; font-weight:600; line-height:1.35; margin:0; flex:1}
.product-body h3 a{color:var(--ink)}
.price{font-family:Georgia,serif; font-size:1.15rem; font-weight:700; color:var(--accent-dark)}
.price .old{font-size:.85rem; color:var(--muted); text-decoration:line-through; font-weight:400; margin-left:6px}
.btn-buy{display:block; text-align:center; background:var(--accent); color:#fff; padding:9px; border-radius:6px; font-weight:600; font-size:.9rem; margin-top:auto}
.btn-buy:hover{background:var(--accent-dark); text-decoration:none}
.note{color:var(--muted); font-size:.85rem; padding-bottom:24px}

/* Breadcrumb */
.breadcrumb{padding:14px 20px 0; font-size:.85rem; color:var(--muted)}
.breadcrumb a{color:var(--accent-dark)}
.breadcrumb span[aria-hidden]{margin:0 6px; color:var(--line)}

/* Guides list */
.guide-list{margin:0; padding-left:20px; color:var(--muted)}
.guide-list li{margin:0 0 10px; line-height:1.5}

@media(max-width:640px){
  .hero{padding:52px 0}
  .hero h1{font-size:1.9rem}
  .nav{display:none}
}
