
* { box-sizing:border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; }
body { background:#2b2416; color:#2b2416; font-family:Verdana, Geneva, sans-serif; font-size:16px;
  line-height:1.5; -webkit-font-smoothing:antialiased; }
img { display:block; max-width:100%; width:100%; height:100%; object-fit:cover; }
a { color:inherit; text-decoration:none; }

.mond { max-width:1200px; margin:0 auto; display:grid; gap:7px; padding:7px;
  background:#2b2416;
  grid-template-columns:repeat(6,1fr);
  grid-auto-rows:minmax(120px,auto);
  grid-template-areas:
    "nav  nav  nav  nav  nav  nav"
    "hero hero hero red  red  imga"
    "hero hero hero yel  blu  imga"
    "abt  abt  abt  abt  svc1 svc2"
    "imgb imgc imgc imgc svc1 svc2"
    "imgb quo  quo  quo  reds reds"
    "con  con  con  con  con  con"
    "foot foot foot foot foot foot"; }

.cell { background:#ffffff; color:#2b2416; padding:22px;
  display:flex; flex-direction:column; justify-content:center; overflow:hidden; }
.cell.img { padding:0; }

.nav { grid-area:nav; flex-direction:row; align-items:center;
  justify-content:space-between; padding:16px 22px; }
.brand { font-family:Rockwell, 'Rockwell Nova', 'Roboto Slab', Georgia, serif; font-weight:800; font-size:20px;
  letter-spacing:-0.01em; text-transform:uppercase; }
