/* malgrim.by — MALGRIM interior-design studio. Tokens from design/specs.md */
:root{
  --charcoal:#1C1C1E;
  --graphite:#2A2A2D;
  --brass:#C29A54;
  --brass-deep:#A07F3C;
  --ink:#23231F;
  --muted:#8A8579;
  --page-bg:#F3F0EA;
  --surface:#FFFFFF;
  --border:#E1DBCF;
}
html,body{background:var(--page-bg);}
body{color:var(--ink);font-family:'Source Sans 3',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:17px;line-height:1.7;}
h1,h2,h3,h4,.site-heading,.site-brand,.site-hero__title,.site-footer__brand{font-family:'Montserrat','Source Sans 3',sans-serif;letter-spacing:.02em;}

#cmNavCb{display:none;}#cmNavMenu{display:none;}
#cmNavCb:checked ~ #cmNavMenu{display:block;}
@media(min-width:1024px){#cmNavMenu{display:flex !important;}#cmBurger{display:none;}}

/* ---------- Nav ---------- */
.site-nav.navbar{background:var(--charcoal);min-height:66px;position:sticky;top:0;z-index:50;}
.site-nav .container{max-width:1180px;}
.site-brand{color:#fff !important;font-weight:700;font-size:1.3rem;letter-spacing:.14em;text-transform:uppercase;background:transparent;}
.site-brand span{color:var(--brass);font-size:.6rem;letter-spacing:.22em;display:block;margin-top:-2px;}
.site-nav .navbar-item{color:#D8D4CA;font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;background:transparent;}
.site-nav a.navbar-item:hover{color:var(--brass);background:rgba(255,255,255,.04);}
.site-nav a.site-cta{background:var(--brass);color:#1C1C1E !important;border-radius:2px;margin:.6rem 0;font-weight:700;}
.site-nav a.site-cta:hover{background:var(--brass-deep);color:#fff !important;}
.navbar-burger{color:#fff;margin-left:auto;}.navbar-burger span{background:#fff;}
@media(max-width:1023px){.site-nav .navbar-menu{background:var(--charcoal);}.site-nav .navbar-menu a.navbar-item{color:#D8D4CA;}}

/* ---------- Hero ---------- */
.site-hero{background:linear-gradient(180deg,#161618,#222225);color:#fff;padding:3.2rem 0;border-bottom:3px solid var(--brass);}
.site-hero .container{max-width:1180px;}
.site-hero__title{font-size:2.4rem;font-weight:800;color:#fff;line-height:1.12;text-transform:uppercase;letter-spacing:.03em;}
.site-hero__tag{color:#C7C2B6;font-size:1.05rem;margin-top:.5rem;}

/* ---------- Layout ---------- */
.site-main{padding:0 0 3rem;}
.site-container{max-width:1180px;margin-top:1.7rem;}
.site-breadcrumb{margin:.4rem 0 1rem;font-size:.85rem;color:var(--muted);}
.site-breadcrumb a{color:var(--brass-deep);}

/* ---------- Prose ---------- */
.site-prose{background:var(--surface);border:1px solid var(--border);border-radius:3px;padding:2rem;}
.site-heading--1{font-size:2rem;color:var(--charcoal);margin:.1em 0 .5em;text-transform:uppercase;letter-spacing:.02em;}
.site-heading--2{font-size:1.45rem;color:var(--charcoal);margin:1.2em 0 .6em;padding-bottom:.25em;border-bottom:2px solid var(--brass);}
.site-heading--3{font-size:1.2rem;color:var(--brass-deep);margin:1.1em 0 .4em;}
.site-block--paragraph{margin:.8em 0;}
.site-block--image{margin:1.2rem 0;}
.site-block--image img{border-radius:3px;border:1px solid var(--border);max-width:100%;}
.site-block--quote{border-left:4px solid var(--brass);background:var(--page-bg);padding:.9em 1.2em;margin:1.3em 0;}
.site-block--separator{border:0;border-top:1px solid var(--border);margin:1.3em 0;}
.site-prose a,.site-article a,.site-block--paragraph a,.site-category__desc a{color:var(--brass-deep);text-decoration:underline;text-decoration-color:rgba(194,154,84,.45);}
.site-prose a:hover{color:var(--charcoal);text-decoration-color:var(--charcoal);}

/* ---------- Homepage section cards ---------- */
.site-sections{margin-top:1rem;}
.site-section-card{display:flex;flex-direction:column;gap:.35rem;background:var(--charcoal);border:1px solid var(--graphite);border-top:3px solid var(--brass);border-radius:3px;padding:1.4rem;height:100%;text-decoration:none !important;transition:transform .2s,box-shadow .2s;}
.site-section-card:hover{box-shadow:0 14px 30px rgba(0,0,0,.25);transform:translateY(-3px);}
.site-section-card__title{font-family:'Montserrat',sans-serif;font-weight:700;color:#fff;font-size:1.05rem;text-transform:uppercase;letter-spacing:.04em;}
.site-section-card:hover .site-section-card__title{color:var(--brass);}
.site-section-card__sub{color:#A8A296;font-size:.86rem;}

/* ---------- Listing cards ---------- */
.site-listing .site-card,.site-home .site-card{display:block;width:auto;margin:0 0 .7rem;}
.site-card__link{display:flex;align-items:center;gap:1rem;background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--brass);border-radius:3px;padding:.85rem 1.1rem;text-decoration:none !important;transition:box-shadow .2s;}
.site-card__link:hover{box-shadow:0 8px 22px rgba(28,28,30,.12);}
.site-card__link:hover .site-card__title{color:var(--brass-deep) !important;}
.site-card__media img{width:120px;height:80px;object-fit:cover;border-radius:2px;}
.site-card__title{font-family:'Montserrat',sans-serif;font-weight:600;color:var(--charcoal) !important;font-size:1.02rem;}
.site-gallery img{border-radius:3px;object-fit:cover;width:100%;}

/* ---------- Article/category/sidebar ---------- */
.site-article__summary{font-size:1.05rem;border-left:3px solid var(--brass);padding-left:1rem;color:var(--muted);margin:1rem 0;}
.site-article__dates{color:var(--muted);font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;}
.site-toc{background:var(--page-bg);border-radius:3px;padding:1rem;margin-bottom:1rem;}
.site-toc__title{font-weight:700;font-family:'Montserrat',sans-serif;color:var(--charcoal);}
.site-card2{background:var(--surface);border:1px solid var(--border);border-radius:3px;overflow:hidden;height:100%;}
.site-card2:hover{box-shadow:0 12px 26px rgba(28,28,30,.16);}
.site-card2__media img{width:100%;height:190px;object-fit:cover;}
.site-card2__body{padding:1rem;}
.site-card2__title a{color:var(--charcoal);font-family:'Montserrat',sans-serif;text-transform:uppercase;font-size:.95rem;letter-spacing:.02em;}
.site-card2__title a:hover{color:var(--brass-deep);}
.site-card2__more.button{background:var(--charcoal);color:#fff;border:none;font-weight:600;margin-top:.5rem;border-radius:2px;}
.site-sidebar{background:var(--surface);border:1px solid var(--border);border-top:3px solid var(--brass);border-radius:3px;padding:1.1rem;}
.site-sidebar__title{color:var(--charcoal);font-family:'Montserrat',sans-serif;font-size:1rem;text-transform:uppercase;}
.site-sidebar .menu-list a{color:var(--ink);}
.site-sidebar .menu-list a:hover{background:var(--page-bg);color:var(--brass-deep);}
.site-sidebar .menu-list ul{border-left:1px solid var(--border);}

/* ---------- Footer ---------- */
.site-footer{background:var(--charcoal);color:#A8A296;padding:2.6rem 0;margin-top:2rem;}
.site-footer .container{max-width:1180px;text-align:center;}
.site-footer__brand{font-family:'Montserrat',sans-serif;font-weight:700;font-size:1.5rem;color:#fff;letter-spacing:.18em;margin-bottom:1rem;}
.site-footer__map{display:flex;flex-wrap:wrap;gap:.4rem 1.4rem;justify-content:center;margin-bottom:1rem;}
.site-footer__map a{color:#A8A296;font-size:.82rem;text-decoration:none;}
.site-footer__map a:hover{color:var(--brass);}
.site-footer__copy{color:#75716A;font-size:.82rem;}
