/* =====================================================================
   Raider Site Services — site-wide design layer (rsx-site v1, Oct 2026)
   Loaded AFTER each page's inline <style>. Scoped to body.rsx-site so it
   only applies to pages the build script has upgraded.
   Matches the approved /demolition pricing + FAQ design.
   ===================================================================== */
body.rsx-site{
  --rs-ink:#1A1917; --rs-ink2:#34312E; --rs-text:#4A4743; --rs-mut:#83868E;
  --rs-or:#F66D1E; --rs-or-d:#E05A12; --rs-amb:#F79463; --rs-yel:#F6B93B;
  --rs-line:#E7E3DE; --rs-wash:#F8F6F3; --rs-peach:#FFF6EF;
  --rs-glass:rgba(255,255,255,.82);
  --rs-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 18px 40px -18px rgba(26,25,23,.28),0 2px 6px rgba(26,25,23,.05);
  --rs-shadow-h:0 1px 0 rgba(255,255,255,.9) inset,0 28px 54px -20px rgba(26,25,23,.35),0 2px 6px rgba(26,25,23,.05);
  --rs-ease:cubic-bezier(.2,.7,.2,1);
}

/* ---------- section bands: white-dominant, alternating soft tints ---------- */
body.rsx-site .sec{position:relative;overflow:hidden}
body.rsx-site .sec>.wrap{position:relative;z-index:1}
body.rsx-site .sec.light{background:var(--rs-wash)}
body.rsx-site .sec.light::before,body.rsx-site .sec.navy::before{content:"";position:absolute;z-index:0;width:620px;height:620px;left:-220px;top:-180px;border-radius:50%;filter:blur(80px);pointer-events:none;background:radial-gradient(circle,rgba(246,109,30,.13),transparent 65%)}
body.rsx-site .sec.light::after,body.rsx-site .sec.navy::after{content:"";position:absolute;z-index:0;width:560px;height:560px;right:-200px;bottom:-220px;border-radius:50%;filter:blur(80px);pointer-events:none;background:radial-gradient(circle,rgba(246,185,59,.15),transparent 65%)}
/* former navy bands become a warm light band (dark is kept for the final CTA only) */
body.rsx-site .sec.navy{background:linear-gradient(180deg,var(--rs-peach) 0%,#FFFDFB 100%);color:var(--rs-text)}
body.rsx-site .sec.navy h2,body.rsx-site .sec.navy h3{color:var(--rs-ink)}
body.rsx-site .sec.navy .sec-head p{color:var(--rs-text)}
body.rsx-site .sec.navy .checks li{color:var(--rs-text)}
body.rsx-site .sec.navy .checks li::before{color:var(--rs-or-d)}
body.rsx-site .sec.navy .faq details{background:#fff;border-color:var(--rs-line)}
body.rsx-site .sec.navy .faq summary{color:var(--rs-ink)}
body.rsx-site .sec.navy .faq .a{color:var(--rs-text)}
body.rsx-site .sec.navy .mini{background:var(--rs-glass);border-color:#fff}
body.rsx-site .sec.navy .mini .row .l{color:var(--rs-ink)}

/* ---------- headings ---------- */
body.rsx-site .sec-head{max-width:760px}
body.rsx-site .sec-head h2,body.rsx-site .sec .two-col h2{font-weight:800;letter-spacing:-.025em;line-height:1.06}
body.rsx-site .sec-head h2{font-size:clamp(30px,4.4vw,50px);margin:14px 0 14px}
body.rsx-site .sec-head p{font-size:17.5px;line-height:1.6}
body.rsx-site .rsx-grad{background:linear-gradient(100deg,var(--rs-or-d) 0%,var(--rs-or) 45%,var(--rs-yel) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--rs-or)}
body.rsx-site .sec.dark .rsx-grad{background:linear-gradient(100deg,var(--rs-or) 0%,var(--rs-amb) 50%,var(--rs-yel) 100%);-webkit-background-clip:text;background-clip:text}
body.rsx-site .sec .eyebrow{display:inline-flex;align-items:center;gap:10px;background:none;padding:0;border-radius:0;font-size:12px;letter-spacing:.14em;color:var(--rs-or-d)}
body.rsx-site .sec .eyebrow::before{content:"";width:28px;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--rs-or),var(--rs-yel))}
body.rsx-site .sec.dark .eyebrow{background:none;color:var(--rs-amb)}

/* ---------- service / feature cards: liquid glass ---------- */
body.rsx-site .svc-grid{gap:20px}
body.rsx-site .scard{--cardbg:var(--rs-glass);background:var(--rs-glass);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.95);border-radius:22px;box-shadow:var(--rs-shadow);color:var(--rs-text);transition:transform .35s var(--rs-ease),box-shadow .35s var(--rs-ease)}
body.rsx-site .sec.light .scard,body.rsx-site .sec.navy .scard{background:rgba(255,255,255,.86)}
body.rsx-site .scard::before{content:"";position:absolute;left:22px;right:22px;top:0;height:3px;border-radius:0 0 3px 3px;background:linear-gradient(90deg,var(--rs-or),var(--rs-yel))}
body.rsx-site .scard:hover{transform:translateY(-6px);box-shadow:var(--rs-shadow-h)}
body.rsx-site .scard h3,body.rsx-site .sec.navy .scard h3,body.rsx-site .sec.dark .scard h3{color:var(--rs-ink);font-weight:800;letter-spacing:-.01em}
body.rsx-site .scard .tag{color:var(--rs-or-d);letter-spacing:.12em}
body.rsx-site .scard p{color:var(--rs-text)}
body.rsx-site .scard .more{display:inline-flex;align-items:center;gap:6px;color:var(--rs-or-d);transition:gap .25s var(--rs-ease)}
body.rsx-site .scard:hover .more{gap:10px}
/* dark "feature" cards become light glass with an icon chip */
body.rsx-site .scard.feat{--cardbg:var(--rs-glass);background:rgba(255,255,255,.9);color:var(--rs-text)}
body.rsx-site .scard.feat h3{color:var(--rs-ink)}
body.rsx-site .scard.feat p{color:var(--rs-text)}
body.rsx-site .scard.feat .tag{color:var(--rs-or-d)}
/* photo cards */
body.rsx-site .scard.rsx-pc{padding:8px 8px 20px;display:flex;flex-direction:column}
body.rsx-site .scard.rsx-pc::before{display:none}
body.rsx-site .scard.rsx-pc>:not(.rsx-thumb){margin-left:14px;margin-right:14px}
body.rsx-site .scard.rsx-pc>.tag{margin-top:16px}
body.rsx-site .scard.rsx-pc .more{margin-top:auto;padding-top:12px}
body.rsx-site .rsx-thumb{position:relative;display:block;aspect-ratio:16/10;border-radius:16px;overflow:hidden;background:#2a2725}
body.rsx-site .rsx-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.2s var(--rs-ease)}
body.rsx-site .scard:hover .rsx-thumb img{transform:scale(1.06)}
body.rsx-site .rsx-thumb::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,var(--rs-or),var(--rs-yel))}
/* designed tiles for links that have no photo (city hubs, cost guide) */
body.rsx-site .rsx-thumb.tile{display:grid;place-items:center;background:radial-gradient(120% 120% at 20% 10%,#3a332d 0%,#1f1c1a 60%,#171513 100%)}
body.rsx-site .rsx-thumb.tile::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 90%,rgba(246,109,30,.35),transparent 55%),radial-gradient(circle at 10% 0%,rgba(246,185,59,.22),transparent 50%)}
body.rsx-site .rsx-thumb.tile svg{position:relative;width:54px;height:54px;color:#fff;opacity:.95}
body.rsx-site .rsx-thumb.tile b{position:absolute;left:14px;bottom:12px;font:800 13px/1 Montserrat,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.85)}

