
* { box-sizing:border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; }
body { background:#2b241c; color:#f2e6cf; font-family:'Trebuchet MS', Tahoma, sans-serif; font-size:17px;
  line-height:1.6; -webkit-font-smoothing:antialiased; overflow-x:hidden; }
img { display:block; max-width:100%; }
a { color:#f2e6cf; 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:'Gill Sans', 'Gill Sans MT', Calibri, 'Segoe UI', sans-serif; font-weight:800; font-size:20px; }
.bnav nav a { margin-left:22px; color:#a8977a; font-size:14px; }
.bnav nav a:hover { color:#e0953a; }

/* 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:'Gill Sans', 'Gill Sans MT', Calibri, 'Segoe UI', sans-serif;
  font-weight:800; font-size:clamp(12rem,34vw,26rem); line-height:0.8; color:rgba(242,230,207,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:#e0953a; margin-bottom:16px; }
.bhero h1 { font-family:'Gill Sans', 'Gill Sans MT', Calibri, 'Segoe UI', sans-serif; font-weight:800; line-height:0.94;
  font-size:clamp(2.6rem,8vw,5.4rem); letter-spacing:-0.03em; }
.dek { color:#a8977a; margin:20px 0 26px; max-width:34ch; }
.acts { display:flex; gap:14px; }
.btn { background:#e0953a; color:#141414; font-weight:700; padding:14px 26px;
  border-radius:20px; }
.btn2 { border:2px solid #f2e6cf; padding:12px 24px; font-weight:700; border-radius:20px; }
.hslab { position:relative; z-index:3; margin-left:-8%; transform:rotate(2deg);
  box-shadow:0 24px 60px rgba(242,230,207,0.16); border-radius:20px; 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:#2b241c; color:#f2e6cf; 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:20px; overflow:hidden; box-shadow:0 18px 44px rgba(242,230,207,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:#3a3125;
  padding:clamp(24px,4vw,40px); border-radius:20px; box-shadow:0 20px 50px rgba(242,230,207,0.16);
  border:1px solid rgba(242,230,207,0.14); margin-top:60px; }
.bcopy h2 { font-family:'Gill Sans', 'Gill Sans MT', Calibri, 'Segoe UI', sans-serif; font-weight:800; font-size:1.7rem; margin-bottom:12px; }
.bcopy p { color:#a8977a; }
.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:'Gill Sans', 'Gill Sans MT', Calibri, 'Segoe UI', sans-serif; font-weight:800; font-size:clamp(1.6rem,4vw,2.6rem);
  margin-bottom:40px; }
.sech span { color:#a8977a; font-weight:400; }
.tiles { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; align-items:start; }
.tile { background:#3a3125; border:1px solid rgba(242,230,207,0.14); border-radius:20px;
  padding:24px; box-shadow:0 12px 30px rgba(242,230,207,0.16); }
.tile .tno { font-family:'Courier New', Courier, monospace; font-size:12px; color:#e0953a; letter-spacing:0.14em; }
.tile h3 { font-family:'Gill Sans', 'Gill Sans MT', Calibri, 'Segoe UI', sans-serif; font-weight:700; font-size:1.1rem; margin:10px 0 8px; }
.tile p { color:#a8977a; 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:'Gill Sans', 'Gill Sans MT', Calibri, 'Segoe UI', sans-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:#a8977a;
  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:#e0953a; color:#141414;
  padding:clamp(28px,5vw,52px); border-radius:20px; box-shadow:0 24px 60px rgba(242,230,207,0.16);
  transform:rotate(-1deg); }
.cpanel h2 { font-family:'Gill Sans', 'Gill Sans MT', Calibri, 'Segoe UI', sans-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:'Gill Sans', 'Gill Sans MT', Calibri, 'Segoe UI', sans-serif; font-size:1.2rem; }
.clines a, .clines span { color:#141414; }
.clines span { opacity:0.85; font-family:'Trebuchet MS', Tahoma, sans-serif; font-size:1rem; }
.cslab { margin-left:-10%; z-index:1; transform:rotate(2.5deg); border-radius:20px;
  overflow:hidden; box-shadow:0 18px 44px rgba(242,230,207,0.16); }
.cslab img { width:100%; height:clamp(260px,30vw,380px); object-fit:cover; }

.bfoot { text-align:center; padding-top:50px; color:#a8977a; 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:'Trebuchet MS', Tahoma, sans-serif;color:#f2e6cf;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:'Gill Sans', 'Gill Sans MT', Calibri, '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:#e0953a;margin-bottom:10px;font-weight:700}

.xq-faq-list{margin-top:18px;border-top:1px solid rgba(242,230,207,0.14)}
.xq-faq-item{border-bottom:1px solid rgba(242,230,207,0.14);padding:4px 0}
.xq-faq-item summary{cursor:pointer;padding:14px 4px;font-weight:700;font-family:'Gill Sans', 'Gill Sans MT', Calibri, 'Segoe UI', sans-serif;list-style-position:inside}
.xq-faq-item summary::marker{color:#e0953a}
.xq-faq-item p{padding:0 4px 16px;color:#a8977a;max-width:64ch}


.xq-teamgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:20px;margin-top:22px}
.xq-person img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:20px;display:block;filter:saturate(.9)}
.xq-person figcaption{padding-top:10px}
.xq-person strong{display:block;font-family:'Gill Sans', 'Gill Sans MT', Calibri, 'Segoe UI', sans-serif}
.xq-person span{font-size:.82rem;color:#a8977a}


.xq-checklist{list-style:none;padding:0;margin-top:20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px 26px}
.xq-checklist li{position:relative;padding:10px 0 10px 32px;border-bottom:1px dashed rgba(242,230,207,0.14)}
.xq-checklist li::before{content:"\2713";position:absolute;left:0;top:8px;width:22px;height:22px;line-height:22px;text-align:center;border-radius:50%;background:#e0953a;color:#141414;font-size:.75rem;font-weight:800}


/* =====================================================
   DESIGN DNA: duotone-pop
   Whole-page visual system applied over the layout
   archetype. Appended last so it wins the cascade.
   ===================================================== */
img{filter:grayscale(1) sepia(1) hue-rotate(354deg) saturate(2.6) contrast(.95) !important;border-radius:0 !important}
html::before{content:'';position:fixed;inset:0;z-index:99980;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='420' height='420'%3E%3Ccircle cx='330' cy='90' r='150' fill='%23e0953a'/%3E%3C/svg%3E");opacity:.08;}
h1,h2,h3{font-family:'Arial Black', 'Arial Bold', Arial, sans-serif !important;text-transform:uppercase !important;letter-spacing:-0.015em !important;font-weight:900 !important}
a[class*="btn"],button,span[class*="btn"]{border-radius:0 !important;background:#e0953a !important;color:#141414 !important;border:none !important;font-weight:900;text-transform:uppercase;box-shadow:-6px 6px 0 rgba(245,235,217,.85) !important}
div[class*="card"]:not([class*="cards"]),article[class*="card"],a[class*="card"],figure[class*="card"],li[class*="card"]{border-radius:0 !important}
html::after{content:'';position:fixed;inset:0;z-index:99990;pointer-events:none;border:none;background:none;background:linear-gradient(90deg,#e0953a 0 33%,transparent 33%);background-size:100% 8px;background-repeat:no-repeat;background-position:bottom}
