/* Shared styles for RMX service pages */
:root{
  --bg: #F3EEE5;
  --fg: #0E0E0C;
  --muted: #6b665c;
  --line: #cfc7b8;
  --card: #ffffff;
  --accent: oklch(0.90 0.19 100); /* construction yellow */
  --soil: #2a2723;
  --clay: #b8651f;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family: 'Inter', system-ui, sans-serif;
  background: var(--bg);
  color: var(--fg);
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
  line-height:1.5;
}
.mono{font-family:'JetBrains Mono',ui-monospace,monospace;letter-spacing:0.02em}
.display{font-family:'Archivo Black', 'Archivo', sans-serif; letter-spacing:-0.02em; line-height:0.9}
.hair{border:0;border-top:1px solid var(--line);margin:0}
button{font-family:inherit}
a{color:inherit}
::selection{background:var(--accent);color:#0E0E0C}

.wrap{max-width:1440px;margin:0 auto}

/* header */
.site-header{position:sticky;top:0;z-index:60;background:rgba(243,238,229,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;padding:14px 28px}
.brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--fg)}
.brand-mark{width:42px;height:42px;background:#0E0E0C;border-radius:6px;display:grid;place-items:center;position:relative;overflow:hidden}
.brand-mark::before{content:"";position:absolute;inset:0;background:var(--accent);clip-path:polygon(0 55%,100% 20%,100% 100%,0 100%)}
.brand-mark span{position:relative;color:var(--accent);font-family:'Archivo Black';font-size:14px;mix-blend-mode:difference}
.brand-wm{font-family:'Archivo Black';font-size:18px;line-height:.9}
.brand-wm small{font-size:11px;letter-spacing:.18em;font-family:'JetBrains Mono';color:var(--muted);display:block;margin-top:3px}
.brand-tag{font-family:'JetBrains Mono';font-size:11px;text-transform:uppercase;letter-spacing:.18em;color:var(--muted)}
.nav-links{display:flex;align-items:center;gap:28px;font-family:'JetBrains Mono'}
.nav-links a{text-decoration:none;font-size:12px;text-transform:uppercase;letter-spacing:.14em}
.nav-links a:hover{color:var(--clay)}
.cta-pill{text-decoration:none;padding:10px 16px;border:1.5px solid #0E0E0C;border-radius:999px;background:var(--accent);font-family:'Archivo Black';font-size:13px;letter-spacing:.02em;color:#0E0E0C}
.cta-pill-mob{display:none;text-decoration:none;padding:8px 14px;border:1.5px solid #0E0E0C;border-radius:999px;background:var(--accent);font-family:'Archivo Black';font-size:12px;letter-spacing:.02em;color:#0E0E0C}

/* breadcrumbs */
.crumbs{padding:24px 28px;font-family:'JetBrains Mono';font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line)}
.crumbs a{text-decoration:none;color:var(--muted)}
.crumbs a:hover{color:var(--fg)}
.crumbs span.sep{opacity:.4;margin:0 10px}
.crumbs span.cur{color:var(--fg)}

/* hero */
.svc-hero{display:grid;grid-template-columns:1.1fr .9fr;min-height:calc(100vh - 74px - 46px);border-bottom:1px solid var(--line)}
.svc-hero-text{padding:72px 56px;display:flex;flex-direction:column;justify-content:space-between;
  background-image:linear-gradient(to right, rgba(14,14,12,.06) 1px, transparent 1px);
  background-size: calc(100%/12) 100%;
}
.svc-hero-img{position:relative;border-left:1px solid var(--line);background-size:cover;background-position:center}
.svc-hero-img::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg, rgba(14,14,12,.06) 0 2px, transparent 2px 18px);pointer-events:none}
.svc-seclabel{display:inline-flex;align-items:center;gap:.6rem;font-family:'JetBrains Mono';font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:var(--muted)}
.svc-seclabel::before{content:"";width:28px;height:1px;background:var(--fg);display:inline-block}
h1.svc-title{font-family:'Archivo Black';font-size:clamp(56px,8.5vw,140px);letter-spacing:-0.03em;line-height:.92;margin:26px 0 0}
h1.svc-title .amb{color:var(--clay)}
.svc-lede{max-width:540px;margin-top:32px;font-size:19px;line-height:1.5;color:var(--soil)}
.hero-ctas{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:40px}

