
* { box-sizing:border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; }
body { background:#efebdc; color:#3a3327; font-family:Candara, Optima, 'Segoe UI', sans-serif; font-size:16px;
  line-height:1.55; -webkit-font-smoothing:antialiased; }
img { display:block; max-width:100%; }
a { color:#3a3327; text-decoration:none; }

.modfield { max-width:1160px; margin:0 auto; padding:clamp(16px,3vw,34px);
  display:grid; grid-template-columns:repeat(6,1fr); gap:clamp(10px,1.6vw,20px);
  grid-auto-rows:clamp(120px,15vw,170px);
  background:
    linear-gradient(rgba(58,51,39,0.09) 1px,transparent 1px) 0 0/100% calc((100% )/1),
    linear-gradient(90deg,rgba(58,51,39,0.09) 1px,transparent 1px) 0 0/16.66% 100%; }

.unit { position:relative; background:#e6dece; border:1px solid rgba(58,51,39,0.14);
  border-radius:22px; padding:clamp(16px,2vw,26px); overflow:hidden;
  display:flex; flex-direction:column; justify-content:center; }
.coord { position:absolute; top:8px; left:10px; font-family:'Courier New', Courier, monospace; font-size:10px;
  letter-spacing:0.1em; color:#8d8271; }
.coord.light { color:#f3efe0; mix-blend-mode:difference; }

.u-6x1 { grid-column:span 6; grid-row:span 1; }
.u-6x1.u-foot, .u-6x1.u-nav { grid-row:span 1; }
.u-4x2 { grid-column:span 4; grid-row:span 2; }
.u-4x1 { grid-column:span 4; grid-row:span 1; }
.u-3x2 { grid-column:span 3; grid-row:span 2; }
.u-2x2 { grid-column:span 2; grid-row:span 2; }

/* nav */
.u-nav { flex-direction:row; align-items:center; justify-content:space-between;
  grid-row:span 1; }
.brand { font-family:Candara, Optima, 'Segoe UI', sans-serif; font-weight:800; font-size:19px; }
.u-nav nav a { margin-left:20px; color:#8d8271; font-size:14px; }
.u-nav nav a:hover { color:#a98ab0; }

/* hero */
.u-hero { background:#e6dece; }
.kick { font-family:'Courier New', Courier, monospace; text-transform:uppercase; letter-spacing:0.22em;
  font-size:11px; color:#a98ab0; margin-bottom:14px; }
.u-hero h1 { font-family:Candara, Optima, 'Segoe UI', sans-serif; font-weight:800; line-height:0.96;
  font-size:clamp(2rem,5vw,3.6rem); letter-spacing:-0.02em; }
.dek { color:#8d8271; margin:16px 0 20px; max-width:38ch; }
.btn { align-self:flex-start; background:#a98ab0; color:#141414; font-weight:700;
  padding:12px 22px; border-radius:22px; letter-spacing:0.06em; }
.btn:hover { opacity:0.9; }

/* accent block */
.u-accent { background:#a98ab0; color:#141414; }
.u-accent .coord { color:#141414; opacity:0.7; }
.u-accent .big { font-family:Candara, Optima, 'Segoe UI', sans-serif; font-weight:800; font-size:3rem; line-height:1; }
.u-accent .lbl { font-family:'Courier New', Courier, monospace; font-size:11px; text-transform:uppercase;
  letter-spacing:0.14em; margin-top:6px; }

/* image */
.u-img { padding:0; }
.u-img img { width:100%; height:100%; object-fit:cover; }

/* about */
.u-about h2, .head .mono { font-family:Candara, Optima, 'Segoe UI', sans-serif; font-weight:800; }
.u-about h2 { font-size:1.4rem; margin-bottom:10px; }
.u-about p { color:#8d8271; font-size:0.95rem; }
.head { background:#efebdc; }
.head .mono { font-family:Candara, Optima, 'Segoe UI', sans-serif; font-size:1.5rem; line-height:1.05; }

/* service units */
.u-2x2 h3 { font-family:Candara, Optima, 'Segoe UI', sans-serif; font-weight:700; font-size:1.05rem; margin-bottom:8px; }
.u-2x2 p { color:#8d8271; font-size:0.9rem; }

/* quote */
.u-quote blockquote { font-family:Candara, Optima, 'Segoe UI', sans-serif; font-weight:700; font-size:clamp(1.1rem,2.4vw,1.6rem);
  line-height:1.2; }
.u-quote cite { font-style:normal; color:#8d8271; font-family:'Courier New', Courier, monospace; font-size:11px;
  letter-spacing:0.12em; text-transform:uppercase; margin-top:10px; }

/* contact */
.ct { display:flex; justify-content:space-between; gap:24px; flex-wrap:wrap; width:100%; }
.u-contact h2 { font-family:Candara, Optima, 'Segoe UI', sans-serif; font-weight:800; font-size:1.5rem; margin-bottom:6px; }
.u-contact p { color:#8d8271; }
.ctlines { display:flex; flex-direction:column; gap:8px; font-family:Candara, Optima, 'Segoe UI', sans-serif;
  font-size:1.15rem; text-align:right; }
.ctlines a:hover { color:#a98ab0; }
.ctlines span { color:#8d8271; font-family:Candara, Optima, 'Segoe UI', sans-serif; font-size:0.95rem; }

.u-foot { background:#3a3327; color:#f3efe0; align-items:center; text-align:center;
  flex-direction:row; justify-content:center; font-family:'Courier New', Courier, monospace; font-size:12px;
  letter-spacing:0.14em; text-transform:uppercase; }

@media (max-width:860px){
  .modfield{ grid-template-columns:repeat(2,1fr); grid-auto-rows:minmax(120px,auto);
    background:none; }
  .u-6x1,.u-4x2,.u-4x1,.u-3x2,.u-2x2{ grid-column:span 2; grid-row:auto; }
  .u-nav{ }
  .ctlines{ text-align:left; }
}


.xq{box-sizing:border-box;font-family:Candara, Optima, 'Segoe UI', sans-serif;color:#3a3327;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:Candara, Optima, 'Segoe UI', sans-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:#a98ab0;margin-bottom:10px;font-weight:700}

.xq-hours{border-top:1px solid rgba(58,51,39,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:#8d8271;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(58,51,39,0.14)}
.xq-hourtable th{font-family:Candara, Optima, 'Segoe UI', sans-serif}
.xq-hourtable td{color:#a98ab0;font-weight:700;text-align:right}


.xq-badges{padding:26px 24px;border-top:1px solid rgba(58,51,39,0.14);border-bottom:1px solid rgba(58,51,39,0.14);background:rgba(58,51,39,0.05)}
.xq-badge-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px}
.xq-badgehead{font-family:Candara, Optima, 'Segoe UI', sans-serif;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;margin-right:8px}
.xq-badge{border:1.5px solid #a98ab0;color:#a98ab0;border-radius:999px;padding:7px 16px;font-size:.8rem;font-weight:700;letter-spacing:.04em}


.xq-steplist{counter-reset:xqs;list-style:none;padding:0;margin-top:22px;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px}
.xq-step{counter-increment:xqs;position:relative;padding:18px 18px 18px 20px;border-left:3px solid #a98ab0;background:rgba(58,51,39,0.05);border-radius:0 20px 20px 0}
.xq-step::before{content:"0" counter(xqs);display:block;font-family:Candara, Optima, 'Segoe UI', sans-serif;font-size:.8rem;letter-spacing:.1em;color:#a98ab0;font-weight:800;margin-bottom:8px}
.xq-step h3{font-family:Candara, Optima, 'Segoe UI', sans-serif;font-size:1.02rem;margin-bottom:6px}
.xq-step p{font-size:.9rem;color:#8d8271}


/* =====================================================
   DESIGN DNA: brutal-ink
   Whole-page visual system applied over the layout
   archetype. Appended last so it wins the cascade.
   ===================================================== */
*{border-radius:0 !important}
h1,h2,h3{font-family:'Arial Black', 'Arial Bold', Arial, sans-serif !important;text-transform:uppercase !important;letter-spacing:-0.01em !important;font-weight:900 !important}
img{filter:grayscale(1) contrast(1.18);border:3px solid #3a3327 !important;box-shadow:8px 8px 0 #3a3327 !important}
a[class*="btn"],button,span[class*="btn"]{border-radius:0 !important;border:3px solid #3a3327 !important;box-shadow:5px 5px 0 #3a3327 !important;text-transform:uppercase;letter-spacing:.08em;font-weight:800}
div[class*="card"]:not([class*="cards"]),article[class*="card"],a[class*="card"],figure[class*="card"],li[class*="card"]{border:3px solid #3a3327 !important;box-shadow:8px 8px 0 #3a3327 !important}
html::after{content:'';position:fixed;inset:0;z-index:99990;pointer-events:none;border:6px solid #3a3327;background:none;}