/* ---------- process steps: photo strip with an animated progress line ---------- */
body.rsx-site .steps{position:relative;gap:20px}
body.rsx-site .step{--cardbg:#fff;background:rgba(255,255,255,.88);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.95);border-radius:22px;box-shadow:var(--rs-shadow);color:var(--rs-ink);transition:transform .35s var(--rs-ease),box-shadow .35s var(--rs-ease)}
body.rsx-site .step:hover{transform:translateY(-6px);box-shadow:var(--rs-shadow-h)}
body.rsx-site .step h3,body.rsx-site .sec.navy .step h3{color:var(--rs-ink);font-size:17px;font-weight:800}
body.rsx-site .step p,body.rsx-site .sec.navy .step p{color:var(--rs-text)}
body.rsx-site .step.rsx-ps{padding:8px 8px 22px}
body.rsx-site .step.rsx-ps>:not(.rsx-sp){margin-left:14px;margin-right:14px}
body.rsx-site .step.rsx-ps .n{margin-top:-30px;position:relative;z-index:2;border:3px solid #fff}
body.rsx-site .rsx-sp{position:relative;aspect-ratio:4/3;border-radius:16px;overflow:hidden;background:#2a2725}
body.rsx-site .rsx-sp img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.2s var(--rs-ease)}
body.rsx-site .step:hover .rsx-sp img{transform:scale(1.06)}
body.rsx-site .rsx-sp::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.25))}
/* designed "flat written quote" card for the quote step (no invented numbers) */
body.rsx-site .rsx-sp.quote{display:grid;place-items:center;background:linear-gradient(150deg,#FFF6EF 0%,#FDEBDD 100%)}
body.rsx-site .rsx-sp.quote::after{display:none}
body.rsx-site .rsx-qdoc{width:62%;max-width:190px;background:#fff;border-radius:12px;padding:14px 14px 12px;box-shadow:0 18px 30px -14px rgba(224,90,18,.45),0 2px 6px rgba(0,0,0,.06);transform:rotate(-3deg);transition:transform .5s var(--rs-ease)}
body.rsx-site .step:hover .rsx-qdoc{transform:rotate(0) translateY(-4px)}
body.rsx-site .rsx-qdoc .qh{font:800 9px/1 Montserrat,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--rs-or-d);margin-bottom:9px}
body.rsx-site .rsx-qdoc .ql{display:flex;align-items:center;gap:7px;font:600 10.5px/1.2 'Open Sans',sans-serif;color:var(--rs-ink2);padding:5px 0;border-bottom:1px dashed var(--rs-line)}
body.rsx-site .rsx-qdoc .ql:last-of-type{border-bottom:0}
body.rsx-site .rsx-qdoc .ql i{flex:none;width:14px;height:14px;border-radius:50%;background:linear-gradient(135deg,var(--rs-or),var(--rs-yel));position:relative}
body.rsx-site .rsx-qdoc .ql i::after{content:"";position:absolute;left:4.5px;top:2.5px;width:3px;height:6px;border:solid #fff;border-width:0 1.6px 1.6px 0;transform:rotate(45deg)}
body.rsx-site .rsx-qdoc .qf{margin-top:9px;padding-top:8px;border-top:2px solid var(--rs-ink);display:flex;justify-content:space-between;font:800 10px/1 Montserrat,sans-serif;color:var(--rs-ink);letter-spacing:.04em}
body.rsx-site .rsx-qdoc .qf span:last-child{color:var(--rs-or-d)}
@media(min-width:1001px){
  body.rsx-site .steps.rsx-line::before{content:"";position:absolute;left:4%;right:4%;top:calc(var(--rs-line-top,0px));height:2px;background:repeating-linear-gradient(90deg,#E4DED7 0 8px,transparent 8px 14px);z-index:0}
  body.rsx-site .steps.rsx-line::after{content:"";position:absolute;left:4%;top:calc(var(--rs-line-top,0px));height:2px;width:0;background:linear-gradient(90deg,var(--rs-or),var(--rs-yel));transition:width 1.6s var(--rs-ease);z-index:0}
  body.rsx-site .steps.rsx-line.rsx-on::after{width:92%}
}

/* ---------- FAQ: numbered glass accordions ---------- */
body.rsx-site .faq{counter-reset:rsq;display:flex;flex-direction:column;gap:12px}
body.rsx-site .faq details{counter-increment:rsq;margin:0;border-radius:18px;background:#fff;border:1px solid var(--rs-line);box-shadow:0 2px 8px rgba(26,25,23,.04);transition:border-color .25s,box-shadow .25s,background .25s}
body.rsx-site .faq details[open]{border-color:rgba(246,109,30,.35);box-shadow:0 22px 44px -24px rgba(224,90,18,.45);background:linear-gradient(180deg,#fff,#FFFBF7)}
body.rsx-site .faq summary{padding:20px 22px;gap:16px;font-size:16.5px;color:var(--rs-ink);justify-content:flex-start}
body.rsx-site .faq summary::before{content:counter(rsq,decimal-leading-zero);flex:none;width:24px;font:800 12px/1 Montserrat,sans-serif;color:var(--rs-mut)}
body.rsx-site .faq details[open] summary::before{color:var(--rs-or)}
body.rsx-site .faq summary::after,body.rsx-site .faq details[open] summary::after{content:"";margin-left:auto;flex:none;width:30px;height:30px;border-radius:50%;background:var(--rs-wash) no-repeat center/12px 12px;background-image:linear-gradient(var(--rs-or-d),var(--rs-or-d)),linear-gradient(var(--rs-or-d),var(--rs-or-d));background-size:12px 2px,2px 12px;transition:transform .35s var(--rs-ease),background-color .25s}
body.rsx-site .faq details[open] summary::after{transform:rotate(45deg);background-color:var(--rs-or);background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff)}
body.rsx-site .faq details .a{padding:0 22px 22px 62px;font-size:15px;line-height:1.7;color:var(--rs-text)}
body.rsx-site .sec.dark .faq details{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12)}
body.rsx-site .sec.dark .faq summary{color:#fff}

/* ---------- price lists ---------- */
body.rsx-site .mini{background:var(--rs-glass);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid #fff;border-radius:22px;padding:10px 26px;box-shadow:var(--rs-shadow);position:relative}
body.rsx-site .sec.light .mini{background:rgba(255,255,255,.86);border-color:#fff}
body.rsx-site .mini::before{content:"";position:absolute;left:26px;right:26px;top:0;height:3px;border-radius:0 0 3px 3px;background:linear-gradient(90deg,var(--rs-or),var(--rs-yel))}
body.rsx-site .mini .row{padding:17px 0;border-color:var(--rs-line)}
body.rsx-site .mini .row .l{display:flex;align-items:center;gap:12px;font-size:15.5px;color:var(--rs-ink)}
body.rsx-site .mini .row .l::before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:linear-gradient(135deg,var(--rs-or),var(--rs-yel));box-shadow:0 0 0 4px rgba(246,109,30,.12)}
body.rsx-site .mini .row{gap:16px}
body.rsx-site .mini .row .v{white-space:nowrap;text-align:right;font-size:21px;letter-spacing:-.01em;background:linear-gradient(100deg,var(--rs-ink) 0%,var(--rs-ink2) 35%,var(--rs-or-d) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--rs-ink)}

/* ---------- photo blocks + check lists ---------- */
body.rsx-site .photo{border-radius:24px;box-shadow:0 30px 60px -28px rgba(26,25,23,.5),0 4px 12px rgba(26,25,23,.08);transition:transform 1.2s var(--rs-ease),box-shadow .5s}
body.rsx-site .photo::after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:linear-gradient(90deg,var(--rs-or),var(--rs-yel))}
body.rsx-site .checks li{padding-left:32px}
body.rsx-site .checks li::before{content:"";top:3px;width:18px;height:18px;border-radius:50%;background:linear-gradient(135deg,var(--rs-or),var(--rs-yel))}
body.rsx-site .checks li::after{content:"";position:absolute;left:6.5px;top:6.5px;width:4px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
body.rsx-site .btn-orange{background:linear-gradient(135deg,var(--rs-or) 0%,var(--rs-or-d) 100%);border-radius:14px;box-shadow:0 10px 24px -8px rgba(224,90,18,.6)}
body.rsx-site .btn-orange:hover{transform:translateY(-2px)}

/* ---------- service-area city cards ---------- */
body.rsx-site .cty{border-radius:18px;border-color:rgba(255,255,255,.95);background:rgba(255,255,255,.86);box-shadow:var(--rs-shadow)}
body.rsx-site .cty:hover{border-color:rgba(246,109,30,.35);box-shadow:var(--rs-shadow-h)}
body.rsx-site .cty .pin{background:linear-gradient(140deg,rgba(246,109,30,.16),rgba(246,185,59,.2))}

/* ---------- final CTA: "what happens next" + glass form ---------- */
body.rsx-site .sec.final{background:radial-gradient(90% 120% at 0% 0%,#2c2724 0%,#1A1917 55%,#151413 100%)}
body.rsx-site .sec.final::before{content:"";position:absolute;inset:auto -120px -200px auto;width:620px;height:620px;border-radius:50%;filter:blur(90px);background:radial-gradient(circle,rgba(246,109,30,.28),transparent 65%);pointer-events:none}
body.rsx-site .rsx-next{list-style:none;margin:26px 0 0;padding:0;display:grid;gap:12px;max-width:440px}
body.rsx-site .rsx-next li{display:flex;align-items:center;gap:14px;padding:13px 16px;border-radius:16px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);color:#E9E6E2;font:600 14.5px/1.35 'Open Sans',sans-serif}
body.rsx-site .rsx-next li i{flex:none;width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(135deg,var(--rs-or),var(--rs-or-d));box-shadow:0 8px 18px -6px rgba(224,90,18,.7)}
body.rsx-site .rsx-next li i svg{width:19px;height:19px;color:#fff}
body.rsx-site .rsx-next li small{display:block;font:700 10.5px/1 Montserrat,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--rs-amb);margin-bottom:5px}
body.rsx-site .final .form h3{color:var(--rs-ink);font-weight:800}
body.rsx-site .final .form{border-radius:22px;box-shadow:0 40px 80px -30px rgba(0,0,0,.7)}
body.rsx-site .final .form button{background:linear-gradient(135deg,var(--rs-or) 0%,var(--rs-or-d) 100%);border-radius:14px;box-shadow:0 10px 24px -8px rgba(224,90,18,.6)}


/* ---------- tiered price cards (house / mobile home pages) ---------- */
body.rsx-site .price-cards{gap:20px}
body.rsx-site .pcard{position:relative;background:rgba(255,255,255,.86);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid #fff;border-radius:22px;padding:28px 24px 24px;box-shadow:var(--rs-shadow);transition:transform .35s var(--rs-ease),box-shadow .35s var(--rs-ease)}
body.rsx-site .pcard::before{content:"";position:absolute;left:24px;right:24px;top:0;height:3px;border-radius:0 0 3px 3px;background:linear-gradient(90deg,var(--rs-or),var(--rs-yel))}
body.rsx-site .pcard:hover{transform:translateY(-6px);box-shadow:var(--rs-shadow-h)}
body.rsx-site .pcard .sz{letter-spacing:.12em;color:var(--rs-or-d)}
body.rsx-site .pcard h3{font-weight:800;color:var(--rs-ink)}
body.rsx-site .pcard .range{font-size:38px;letter-spacing:-.02em;background:linear-gradient(100deg,var(--rs-ink) 0%,var(--rs-ink2) 35%,var(--rs-or-d) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--rs-ink)}
body.rsx-site .pcard .days{padding-bottom:16px;border-bottom:1px dashed var(--rs-line)}
body.rsx-site .pcard li{padding-left:28px;color:var(--rs-text)}
body.rsx-site .pcard li::before{content:"";top:2px;width:17px;height:17px;border-radius:50%;background:linear-gradient(135deg,var(--rs-or),var(--rs-yel))}
body.rsx-site .pcard li::after{content:"";position:absolute;left:6px;top:5px;width:4px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
body.rsx-site .pcard .b{background:linear-gradient(135deg,var(--rs-or) 0%,var(--rs-or-d) 100%);border-radius:14px;box-shadow:0 10px 24px -8px rgba(224,90,18,.6);padding:14px}
body.rsx-site .pcard .b:hover{background:linear-gradient(135deg,var(--rs-or-d) 0%,var(--rs-or-d) 100%)}

/* ---------- reveal motion (content stays visible without JS) ---------- */
html.rsx-mo body.rsx-site .rsx-rv{opacity:0;transform:translateY(22px);transition:opacity .7s var(--rs-ease),transform .7s var(--rs-ease)}
html.rsx-mo body.rsx-site .rsx-rv.rsx-on{opacity:1;transform:none}

@media(max-width:720px){
  body.rsx-site .sec-head h2{font-size:clamp(28px,8vw,36px)}
  body.rsx-site .faq summary{padding:17px 16px;font-size:15.5px;gap:12px}
  body.rsx-site .faq details .a{padding:0 16px 18px 52px}
  body.rsx-site .mini{padding:6px 18px}
  body.rsx-site .mini .row .v{font-size:18px}
}
@media(prefers-reduced-motion:reduce){
  body.rsx-site *{transition:none!important;animation:none!important}
  html.rsx-mo body.rsx-site .rsx-rv{opacity:1;transform:none}
}
