/* ===== Wireframe shared styles ===== */
:root{
  --red:#C41E3A;
  --ink:#0B0B0B;
  --paper:#ffffff;
  --bone:#F5F2EC;
  --rule:#0B0B0B;
  --mute:#8a8a8a;
  --box:#EAE7DF;
}
*{box-sizing:border-box}
.wf{
  font-family:'Inter',system-ui,sans-serif;
  background:#fff;
  color:var(--ink);
  width:1440px;
  border:1.5px solid var(--ink);
  position:relative;
  overflow:hidden;
  font-size:12px;
  line-height:1.4;
}
.wf *{letter-spacing:0}

/* hand-sketch vibe: slight rotation disabled for seriousness; keep crisp rectangles + handwriting-ish labels */
.wf .hw{font-family:'Caveat', cursive;font-weight:600;color:var(--red);font-size:14px}

/* Shared header */
.wf-head{display:flex;align-items:center;justify-content:space-between;padding:20px 40px;border-bottom:1.5px solid var(--ink);background:#fff}
.wf-head .logo-mini{display:flex;align-items:center;gap:10px}
.wf-head .logo-mini .mark{background:var(--red);color:#fff;font-weight:900;font-size:22px;padding:6px 9px;letter-spacing:-.01em;line-height:1}
.wf-head .logo-mini .tt{display:flex;flex-direction:column;line-height:.95;font-weight:900;font-size:13px;color:var(--ink);letter-spacing:-.005em}
.wf-head nav{display:flex;gap:28px;font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#333}
.wf-head nav a{cursor:pointer}
.wf-head nav a.active{color:var(--red);font-weight:700;border-bottom:2px solid var(--red);padding-bottom:2px}
.wf-head .cta{display:flex;align-items:center;gap:14px;font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase}
.wf-head .hotline{color:var(--red);font-weight:700}
.wf-head .lang{border:1.5px solid var(--ink);padding:5px 10px}

/* Shared footer */
.wf-foot{background:var(--ink);color:#fff;padding:48px 40px 24px}
.wf-foot .cols{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr 1.4fr;gap:40px}
.wf-foot h5{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:#aaa;margin:0 0 14px;font-weight:600}
.wf-foot ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;font-size:11.5px;color:#ddd}
.wf-foot .brand{display:flex;flex-direction:column;gap:14px}
.wf-foot .brand .mark{background:var(--red);color:#fff;font-weight:900;font-size:28px;padding:8px 12px;width:fit-content;line-height:1}
.wf-foot .brand p{color:#aaa;font-size:11px;line-height:1.6;margin:0}
.wf-foot .bottom{margin-top:36px;padding-top:20px;border-top:1px solid #333;display:flex;justify-content:space-between;font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#888}

/* Placeholder shapes */
.ph{background:var(--box);border:1.5px solid var(--ink);position:relative;display:flex;align-items:center;justify-content:center;color:#7a7771;font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.ph::before,.ph::after{content:"";position:absolute;inset:0;pointer-events:none}
.ph.img::before{background:
  linear-gradient(to top right, transparent 49.5%, #bfbcb3 49.5%, #bfbcb3 50.5%, transparent 50.5%),
  linear-gradient(to top left, transparent 49.5%, #bfbcb3 49.5%, #bfbcb3 50.5%, transparent 50.5%);
}
.ph.small{font-size:9px}
.ph.red{background:var(--red);color:#fff;border-color:var(--red)}
.ph.ink{background:var(--ink);color:#fff;border-color:var(--ink)}
.ph.empty::before{display:none}
.ph.empty::after{display:none}

/* Text-line placeholders */
.tl{height:10px;background:#E8E5DD;border-radius:1px}
.tl.sh{width:60%}
.tl.md{width:80%}
.tl.lg{width:100%}
.tl.dark{background:#0B0B0B}
.tl.red{background:var(--red)}

/* Buttons (wireframe) */
.btn{
  display:inline-flex;align-items:center;gap:10px;
  border:1.5px solid var(--ink);padding:10px 18px;
  font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;
  background:#fff;color:var(--ink);
  cursor:pointer;
}
.btn.solid{background:var(--red);border-color:var(--red);color:#fff}
.btn.ghost{border-color:#fff;color:#fff;background:transparent}

/* Labels */
.tag{
  font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.2em;text-transform:uppercase;
  color:#777;
}
.num{
  font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.2em;color:var(--red);font-weight:700;
}
.h-display{font-weight:900;font-size:56px;letter-spacing:-0.025em;line-height:.95;color:var(--ink)}
.h-section{font-weight:900;font-size:36px;letter-spacing:-0.02em;line-height:1;color:var(--ink)}
.h-sub{font-weight:800;font-size:20px;letter-spacing:-0.01em}
.body-lg{font-size:14px;line-height:1.55;color:#555;max-width:520px}

/* Breadcrumb */
.crumb{display:flex;gap:8px;font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#888}
.crumb b{color:var(--ink);font-weight:700}

/* Annotations (sketchy notes) */
.note{
  position:absolute;
  font-family:'Caveat', cursive;
  color:var(--red);
  font-size:15px;
  font-weight:700;
  line-height:1.1;
  pointer-events:none;
}
.note::before{
  content:"";
  position:absolute;
  width:22px;height:1.5px;background:var(--red);
  left:-30px;top:50%;transform:translateY(-50%);
}
.note.right::before{left:auto;right:-30px}

/* ========== MOBILE (375px) ========== */
.wf-m{
  font-family:'Inter',system-ui,sans-serif;
  background:#fff;
  color:var(--ink);
  width:375px;
  border:1.5px solid var(--ink);
  position:relative;
  overflow:hidden;
  font-size:14px;
  line-height:1.45;
}
.wf-m *{letter-spacing:0}

/* Status bar (visual context only) */
.m-status{height:22px;background:#0B0B0B;display:flex;align-items:center;justify-content:space-between;padding:0 18px;font-family:'JetBrains Mono',monospace;font-size:9px;color:#fff;letter-spacing:.12em}

/* Mobile header */
.m-head{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1.5px solid var(--ink);background:#fff;height:56px}
.m-head .logo-sq{background:var(--red);color:#fff;font-weight:900;font-size:16px;padding:6px 8px;line-height:1;letter-spacing:-.02em;display:flex;flex-direction:column;align-items:center;gap:2px}
.m-head .logo-sq .sub{font-size:6px;letter-spacing:.08em;opacity:.95;font-weight:800}
.m-head .ham{width:44px;height:44px;border:1.5px solid var(--ink);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;background:#fff;cursor:pointer}
.m-head .ham span{width:18px;height:2px;background:var(--ink)}

/* Mobile sticky bottom bar */
.m-stickybar{position:absolute;left:0;right:0;bottom:0;display:grid;grid-template-columns:1fr 1fr;border-top:1.5px solid var(--ink);background:#fff;z-index:10}
.m-stickybar .bar-btn{height:56px;display:flex;align-items:center;justify-content:center;gap:8px;font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;cursor:pointer}
.m-stickybar .bar-btn.call{background:var(--red);color:#fff}
.m-stickybar .bar-btn.zalo{background:#fff;color:var(--ink);border-left:1.5px solid var(--ink)}
.m-stickybar .bar-btn .ic{width:18px;height:18px;border:1.5px solid currentColor;display:inline-block}

/* Fixed spacer so content doesn't hide under sticky bar */
.m-spacer{height:64px}

/* Mobile hamburger menu overlay */
.m-menu{background:#0B0B0B;color:#fff;padding:16px;position:relative}
.m-menu .top{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}
.m-menu .top .x{width:44px;height:44px;border:1.5px solid #fff;display:flex;align-items:center;justify-content:center;font-size:18px}
.m-menu ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0}
.m-menu li{padding:18px 0;border-bottom:1px solid #333;font-size:20px;font-weight:800;letter-spacing:-.005em;display:flex;justify-content:space-between;align-items:center}
.m-menu li .arr{color:#666}
.m-menu li.active{color:var(--red)}
.m-menu .contact{margin-top:28px;padding-top:20px;border-top:1px solid #333;display:flex;flex-direction:column;gap:12px}
.m-menu .contact .row{display:flex;align-items:center;gap:12px;font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#aaa}
.m-menu .contact .row b{color:#fff;font-weight:700;font-size:13px;letter-spacing:-.005em;font-family:'Inter',sans-serif;text-transform:none}
.m-menu .contact .ctas{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px}
.m-menu .contact .ctas .btn{justify-content:center;padding:14px;font-size:11px}
.m-menu .contact .ctas .btn.solid{background:var(--red);border-color:var(--red)}
.m-menu .contact .ctas .btn.ghost{border-color:#fff;color:#fff}

/* Hero (mobile) */
.m-hero{padding:24px 16px 28px;display:flex;flex-direction:column;gap:14px;border-bottom:1.5px solid var(--ink);background:#fff}
.m-hero .num{color:var(--red)}
.m-hero h1{margin:0;font-weight:900;font-size:30px;line-height:1.02;letter-spacing:-.02em}
.m-hero p{margin:0;font-size:14px;color:#555;line-height:1.55}
.m-hero .cta-row{display:flex;flex-direction:column;gap:10px;margin-top:8px}
.m-hero .btn{justify-content:center;padding:16px;font-size:12px}

/* Mobile section wrapper */
.m-sec{padding:28px 16px;border-bottom:1.5px solid var(--ink)}
.m-sec .sec-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:18px}
.m-sec .sec-head h2{margin:0;font-weight:900;font-size:22px;letter-spacing:-.015em}
.m-sec .sec-head .more{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--red);font-weight:700}

/* Stats row */
.m-stats{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0;border:1.5px solid var(--ink)}
.m-stats .s{padding:18px 10px;text-align:center;border-right:1.5px solid var(--ink)}
.m-stats .s:last-child{border-right:none}
.m-stats .s .n{font-weight:900;font-size:26px;line-height:1;letter-spacing:-.02em;color:var(--red)}
.m-stats .s .l{font-family:'JetBrains Mono',monospace;font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:#666;margin-top:6px}

/* Category grid 2 cols */
.m-cats{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.m-cats .cat{aspect-ratio:1/1;border:1.5px solid var(--ink);padding:14px;display:flex;flex-direction:column;justify-content:space-between;background:#fff}
.m-cats .cat .ic{width:36px;height:36px;border:1.5px solid var(--ink);background:var(--box)}
.m-cats .cat .n{font-weight:800;font-size:14px;line-height:1.25}
.m-cats .cat .c{font-family:'JetBrains Mono',monospace;font-size:9px;letter-spacing:.14em;color:var(--red)}

/* Horizontal scroll rail */
.m-rail{display:flex;gap:12px;overflow-x:auto;padding-bottom:6px;margin:0 -16px;padding-left:16px;padding-right:16px;scroll-snap-type:x mandatory}
.m-rail > *{scroll-snap-align:start;flex:0 0 auto}

/* Product card (mobile) */
.m-prod{width:220px;border:1.5px solid var(--ink);background:#fff}
.m-prod .img{aspect-ratio:1/1}
.m-prod .info{padding:10px 12px;display:flex;flex-direction:column;gap:6px;border-top:1.5px solid var(--ink)}
.m-prod .info .tag{color:var(--red);font-size:9px}
.m-prod .info .n{font-weight:800;font-size:13px;line-height:1.3}
.m-prod .info .p{font-weight:900;font-size:14px;color:var(--red)}
.m-prod.small{width:170px}
.m-prod.small .info .n{font-size:12px}

/* Partner logos rail */
.m-logos{display:flex;gap:10px;overflow-x:auto;margin:0 -16px;padding:0 16px}
.m-logos .lg{flex:0 0 auto;width:110px;height:60px;border:1.5px solid var(--ink);background:#fafaf7;display:flex;align-items:center;justify-content:center;font-family:'JetBrains Mono',monospace;font-size:9px;color:#888;letter-spacing:.1em}

/* Footer (mobile) */
.m-foot{background:var(--ink);color:#fff;padding:28px 16px 24px;display:flex;flex-direction:column;gap:20px}
.m-foot .brand{display:flex;align-items:center;gap:10px}
.m-foot .brand .mark{background:var(--red);color:#fff;font-weight:900;font-size:18px;padding:6px 8px;line-height:1}
.m-foot .brand p{color:#aaa;font-size:11px;line-height:1.55;margin:0}
.m-foot h5{margin:0 0 10px;font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#aaa;font-weight:600}
.m-foot ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:13px;color:#ddd}
.m-foot .hotline{background:var(--red);padding:14px;display:flex;justify-content:space-between;align-items:center;margin-top:4px}
.m-foot .hotline b{font-size:18px;font-weight:900;letter-spacing:-.01em}
.m-foot .hotline span{font-family:'JetBrains Mono',monospace;font-size:9px;letter-spacing:.16em;text-transform:uppercase}
.m-foot .bottom{border-top:1px solid #333;padding-top:14px;font-family:'JetBrains Mono',monospace;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#888;line-height:1.6}

/* Breadcrumb mobile */
.m-crumb{padding:12px 16px;font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#888;border-bottom:1px solid #eee;display:flex;gap:6px;align-items:center}
.m-crumb b{color:var(--ink);font-weight:700}

/* Filter bar */
.m-filterbar{display:flex;gap:8px;padding:12px 16px;border-bottom:1.5px solid var(--ink);overflow-x:auto}
.m-filterbar .chip{flex:0 0 auto;min-height:44px;padding:10px 14px;border:1.5px solid var(--ink);background:#fff;font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;display:flex;align-items:center;gap:6px}
.m-filterbar .chip.active{background:var(--ink);color:#fff}
.m-filterbar .chip .car{font-size:9px;opacity:.7}

/* Product grid 2 cols (mobile) */
.m-grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:16px;background:var(--bone)}
.m-grid2 .card{background:#fff;border:1.5px solid var(--ink)}
.m-grid2 .card .img{aspect-ratio:1/1}
.m-grid2 .card .info{padding:10px;border-top:1.5px solid var(--ink);display:flex;flex-direction:column;gap:4px}
.m-grid2 .card .info .tag{color:var(--red);font-size:9px}
.m-grid2 .card .info .n{font-weight:800;font-size:12px;line-height:1.3}
.m-grid2 .card .info .p{font-weight:900;font-size:12px;color:var(--red)}

/* Pagination / load more */
.m-loadmore{margin:18px 16px 24px;padding:16px;border:1.5px solid var(--ink);text-align:center;font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;background:#fff}

/* Product detail */
.m-gallery{aspect-ratio:1/1;border-bottom:1.5px solid var(--ink);position:relative}
.m-gallery .dots{position:absolute;bottom:12px;left:0;right:0;display:flex;justify-content:center;gap:6px}
.m-gallery .dots span{width:8px;height:8px;border:1.5px solid var(--ink);background:#fff}
.m-gallery .dots span.active{background:var(--red);border-color:var(--red)}
.m-thumbs{display:flex;gap:8px;padding:12px 16px;overflow-x:auto;border-bottom:1.5px solid var(--ink)}
.m-thumbs .th{flex:0 0 auto;width:56px;height:56px;border:1.5px solid var(--ink);background:var(--box)}
.m-thumbs .th.active{border-color:var(--red);border-width:2px}

.m-pinfo{padding:20px 16px;border-bottom:1.5px solid var(--ink);display:flex;flex-direction:column;gap:10px}
.m-pinfo .meta{display:flex;gap:10px;align-items:center;font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#888}
.m-pinfo .meta .stock{color:var(--red);font-weight:700}
.m-pinfo h1{margin:0;font-weight:900;font-size:24px;line-height:1.15;letter-spacing:-.015em}
.m-pinfo .price{font-weight:900;font-size:22px;color:var(--red);margin-top:4px}
.m-pinfo .cta-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
.m-pinfo .btn{justify-content:center;padding:16px 10px;font-size:11px}

.m-tabs{display:flex;border-bottom:1.5px solid var(--ink)}
.m-tabs .t{flex:1;padding:14px 6px;text-align:center;font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:#888;border-right:1px solid #eee}
.m-tabs .t:last-child{border-right:none}
.m-tabs .t.active{color:var(--ink);border-bottom:2px solid var(--red);margin-bottom:-1.5px}

.m-tabbody{padding:18px 16px;border-bottom:1.5px solid var(--ink);display:flex;flex-direction:column;gap:10px}
.m-spec{display:grid;grid-template-columns:1fr 1fr;gap:0}
.m-spec .r{padding:10px 0;border-bottom:1px solid #eee;font-size:13px;display:flex;justify-content:space-between}
.m-spec .r .k{color:#888}
.m-spec .r .v{font-weight:700}

/* News cards */
.m-feature{aspect-ratio:16/10;border-bottom:1.5px solid var(--ink);position:relative;display:flex;align-items:flex-end}
.m-feature .overlay{padding:16px;background:linear-gradient(to top,rgba(0,0,0,.75),transparent);color:#fff;width:100%}
.m-feature .overlay .tag{color:#fff;opacity:.8;font-size:10px}
.m-feature .overlay h3{margin:4px 0 0;font-weight:900;font-size:18px;line-height:1.25;letter-spacing:-.01em}

.m-newslist{display:flex;flex-direction:column}
.m-news-item{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:14px 16px;border-bottom:1px solid #eee}
.m-news-item .img{aspect-ratio:1/1}
.m-news-item .meta{font-family:'JetBrains Mono',monospace;font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--red)}
.m-news-item h4{margin:4px 0 6px;font-weight:800;font-size:14px;line-height:1.3;letter-spacing:-.005em}
.m-news-item p{margin:0;color:#666;font-size:12px;line-height:1.5}

/* Timeline mobile (vertical) */
.m-timeline{display:flex;flex-direction:column;gap:24px;padding-left:20px;position:relative}
.m-timeline::before{content:"";position:absolute;left:5px;top:4px;bottom:4px;width:1.5px;background:var(--ink)}
.m-timeline .tl-item{position:relative}
.m-timeline .tl-item::before{content:"";position:absolute;left:-20px;top:6px;width:12px;height:12px;border-radius:50%;background:var(--red);border:2px solid var(--red)}
.m-timeline .year{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.14em;color:var(--red);font-weight:700}
.m-timeline h4{margin:4px 0;font-weight:800;font-size:15px;letter-spacing:-.005em}
.m-timeline p{margin:0;font-size:12px;color:#666;line-height:1.5}

/* Team */
.m-team{display:flex;flex-direction:column;gap:14px}
.m-team .card{border:1.5px solid var(--ink);background:#fff;display:grid;grid-template-columns:90px 1fr;gap:14px;padding:14px}
.m-team .card .av{aspect-ratio:1/1;background:var(--box);border:1.5px solid var(--ink)}
.m-team .card .who{display:flex;flex-direction:column;gap:4px;justify-content:center}
.m-team .card .who b{font-size:15px;font-weight:800;letter-spacing:-.005em}
.m-team .card .who .r{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.12em;color:var(--red);text-transform:uppercase}
.m-team .card .who p{margin:0;font-size:12px;color:#666;line-height:1.5}

/* Certs grid */
.m-certs{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.m-certs .c{aspect-ratio:3/4;border:1.5px solid var(--ink);background:var(--box);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.14em;color:#666;text-align:center}

/* Contact cards */
.m-contact-list{display:flex;flex-direction:column;border:1.5px solid var(--ink);background:#fff}
.m-contact-list .row{display:flex;align-items:flex-start;gap:14px;padding:16px;border-bottom:1px solid #eee;min-height:72px}
.m-contact-list .row:last-child{border-bottom:none}
.m-contact-list .row .ic{width:36px;height:36px;border:1.5px solid var(--ink);display:flex;align-items:center;justify-content:center;background:var(--box);flex:0 0 auto}
.m-contact-list .row .val{display:flex;flex-direction:column;gap:3px}
.m-contact-list .row .k{font-family:'JetBrains Mono',monospace;font-size:9px;letter-spacing:.14em;color:var(--red);text-transform:uppercase;font-weight:700}
.m-contact-list .row .v{font-weight:700;font-size:14px;line-height:1.35}
.m-contact-list .row .v.tel{color:var(--red)}

/* Form (mobile) */
.m-form{display:flex;flex-direction:column;gap:12px}
.m-form label{display:flex;flex-direction:column;gap:6px;font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#666;font-weight:700}
.m-form input,.m-form select,.m-form textarea{min-height:48px;border:1.5px solid var(--ink);padding:12px 14px;font-family:'Inter',sans-serif;font-size:14px;background:#fff;color:var(--ink)}
.m-form textarea{min-height:90px;resize:vertical}
.m-form .btn{justify-content:center;padding:18px;font-size:12px;margin-top:6px}

/* Map embed */
.m-map{aspect-ratio:4/3;border:1.5px solid var(--ink);background:var(--box);position:relative;display:flex;align-items:center;justify-content:center;color:#888;font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.m-map::before{content:"";position:absolute;top:30%;left:50%;width:16px;height:16px;background:var(--red);border-radius:50% 50% 50% 0;transform:translate(-50%, -50%) rotate(-45deg)}

/* Hours table */
.m-hours{display:flex;flex-direction:column;border:1.5px solid var(--ink);background:#fff}
.m-hours .r{display:flex;justify-content:space-between;padding:12px 14px;font-size:13px;border-bottom:1px solid #eee}
.m-hours .r:last-child{border-bottom:none}
.m-hours .r .d{font-weight:700}
.m-hours .r .h{font-family:'JetBrains Mono',monospace;font-size:12px;color:#666;letter-spacing:.08em}
.m-hours .r.closed .h{color:var(--red)}

/* About intro stacked */
.m-about-hero{aspect-ratio:4/3;position:relative;border-bottom:1.5px solid var(--ink)}
.m-about-hero .over{position:absolute;inset:0;padding:20px 16px;display:flex;flex-direction:column;justify-content:flex-end;color:#fff;background:linear-gradient(to top,rgba(0,0,0,.7),transparent 60%)}
.m-about-hero .over .num{color:#fff;opacity:.8}
.m-about-hero .over h1{margin:6px 0 0;font-weight:900;font-size:28px;line-height:1.05;letter-spacing:-.02em}

.m-block{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}
.m-block .tag{color:var(--red)}
.m-block h3{margin:0;font-weight:900;font-size:20px;letter-spacing:-.01em;line-height:1.2}
.m-block p{margin:0;color:#555;font-size:13.5px;line-height:1.6}
.m-block .img{aspect-ratio:4/3;border:1.5px solid var(--ink);background:var(--box)}

/* CTA band mobile */
.m-ctaband{background:var(--red);color:#fff;padding:28px 16px;display:flex;flex-direction:column;gap:14px}
.m-ctaband h3{margin:0;font-weight:900;font-size:22px;line-height:1.2;letter-spacing:-.01em}
.m-ctaband p{margin:0;opacity:.9;font-size:13px;line-height:1.5}
.m-ctaband .btn{background:#fff;border-color:#fff;color:var(--red);justify-content:center;padding:16px;font-size:12px}