.nav nav a { margin-left:22px; font-weight:600; font-size:14px; color:#7f7458; }
.nav nav a:hover { color:#5f6b3a; }

.hero { grid-area:hero; justify-content:center; }
.kick { text-transform:uppercase; letter-spacing:0.26em; font-size:12px;
  color:#5f6b3a; margin-bottom:16px; }
.hero h1 { font-family:Rockwell, 'Rockwell Nova', 'Roboto Slab', Georgia, serif; font-weight:800; line-height:0.92;
  font-size:clamp(2.6rem,7vw,5rem); letter-spacing:-0.03em; text-transform:uppercase; }
.dek { color:#7f7458; margin:18px 0 24px; max-width:34ch; font-size:1.1rem; }
.btn { align-self:flex-start; background:#5f6b3a; color:#ffffff;
  font-weight:800; letter-spacing:0.1em; text-transform:uppercase; font-size:13px;
  padding:14px 26px; }
.btn:hover { background:#2b2416; color:#ffffff; }

.red { grid-area:red; background:#5f6b3a; color:#ffffff; }
.red .big { font-family:Rockwell, 'Rockwell Nova', 'Roboto Slab', Georgia, serif; font-weight:800; font-size:3.4rem; line-height:1; }
.red .tag { text-transform:uppercase; letter-spacing:0.16em; font-size:11px;
  margin-top:8px; opacity:0.9; }
.yellow { grid-area:yel; background:#b7bca6; color:#141414; }
.blue { grid-area:blu; background:#838875; color:#ffffff; }
.yellow h3,.blue h3 { font-family:Rockwell, 'Rockwell Nova', 'Roboto Slab', Georgia, serif; font-weight:800; font-size:1.05rem;
  margin-bottom:8px; }
.yellow p,.blue p { font-size:0.9rem; opacity:0.92; }

.imga { grid-area:imga; } .imgb { grid-area:imgb; } .imgc { grid-area:imgc; }

.about { grid-area:abt; }
.about h2 { font-family:Rockwell, 'Rockwell Nova', 'Roboto Slab', Georgia, serif; font-weight:800; font-size:1.7rem; margin-bottom:10px; }
.about p { color:#7f7458; max-width:60ch; }

.svc { }
.mond .svc:nth-of-type(8) { grid-area:svc1; }
.mond .svc:nth-of-type(9) { grid-area:svc2; }
.svc h3 { font-family:Rockwell, 'Rockwell Nova', 'Roboto Slab', Georgia, serif; font-weight:800; font-size:1.1rem; margin-bottom:8px; }
.svc p { color:#7f7458; font-size:0.92rem; }

.quote { grid-area:quo; background:#838875; color:#ffffff; }
.quote blockquote { font-family:Rockwell, 'Rockwell Nova', 'Roboto Slab', Georgia, serif; font-weight:700; font-size:clamp(1.2rem,3vw,1.9rem);
  line-height:1.2; }
.quote cite { font-style:normal; margin-top:12px; font-size:12px; letter-spacing:0.12em;
  text-transform:uppercase; opacity:0.85; }

.redsm { grid-area:reds; background:#b7bca6; }

.contact { grid-area:con; }
.contact h2 { font-family:Rockwell, 'Rockwell Nova', 'Roboto Slab', Georgia, serif; font-weight:800; font-size:1.7rem; margin-bottom:8px; }
.contact p { color:#7f7458; margin-bottom:16px; }
.lines { display:flex; flex-wrap:wrap; gap:24px; font-family:Rockwell, 'Rockwell Nova', 'Roboto Slab', Georgia, serif; font-size:1.2rem; }
.lines a:hover { color:#5f6b3a; }
.lines span { color:#7f7458; font-family:Verdana, Geneva, sans-serif; font-size:1rem; }

.foot { grid-area:foot; background:#2b2416; color:#f2ead6; flex-direction:row;
  justify-content:center; text-align:center; font-size:12px; letter-spacing:0.16em;
  text-transform:uppercase; padding:16px; }

@media (max-width:820px){
  .mond{ grid-template-columns:1fr 1fr;
    grid-template-areas:
      "nav nav" "hero hero" "red imga" "yel blu"
      "abt abt" "svc1 svc2" "imgb imgc" "quo quo"
      "reds reds" "con con" "foot foot"; }
}


.xq{box-sizing:border-box;font-family:Verdana, Geneva, sans-serif;color:#2b2416;padding:56px 24px;width:100%}
.xq *{box-sizing:border-box;margin:0}
.xq .xq-wrap{max-width:1060px;margin:0 auto}
.xq h2{font-family:Rockwell, 'Rockwell Nova', 'Roboto Slab', Georgia, serif;font-size:1.7rem;line-height:1.2;margin-bottom:8px}
.xq .xq-kick{display:block;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:#5f6b3a;margin-bottom:10px;font-weight:700}

.xq-strip{padding-left:0;padding-right:0}
.xq-strip .xq-wrap{padding:0 24px}
.xq-striprail{list-style:none;display:flex;gap:12px;overflow-x:auto;padding:14px 24px;scroll-snap-type:x mandatory}
.xq-striprail li{flex:0 0 min(64vw,300px);scroll-snap-align:start}
.xq-striprail img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:0px;display:block}


.xq-hours{border-top:1px solid rgba(43,36,22,0.14)}
.xq-hours-in{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:26px;align-items:start}
.xq-hours address{font-style:normal;color:#7f7458;line-height:1.8;margin-top:8px}
.xq-hourtable{width:100%;border-collapse:collapse}
.xq-hourtable th,.xq-hourtable td{text-align:left;padding:12px 6px;border-bottom:1px solid rgba(43,36,22,0.14)}
.xq-hourtable th{font-family:Rockwell, 'Rockwell Nova', 'Roboto Slab', Georgia, serif}
.xq-hourtable td{color:#5f6b3a;font-weight:700;text-align:right}


/* =====================================================
   DESIGN DNA: luxe-noir
   Whole-page visual system applied over the layout
   archetype. Appended last so it wins the cascade.
   ===================================================== */
html::after{content:'';position:fixed;inset:0;z-index:99990;pointer-events:none;border:none;background:none;border-left:1px solid rgba(95,107,58,.55);border-right:1px solid rgba(95,107,58,.55);margin:0 16px}
h1,h2,h3{font-family:Garamond, 'EB Garamond', 'Times New Roman', serif !important;text-transform:uppercase !important;letter-spacing:.3em !important;font-weight:500 !important}
h2::after{content:'';display:block;width:3.2rem;height:1px;background:#5f6b3a;margin-top:.7rem}
img{filter:grayscale(.35) contrast(1.06);border-radius:0 !important}
a[class*="btn"],button,span[class*="btn"]{border-radius:0 !important;letter-spacing:.28em;text-transform:uppercase;font-size:.78em;border:1px solid #5f6b3a !important;box-shadow:none !important}
div[class*="card"]:not([class*="cards"]),article[class*="card"],a[class*="card"],figure[class*="card"],li[class*="card"]{border-radius:0 !important;border:1px solid rgba(95,107,58,.4) !important;box-shadow:none !important}
