/* hr-core.css v2 — shared tokens, type, header, footer, .btn, .card. Source: live homepage 2026-10-23. Floor: no text <12px. */

:root{
  --red:#7A1F2B; --bg:#FAF7F2; --surface:#F3EEE6; --ink:#1A1A1A;
  --muted:#6D6A65; --gold:#B8935A /* decorative only: never text, never a UI border */; --gold-dark:#806128 /* text on light (5.4:1) AND surface under white text (5.74:1) */; --border:#E0D9CD;
}
*{margin:0;padding:0;box-sizing:border-box}
html{font-size:16px;scroll-behavior:smooth;overflow-x:clip}
body{overflow-x:clip;font-family:'Karla',Arial,sans-serif;font-size:16px;line-height:1.6;color:var(--ink);background:var(--bg)}
h1,.xh1,h2,h3,.serif{font-family:'Newsreader',Georgia,serif;font-weight:500}
h1,.xh1,h2{text-wrap:balance}
h1,.xh1{font-size:clamp(2.2rem,5vw,3.5rem);line-height:1.05}
h2{font-size:clamp(1.6rem,3vw,2.25rem);line-height:1.15}
h3{font-size:1.35rem;line-height:1.25}
.label{font-family:'Karla',Arial,sans-serif;font-size:.75rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.wrap{max-width:1360px;margin:0 auto;padding:0 24px}
a{color:inherit;text-decoration:none}
/* top bar */
.topbar{border-bottom:1px solid var(--border);background:var(--bg);position:sticky;top:0;z-index:50}
.topbar .wrap{display:flex;align-items:center;justify-content:space-between;height:72px}
.wordmark{font-family:'Newsreader',Georgia,serif;font-size:1.5rem;letter-spacing:.02em}.wm-sub{display:block;font-family:'Karla',sans-serif;font-size:.75rem;letter-spacing:.26em;font-weight:700;margin-top:4px;color:var(--gold-dark);opacity:1}
.wordmark span{color:var(--gold-dark)}
nav.main{display:flex;gap:28px;align-items:center}
nav.main>a,nav.main .nav-item{display:inline-flex;align-items:center;line-height:1;min-height:44px}
nav.main .nav-item>a{display:inline-flex;align-items:center;line-height:1;min-height:44px}
nav.main a{font-size:.8125rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink)}
nav.main a,.dropdown a{min-height:44px;display:inline-flex;align-items:center}
nav.main a:hover{color:var(--gold-dark)}
.phone{display:inline-flex;align-items:center;min-height:44px;font-size:.85rem;font-weight:600;color:var(--ink);white-space:nowrap}
/* buttons */
.btn{display:inline-block;background:var(--red);color:#fff;border:1px solid var(--red);cursor:pointer;
  font-family:'Karla',Arial,sans-serif;font-size:.75rem;font-weight:700;letter-spacing:.16em;
  text-transform:uppercase;padding:14px 22px;border-radius:2px}
.btn:hover{background:#5E1620;border-color:#5E1620}
.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--ink)}
.btn.ghost:hover{border-color:var(--gold-dark);color:var(--gold-dark)}
/* mobile nav */
.nav-burger{display:none;font-size:1.6rem;cursor:pointer;padding:4px 2px;line-height:1;color:var(--ink)}
#mnav{display:none;background:var(--bg)}
#mnav.open{display:block}
#mnav a{display:block;padding:15px 24px;border-top:1px solid var(--border);font-size:.8rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink)}
@media(max-width:960px){.nav-burger{display:block}.phone{display:inline-flex;align-items:center;min-height:44px;display:none}}
@media(max-width:860px){.wrap{padding:0 18px}}
@media(max-width:560px){.wordmark{font-size:1.02rem!important}.topbar .wrap{height:60px}}
.card{color:var(--ink);background:#fff;border:1px solid var(--border);border-radius:0;overflow:hidden;display:flex;flex-direction:column}
.card .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.card .ph{height:170px;background:linear-gradient(135deg,#2A2521,#4A4038);position:relative}.card .ph::after{content:"";position:absolute;left:0;right:0;bottom:0;height:75%;background:linear-gradient(to top,rgba(0,0,0,.68),rgba(0,0,0,0));pointer-events:none;z-index:0}
.card .ph .tag{position:absolute;top:12px;left:12px;background:var(--ink);color:#fff;font-size:.75rem;font-weight:700;z-index:1;
  letter-spacing:.14em;text-transform:uppercase;padding:5px 10px;border-radius:2px}
.card .ph .nm{position:absolute;bottom:12px;left:14px;right:14px;color:#fff;font-family:'Newsreader',Georgia,serif;font-size:1.15rem;line-height:1.2;text-shadow:0 2px 10px rgba(0,0,0,.75);z-index:1}
.card .bd{padding:16px 18px 18px;display:flex;flex-direction:column;gap:6px;flex:1}
.card .meta{font-size:.8rem;color:var(--muted)}
.card .price{font-weight:700;font-size:.95rem}
/* footer */
footer{background:var(--surface);border-top:1px solid var(--border);padding:48px 0;font-size:.82rem;color:var(--muted)}
footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px;margin-bottom:32px}
@media(max-width:860px){footer .cols{grid-template-columns:1fr 1fr}}
footer h4{font-size:.75rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);margin-bottom:12px}
footer a{display:block;padding:3px 0}
footer a:hover{color:var(--red)}
.legal{border-top:1px solid var(--border);padding-top:20px;font-size:.75rem;line-height:1.7}
.chiplist{display:flex;flex-wrap:wrap;gap:10px}
.nav-item{position:relative;display:inline-block}
.nav-item>a{display:inline-block}
.dropdown{position:absolute;top:100%;left:50%;transform:translateX(-50%);background:#fff;border:1px solid var(--border);border-radius:4px;box-shadow:0 12px 32px rgba(0,0,0,.10);padding:10px 0;min-width:210px;opacity:0;visibility:hidden;transition:opacity .15s;z-index:60}
.nav-item:hover .dropdown,.nav-item:focus-within .dropdown{opacity:1;visibility:visible}
.dropdown a{display:block;padding:10px 22px;font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);white-space:nowrap}
.dropdown a:hover{color:var(--red);background:var(--surface)}
.caret{font-size:.75rem;opacity:.55;margin-left:4px}

