/* Honor Y Sabor static site. Colors and fonts live here. */
:root{
  --red:#b5121b; --dark:#1c1714; --cream:#faf6f0; --line:#e8e0d4; --ink:#2b2520;
}
*{box-sizing:border-box; margin:0; padding:0}
body{font-family:Georgia,'Times New Roman',serif; color:var(--ink); background:var(--cream)}
a{color:inherit; text-decoration:none}
.wrap{max-width:1200px; margin:0 auto; padding:0 20px}
.topbar{background:var(--dark); color:#e9e2d8; font-size:13px; font-family:Verdana,Arial,sans-serif}
.topbar-in{display:flex; justify-content:space-between; padding-top:7px; padding-bottom:7px; flex-wrap:wrap; gap:6px}
.topbar a:hover{color:#fff; text-decoration:underline}
.site-head{background:#fff; border-bottom:3px solid var(--red); position:sticky; top:0; z-index:50}
.head-in{display:flex; align-items:center; justify-content:space-between; padding-top:12px; padding-bottom:12px; flex-wrap:wrap; gap:10px}
.logo img{height:56px; display:block}
.nav{display:flex; gap:26px; font-family:Verdana,Arial,sans-serif; font-size:14px; letter-spacing:.04em; flex-wrap:wrap}
.nav a{padding:6px 0; border-bottom:2px solid transparent; text-transform:uppercase}
.nav a:hover,.nav a.active{border-color:var(--red); color:var(--red)}
.hero{position:relative; background:var(--dark); overflow:hidden}
.hero-video{width:100%; aspect-ratio:16/7; min-height:320px; border:0; display:block; pointer-events:none}
.hero-overlay{position:absolute; inset:0; display:flex; align-items:center; justify-content:center; background:rgba(20,12,8,.45)}
.hero-overlay h1{color:#fff; font-size:clamp(28px,5vw,56px); text-align:center; text-shadow:0 2px 18px rgba(0,0,0,.6); line-height:1.15; padding:0 18px}
.hero-overlay h1 span{color:#ffce54}
section{padding:56px 0}
.kicker{font-family:Verdana,Arial,sans-serif; font-size:12px; letter-spacing:.25em; text-transform:uppercase; color:var(--red); margin-bottom:10px}
h2.title{font-size:clamp(24px,3.2vw,38px); margin-bottom:18px}
.story{display:grid; grid-template-columns:1.1fr .9fr; gap:44px; align-items:center}
.story p{margin-bottom:14px; line-height:1.7; font-size:17px}
.story img{width:100%; border-radius:10px; box-shadow:0 14px 40px rgba(40,20,5,.18)}
.btn{display:inline-block; background:var(--red); color:#fff; font-family:Verdana,Arial,sans-serif; font-size:13px; letter-spacing:.08em; text-transform:uppercase; padding:11px 22px; border-radius:4px}
.btn:hover{background:#8e0e15}
.btn-alt{background:var(--dark)}
.btn-alt:hover{background:#000}
.band{background:#fff; border-top:1px solid var(--line); border-bottom:1px solid var(--line)}
.brand-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:22px}
.brand-tile{background:var(--cream); border:1px solid var(--line); border-radius:10px; padding:26px 18px; text-align:center; transition:.18s; display:flex; flex-direction:column; align-items:center; gap:12px}
.brand-tile:hover{transform:translateY(-4px); box-shadow:0 16px 34px rgba(40,20,5,.14); border-color:var(--red)}
.brand-tile .art{height:110px; display:flex; align-items:center; justify-content:center}
.brand-tile img{max-height:110px; max-width:100%; object-fit:contain}
.brand-tile .no-art{font-size:44px}
.brand-tile h3{font-size:18px}
.brand-tile .count{font-family:Verdana,Arial,sans-serif; font-size:12px; color:#7a6f63}
.brand-tile .go{font-family:Verdana,Arial,sans-serif; font-size:12px; color:var(--red); letter-spacing:.06em; text-transform:uppercase}
.grid{display:grid; grid-template-columns:repeat(4,1fr); gap:22px}
.card{background:#fff; border:1px solid var(--line); border-radius:10px; overflow:hidden; display:flex; flex-direction:column; transition:.18s}
.card:hover{box-shadow:0 14px 30px rgba(40,20,5,.12); transform:translateY(-3px)}
.card-img{background:#fff; display:flex; align-items:center; justify-content:center; padding:14px; height:210px}
.card-img img{max-height:180px; max-width:100%; object-fit:contain}
.card-body{padding:14px 16px 18px; border-top:1px solid var(--line); display:flex; flex-direction:column; gap:8px; flex:1}
.card-name{font-size:15px; line-height:1.35; flex:1}
.card-name:hover{color:var(--red)}
.card-price{font-family:Verdana,Arial,sans-serif; font-weight:bold; font-size:16px; color:var(--dark)}
.card .btn{text-align:center; padding:10px 12px; font-size:12px}
.page-head{background:var(--dark); color:#fff; padding:42px 0}
.page-head h1{font-size:clamp(26px,3.4vw,40px)}
.page-head p{color:#d9cfc2; margin-top:8px; max-width:720px; line-height:1.6}
.crumbs{font-family:Verdana,Arial,sans-serif; font-size:12px; color:#bfae9a; margin-bottom:10px}
.crumbs a:hover{color:#fff}
.note{background:#fff7e8; border:1px solid #ecd9b0; border-radius:8px; padding:12px 16px; font-size:14px; font-family:Verdana,Arial,sans-serif; margin-bottom:26px}
.jump{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:30px}
.jump a{font-family:Verdana,Arial,sans-serif; font-size:12px; letter-spacing:.05em; text-transform:uppercase; border:1px solid var(--line); background:#fff; padding:8px 14px; border-radius:30px}
.jump a:hover{border-color:var(--red); color:var(--red)}
.cat-section{margin-bottom:48px}
.cat-section h2{font-size:24px; margin-bottom:6px}
.cat-section .sub{color:#7a6f63; font-size:14px; font-family:Verdana,Arial,sans-serif; margin-bottom:18px}
.prose{max-width:840px; line-height:1.75; font-size:17px}
.prose h2{margin:34px 0 12px; font-size:26px}
.prose h3{margin:26px 0 10px; font-size:20px}
.prose p{margin-bottom:14px}
.prose ul{margin:0 0 14px 22px}
.prose li{margin-bottom:8px}
.prose img{width:100%; border-radius:10px; margin:18px 0}
.video-embed{width:100%; aspect-ratio:16/9; border:0; border-radius:10px; margin:18px 0}
.contact-grid{display:grid; grid-template-columns:1fr 1fr; gap:36px; align-items:start}
.contact-card{background:#fff; border:1px solid var(--line); border-radius:10px; padding:26px}
.contact-card h3{margin-bottom:10px}
.contact-card p{margin-bottom:10px; line-height:1.6}
.site-foot{background:var(--dark); color:#cfc4b6; margin-top:40px; font-size:14px}
.foot-grid{display:grid; grid-template-columns:1.3fr 1fr 1fr 1.2fr; gap:30px; padding-top:46px; padding-bottom:30px}
.foot-grid h4{color:#fff; font-family:Verdana,Arial,sans-serif; font-size:13px; text-transform:uppercase; letter-spacing:.1em; margin-bottom:12px}
.foot-grid a{display:block; padding:3px 0}
.foot-grid a:hover{color:#fff; text-decoration:underline}
.foot-logo{max-width:170px; margin-bottom:10px}
.foot-base{border-top:1px solid #3a322b; padding-top:16px; padding-bottom:22px; font-size:12px; font-family:Verdana,Arial,sans-serif; color:#9a8d7d}
.foot-base a{text-decoration:underline}
@media (max-width:960px){
  .brand-grid,.grid{grid-template-columns:repeat(2,1fr)}
  .story,.contact-grid,.foot-grid{grid-template-columns:1fr}
  .hero-video{aspect-ratio:16/9}
}
@media (max-width:520px){
  .brand-grid,.grid{grid-template-columns:1fr}
  .nav{gap:14px}
}