/* buttons */
.btn-amber{background:var(--accent);color:#0E0E0C;border:1.5px solid #0E0E0C;padding:18px 28px;font-size:15px;font-family:'Archivo Black';text-transform:uppercase;letter-spacing:.02em;box-shadow:6px 6px 0 0 #0E0E0C;cursor:pointer;transition:transform .15s, box-shadow .15s;text-decoration:none;display:inline-block}
.btn-amber:hover{transform:translate(-2px,-2px);box-shadow:8px 8px 0 0 #0E0E0C}
.btn-amber:active{transform:translate(2px,2px);box-shadow:2px 2px 0 0 #0E0E0C}
.btn-ghost{padding:18px 28px;font-size:15px;font-family:'Archivo Black';text-transform:uppercase;letter-spacing:.02em;border:1.5px solid #0E0E0C;background:transparent;color:#0E0E0C;cursor:pointer;transition:background .2s, color .2s;text-decoration:none;display:inline-block}
.btn-ghost:hover{background:#0E0E0C;color:var(--accent)}

/* chips */
.chip{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .7rem;border:1px solid var(--line);border-radius:999px;font-family:'JetBrains Mono';font-size:11px;text-transform:uppercase;letter-spacing:.08em;background:rgba(255,255,255,.5);backdrop-filter:blur(6px)}
.chip.dark{background:#0E0E0C;color:var(--accent);border-color:#0E0E0C}

/* section */
.sec{padding:96px 28px;border-bottom:1px solid var(--line)}
.sec.dark{background:#17140f;color:#F3EEE5;border-color:#0E0E0C}
.sec h2{font-family:'Archivo Black';letter-spacing:-0.02em;line-height:.92;font-size:clamp(44px,6.5vw,92px);margin:14px 0 40px}

/* what-we-do list */
.wwd{display:grid;grid-template-columns:repeat(2,1fr);gap:0;border-top:1.5px solid #0E0E0C;border-bottom:1.5px solid #0E0E0C}
.wwd-item{padding:28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;gap:20px;align-items:flex-start}
.wwd-item:nth-child(2n){border-right:0}
.wwd-item:nth-last-child(-n+2){border-bottom:0}
.wwd-num{font-family:'JetBrains Mono';font-size:11px;color:var(--muted);letter-spacing:.16em;min-width:32px;padding-top:6px}
.wwd-title{font-family:'Archivo Black';font-size:22px;line-height:1;margin:0 0 8px}
.wwd-desc{font-size:15px;color:var(--soil);margin:0}

/* process steps */
.proc{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line)}
.proc-step{padding:40px 24px;border-right:1px solid var(--line)}
.proc-step:last-child{border-right:0}
.proc-num{font-family:'Archivo Black';font-size:90px;line-height:.8;-webkit-text-stroke:1.5px #F3EEE5;color:transparent}
.sec.dark .proc-num{-webkit-text-stroke:1.5px #F3EEE5}
.sec:not(.dark) .proc-num{-webkit-text-stroke:1.5px #0E0E0C}
.proc-title{font-family:'Archivo Black';font-size:20px;margin:18px 0 8px}
.proc-desc{font-size:14px;color:var(--soil);opacity:.95;margin:0}
.sec.dark .proc-desc{color:#c9c3b6;opacity:1}

/* gallery row */
.gal{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.gal-item{display:flex;flex-direction:column;gap:12px}
.gal-img{aspect-ratio:4/3;background-size:cover;background-position:center;border:1px solid var(--line)}
.sec.dark .gal-img{border-color:#2a2723}
.gal-cap{font-family:'JetBrains Mono';font-size:11px;letter-spacing:.14em;text-transform:uppercase;opacity:.7}
.gal-desc{font-size:14px;opacity:.85;margin:0}

/* faq */
.faq details{border-bottom:1px solid var(--line);padding:20px 0;cursor:pointer}
.faq details[open] summary .q-arrow{transform:rotate(45deg)}
.faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;font-family:'Archivo Black';font-size:22px;line-height:1.2}
.faq summary::-webkit-details-marker{display:none}
.q-arrow{font-family:'Archivo Black';font-size:24px;transition:transform .25s}
.faq-body{padding-top:14px;font-size:15px;color:var(--soil);line-height:1.6;max-width:820px}

/* related services */
.related{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.related a{text-decoration:none;color:inherit;padding:32px 28px;border-right:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;transition:background .15s}
.related a:last-child{border-right:0}
.related a:hover{background:var(--accent)}
.related-title{font-family:'Archivo Black';font-size:26px}
.related-arr{font-family:'Archivo Black';font-size:22px}

/* big CTA */
.big-cta{background:#0E0E0C;color:#F3EEE5;padding:96px 28px}
.big-cta h2{font-family:'Archivo Black';font-size:clamp(48px,8vw,120px);letter-spacing:-0.03em;line-height:.92;margin:0 0 32px}
.big-cta h2 .amb{color:var(--accent)}
.big-cta .btn-amber{margin-right:16px}
.big-cta .phone{font-family:'JetBrains Mono';font-size:14px;text-decoration:underline}

/* footer */
.site-footer{background:var(--bg);padding:56px 28px 28px}
.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px;border-bottom:1px solid var(--line);padding-bottom:40px}
.foot-head{font-family:'JetBrains Mono';font-size:11px;letter-spacing:.16em;color:var(--muted);margin-bottom:12px;text-transform:uppercase}
.foot-link{display:inline-block;font-size:14px;padding:3px 0;text-decoration:none;color:var(--fg);border-bottom:1px solid transparent;transition:border-color .15s}
.foot-link:hover{border-bottom-color:var(--fg)}
.foot-wm{font-family:'Archivo Black';font-size:clamp(80px,18vw,240px);letter-spacing:-0.04em;color:#0E0E0C;line-height:.9;margin:20px 0 0}
.foot-wm .amb{color:var(--accent)}
.foot-legal{display:flex;justify-content:space-between;margin-top:12px;font-family:'JetBrains Mono';font-size:11px}

/* responsive */
@media (max-width: 900px){
  .nav-inner{padding:14px 20px}
  .svc-hero{grid-template-columns:1fr;min-height:auto}
  .svc-hero-text{padding:48px 22px}
  .svc-hero-img{min-height:300px;border-left:0;border-top:1px solid var(--line)}
  .svc-title{font-size:clamp(56px,12vw,96px) !important}
  .wwd{grid-template-columns:1fr}
  .wwd-item{border-right:0}
  .proc{grid-template-columns:1fr 1fr}
  .proc-step:nth-child(2){border-right:0}
  .proc-step:nth-child(1),.proc-step:nth-child(2){border-bottom:1px solid var(--line)}
  .related{grid-template-columns:1fr}
  .related a{border-right:0;border-bottom:1px solid var(--line)}
  .related a:last-child{border-bottom:0}
  .gal{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr 1fr;gap:20px}
  .nav-links{display:none}
  .brand-tag{display:none}
  .cta-pill-mob{display:inline-flex;align-items:center}
  .sec{padding:64px 22px}
  .crumbs{padding:14px 22px;font-size:11px}
  .hero-ctas{flex-direction:column;align-items:stretch}
  .hero-ctas a{text-align:center}
  .foot-wm{font-size:clamp(56px,16vw,140px) !important}
}
@media (max-width: 540px){
  .proc{grid-template-columns:1fr}
  .proc-step{border-right:0 !important;border-bottom:1px solid var(--line)}
  .proc-step:last-child{border-bottom:0}
  .foot-grid{grid-template-columns:1fr}
  .svc-hero-text{padding:40px 20px}
  .sec{padding:48px 20px}
  .sec-title{font-size:clamp(38px,9vw,60px) !important}
}
