
* { box-sizing:border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; }
body { background:#e7e0d0; color:#241f18; font-family:Georgia, 'Times New Roman', serif; font-size:17px;
  line-height:1.6; -webkit-font-smoothing:antialiased; overflow-x:hidden; }
img { display:block; max-width:100%; }
a { color:#241f18; text-decoration:none; }
.broken { max-width:1160px; margin:0 auto; padding:0 clamp(16px,5vw,52px) 70px;
  position:relative; }

.bnav { display:flex; justify-content:space-between; align-items:center;
  padding:24px 0; position:relative; z-index:5; }
.brand { font-family:Rockwell, 'Rockwell Nova', 'Roboto Slab', Georgia, serif; font-weight:800; font-size:20px; }
.bnav nav a { margin-left:22px; color:#847c6c; font-size:14px; }
.bnav nav a:hover { color:#b8412e; }

/* hero */
.bhero { position:relative; display:grid; grid-template-columns:1.15fr 0.85fr;
  padding:clamp(30px,6vw,80px) 0; align-items:center; }
.ghostnum { position:absolute; top:-3%; left:-2%; font-family:Rockwell, 'Rockwell Nova', 'Roboto Slab', Georgia, serif;
  font-weight:800; font-size:clamp(12rem,34vw,26rem); line-height:0.8; color:rgba(36,31,24,0.06);
  z-index:0; pointer-events:none; letter-spacing:-0.04em; }
.htext { position:relative; z-index:2; }
.kick { text-transform:uppercase; letter-spacing:0.28em; font-size:12px;
  color:#b8412e; margin-bottom:16px; }
.bhero h1 { font-family:Rockwell, 'Rockwell Nova', 'Roboto Slab', Georgia, serif; font-weight:800; line-height:0.94;
  font-size:clamp(2.6rem,8vw,5.4rem); letter-spacing:-0.03em; }
.dek { color:#847c6c; margin:20px 0 26px; max-width:34ch; }
.acts { display:flex; gap:14px; }
.btn { background:#b8412e; color:#ffffff; font-weight:700; padding:14px 26px;
  border-radius:2px; }
.btn2 { border:2px solid #241f18; padding:12px 24px; font-weight:700; border-radius:2px; }
.hslab { position:relative; z-index:3; margin-left:-8%; transform:rotate(2deg);
  box-shadow:0 24px 60px rgba(36,31,24,0.16); border-radius:2px; overflow:hidden; }
.hslab img { width:100%; height:clamp(320px,42vw,520px); object-fit:cover; }
.hslab .cap { position:absolute; bottom:12px; left:12px; font-family:'Courier New', Courier, monospace;
  font-size:11px; background:#e7e0d0; color:#241f18; padding:4px 10px; border-radius:4px; }

/* work: overlapping slabs */
.bwork { position:relative; display:grid; grid-template-columns:repeat(12,1fr);
  align-items:center; padding:clamp(40px,8vw,90px) 0; }
.slab { border-radius:2px; overflow:hidden; box-shadow:0 18px 44px rgba(36,31,24,0.16); z-index:2; }
.slab img { width:100%; height:100%; object-fit:cover; }
.slab-a { grid-column:1 / 7; grid-row:1; transform:rotate(-2deg); }
.slab-a img { height:clamp(240px,32vw,400px); }
.bcopy { grid-column:5 / 12; grid-row:1; z-index:4; background:#f0e9d8;
  padding:clamp(24px,4vw,40px); border-radius:2px; box-shadow:0 20px 50px rgba(36,31,24,0.16);
  border:1px solid rgba(36,31,24,0.14); margin-top:60px; }
.bcopy h2 { font-family:Rockwell, 'Rockwell Nova', 'Roboto Slab', Georgia, serif; font-weight:800; font-size:1.7rem; margin-bottom:12px; }
.bcopy p { color:#847c6c; }
.slab-b { grid-column:9 / 13; grid-row:1; transform:rotate(3deg) translateY(-40px);
  z-index:1; }
.slab-b img { height:clamp(200px,26vw,320px); }

/* services staggered */
.bsvc { padding:clamp(40px,7vw,90px) 0 30px; }
.sech { font-family:Rockwell, 'Rockwell Nova', 'Roboto Slab', Georgia, serif; font-weight:800; font-size:clamp(1.6rem,4vw,2.6rem);
  margin-bottom:40px; }
.sech span { color:#847c6c; font-weight:400; }
.tiles { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; align-items:start; }
.tile { background:#f0e9d8; border:1px solid rgba(36,31,24,0.14); border-radius:2px;
  padding:24px; box-shadow:0 12px 30px rgba(36,31,24,0.16); }
.tile .tno { font-family:'Courier New', Courier, monospace; font-size:12px; color:#b8412e; letter-spacing:0.14em; }
.tile h3 { font-family:Rockwell, 'Rockwell Nova', 'Roboto Slab', Georgia, serif; font-weight:700; font-size:1.1rem; margin:10px 0 8px; }
.tile p { color:#847c6c; font-size:0.94rem; }
.o-up { transform:translateY(-26px); } .o-up2 { transform:translateY(-46px); }
.o-down { transform:translateY(20px); } .o-down2 { transform:translateY(40px); }
.r-l { rotate:-1.5deg; } .r-r { rotate:1.5deg; } .r-0 { rotate:0deg; }

/* quote */
.bquote { position:relative; text-align:center; padding:clamp(50px,9vw,110px) 0;
  overflow:hidden; }
.bquote blockquote { font-family:Rockwell, 'Rockwell Nova', 'Roboto Slab', Georgia, serif; font-weight:800;
  font-size:clamp(1.6rem,5vw,3.2rem); line-height:1.1; max-width:22ch; margin:0 auto;
  position:relative; z-index:2; }
.bquote cite { display:block; font-style:normal; margin-top:20px; font-family:'Courier New', Courier, monospace;
  font-size:12px; letter-spacing:0.16em; text-transform:uppercase; color:#847c6c;
  position:relative; z-index:2; }
.ghostnum.q { top:-10%; left:50%; transform:translateX(-50%);
  font-size:clamp(16rem,44vw,34rem); }

/* contact */
.bcontact { position:relative; display:grid; grid-template-columns:1.2fr 0.8fr;
  align-items:center; padding:clamp(30px,5vw,60px) 0; }
.cpanel { position:relative; z-index:3; background:#b8412e; color:#ffffff;
  padding:clamp(28px,5vw,52px); border-radius:2px; box-shadow:0 24px 60px rgba(36,31,24,0.16);
  transform:rotate(-1deg); }
.cpanel h2 { font-family:Rockwell, 'Rockwell Nova', 'Roboto Slab', Georgia, serif; font-weight:800; font-size:1.9rem; margin-bottom:8px; }
.cpanel p { opacity:0.9; margin-bottom:20px; }
.clines { display:flex; flex-direction:column; gap:10px; font-family:Rockwell, 'Rockwell Nova', 'Roboto Slab', Georgia, serif; font-size:1.2rem; }
.clines a, .clines span { color:#ffffff; }
.clines span { opacity:0.85; font-family:Georgia, 'Times New Roman', serif; font-size:1rem; }
.cslab { margin-left:-10%; z-index:1; transform:rotate(2.5deg); border-radius:2px;
  overflow:hidden; box-shadow:0 18px 44px rgba(36,31,24,0.16); }
.cslab img { width:100%; height:clamp(260px,30vw,380px); object-fit:cover; }

.bfoot { text-align:center; padding-top:50px; color:#847c6c; font-family:'Courier New', Courier, monospace;
  font-size:12px; letter-spacing:0.14em; text-transform:uppercase; }

@media (max-width:860px){
  .bhero{ grid-template-columns:1fr; gap:30px; }
  .hslab{ margin-left:0; transform:none; }
  .bwork{ display:flex; flex-direction:column; gap:24px; }
  .slab-a,.slab-b,.bcopy{ transform:none; rotate:0deg; margin-top:0; grid-column:auto; }
  .tiles{ grid-template-columns:1fr; }
  .tile,.o-up,.o-up2,.o-down,.o-down2{ transform:none; rotate:0deg; }
  .bcontact{ grid-template-columns:1fr; gap:24px; }
  .cslab{ margin-left:0; transform:none; }
  .cpanel{ transform:none; }
}


.xq{box-sizing:border-box;font-family:Georgia, 'Times New Roman', serif;color:#241f18;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:#b8412e;margin-bottom:10px;font-weight:700}

.xq-tl-list{list-style:none;padding:0;margin-top:24px;position:relative;border-left:2px solid rgba(36,31,24,0.14)}
.xq-tl-item{position:relative;padding:0 0 26px 26px}
.xq-tl-item::before{content:"";position:absolute;left:-7px;top:4px;width:12px;height:12px;border-radius:50%;background:#b8412e;box-shadow:0 0 0 4px rgba(36,31,24,0.05)}
.xq-tl-item time{font-family:Rockwell, 'Rockwell Nova', 'Roboto Slab', Georgia, serif;font-weight:800;color:#b8412e;display:block;margin-bottom:4px}
.xq-tl-item p{color:#847c6c;max-width:58ch}


.xq-promo{padding:34px 24px}
.xq-promo-card{border:2px dashed #b8412e;border-radius:2px;padding:26px;display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;background:rgba(36,31,24,0.05)}
.xq-promo-tag{background:#b8412e;color:#ffffff;font-family:Rockwell, 'Rockwell Nova', 'Roboto Slab', Georgia, serif;font-weight:800;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;padding:8px 14px;border-radius:999px}
.xq-promo-card p{flex:1 1 260px;font-size:1.02rem}
.xq-promo-card a{color:#b8412e;font-weight:700;text-decoration:none;white-space:nowrap}
.xq-promo-card a:hover{text-decoration:underline}


.xq-quoterail{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}
.xq-quote{border:1px solid rgba(36,31,24,0.14);border-radius:2px;padding:22px;background:#f0e9d8;position:relative}
.xq-quote::before{content:"\201C";position:absolute;top:-4px;left:14px;font-family:Rockwell, 'Rockwell Nova', 'Roboto Slab', Georgia, serif;font-size:3rem;color:#b8412e;opacity:.5}
.xq-quote p{font-style:italic;margin:10px 0 12px;line-height:1.55}
.xq-quote cite{font-style:normal;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:#847c6c}


/* =====================================================
   DESIGN DNA: scandi-light
   Whole-page visual system applied over the layout
   archetype. Appended last so it wins the cascade.
   ===================================================== */
img,a[class*="btn"],button,span[class*="btn"],div[class*="card"]:not([class*="cards"]),article[class*="card"],a[class*="card"],figure[class*="card"],li[class*="card"]{box-shadow:none !important}
html::after{content:'';position:fixed;inset:0;z-index:99990;pointer-events:none;border:none;background:none;background:linear-gradient(90deg,#b8412e,#b8412e);background-size:100% 5px;background-repeat:no-repeat;background-position:top}
h1,h2,h3{letter-spacing:-0.025em !important;font-weight:700 !important}
img{border-radius:10px !important;filter:saturate(.92) brightness(1.03)}
a[class*="btn"],button,span[class*="btn"]{border-radius:8px !important;border:none !important;background:#b8412e !important;color:#ffffff !important;font-weight:600}
div[class*="card"]:not([class*="cards"]),article[class*="card"],a[class*="card"],figure[class*="card"],li[class*="card"]{border-radius:12px !important;border:1px solid rgba(36,31,24,.12) !important}
