/* RISepticQuotes.com - retrofit stylesheet (Oct 2026). Class prefix: rs-
   Same coastal palette and type as before: slate blue-gray, warm sand, rust accent;
   Work Sans 600-700 headings, Source Sans 3 text (self-hosted, SIL OFL 1.1).
   Layout: full-width bands; the cesspool deadline calculator sits directly under the page title. */
@font-face{font-family:"RS Display";font-style:normal;font-weight:600 700;font-display:swap;src:url(/assets/fonts/work-sans-600-700-latin.woff2) format("woff2")}
@font-face{font-family:"RS Body";font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/fonts/source-sans-3-latin.woff2) format("woff2")}
@font-face{font-family:"RS Body";font-style:italic;font-weight:400 700;font-display:swap;src:url(/assets/fonts/source-sans-3-italic-latin.woff2) format("woff2")}
:root{
  --c-deep:#17222c;--c-slate:#1f2d3a;--c-slate2:#2c4051;--c-slate3:#3b5468;--c-slate4:#526b7e;--c-mist:#a9b8c3;--c-fog:#e6ecf0;
  --c-shell:#fbf7f0;--c-sand:#f5eee2;--c-dune:#ebdfcb;--c-drift:#dcc9a8;
  --c-rust:#a8441e;--c-rustdk:#93391a;--c-ember:#d8794a;--c-blush:#f8e6da;
  --c-ink:#1c2731;--c-quiet:#4c5d6a;
  --f-display:"RS Display","Work Sans",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --f-body:"RS Body","Source Sans 3","Source Sans Pro",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --gutter:clamp(1rem,4vw,2.5rem);--r:6px
}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:.75rem}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--c-sand);color:var(--c-ink);font:400 1.125rem/1.62 var(--f-body)}
a{color:var(--c-slate2);text-decoration-color:var(--c-rust);text-decoration-thickness:2px;text-underline-offset:.2em}
a:hover{color:var(--c-rustdk)}
:focus-visible{outline:3px solid var(--c-rust);outline-offset:2px}
h1,h2,h3{font-family:var(--f-display);font-weight:650;color:var(--c-slate);line-height:1.2;letter-spacing:-.01em}
h2{font-size:clamp(1.3rem,2.6vw,1.6rem);margin:0 0 .7rem}
p{margin:0 0 1rem}
strong{font-weight:700;color:var(--c-deep)}
.rs-span{width:100%;max-width:1240px;margin-inline:auto;padding-inline:var(--gutter)}
.rs-jump{position:absolute;left:-999px;top:0;background:var(--c-slate);color:#fff;padding:.6rem 1rem;z-index:30}
.rs-jump:focus{left:.5rem;top:.5rem;color:#fff}

/* ---------- masthead: light sand bar, slate type, rust rule on top ---------- */
.rs-mast{background:var(--c-shell);border-top:5px solid var(--c-rust);border-bottom:1px solid var(--c-drift);position:relative;z-index:20}
.rs-mast__row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1.25rem;padding-block:.6rem}
.rs-badge{display:inline-flex;align-items:center;gap:.55rem;margin-right:auto;color:var(--c-slate);text-decoration:none;font:600 1.18rem/1.1 var(--f-display);letter-spacing:-.01em}
.rs-badge:hover{color:var(--c-slate)}
.rs-badge svg{flex:none;width:36px;height:36px}
.rs-badge b{font-weight:700;color:var(--c-rust)}
.rs-mast__tools{display:flex;align-items:center;gap:.5rem;flex:none}
.rs-cta{display:inline-block;background:var(--c-rust);color:#fff!important;text-decoration:none!important;font:600 1rem/1.3 var(--f-body);padding:.5rem .9rem;border-radius:999px;white-space:nowrap}
.rs-cta:hover{background:var(--c-rustdk)}
.rs-menu-toggle{display:none;align-items:center;gap:.45rem;font:600 1rem/1.3 var(--f-body);color:var(--c-slate);background:#fff;border:1px solid var(--c-slate4);border-radius:999px;padding:.45rem .8rem;cursor:pointer;white-space:nowrap}
.rs-menu-toggle svg{flex:none;width:16px;height:12px}
.rs-menu-toggle:hover,.rs-menu-toggle[aria-expanded=true]{background:var(--c-slate);border-color:var(--c-slate);color:#fff}
.rs-js .rs-menu-toggle{display:inline-flex}
.rs-sitenav{width:100%}
.rs-sitenav__links{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:0 1.1rem}
.rs-sitenav a,.rs-sitenav summary{color:var(--c-slate2);text-decoration:none;font-size:1rem;font-weight:600;padding:.35rem 0;display:inline-block;cursor:pointer}
.rs-sitenav a:hover,.rs-sitenav summary:hover{color:var(--c-rustdk)}
.rs-sitenav a[aria-current=page]{box-shadow:inset 0 -3px 0 var(--c-rust)}
/* desktop nav CTA: ".rs-sitenav a" (padding .35rem 0) used to override .rs-cta's padding, so the text ran to the pill edges */
.rs-sitenav .rs-cta{padding:.45rem 1.05rem;line-height:1.3;margin-left:.15rem}
.rs-sitenav .rs-cta:hover{color:#fff}
.rs-townpick{position:relative}
.rs-townpick summary{list-style:none}
.rs-townpick summary::-webkit-details-marker{display:none}
.rs-townpick summary::after{content:"";display:inline-block;margin-left:.35rem;border:5px solid transparent;border-top-color:currentColor;border-bottom:0;vertical-align:middle}
.rs-townpick[open] summary::after{transform:rotate(180deg)}
.rs-townpick__list{list-style:none;position:absolute;z-index:25;top:100%;left:-.75rem;min-width:16rem;margin:.4rem 0 0;padding:.35rem 0;background:#fff;border:1px solid var(--c-drift);border-top:3px solid var(--c-slate2);border-radius:0 0 var(--r) var(--r);box-shadow:0 16px 30px -18px rgba(23,34,44,.6)}
.rs-townpick__list a{display:block;padding:.45rem 1rem}
.rs-townpick__list a:hover{background:var(--c-sand)}
.rs-townpick__all a{border-top:1px solid var(--c-dune);margin-top:.3rem;padding-top:.6rem;font-weight:400}
@media(max-width:959px){
  .rs-badge{flex:1 1 0;min-width:0;font-size:1.06rem}
  .rs-sitenav__cta{display:none}
  .rs-js .rs-sitenav{display:none}
  .rs-js .rs-mast--open .rs-sitenav{display:block;border-top:1px solid var(--c-drift);padding-top:.15rem}
  .rs-js .rs-sitenav__links{flex-direction:column;align-items:stretch}
  .rs-js .rs-sitenav__links>li+li{border-top:1px solid var(--c-dune)}
  .rs-js .rs-sitenav a,.rs-js .rs-sitenav summary{display:block;padding:.7rem 0}
  .rs-townpick__list{position:static;box-shadow:none;border-radius:var(--r);margin:0 0 .7rem}
}
@media(max-width:420px){
  .rs-mast__row{gap:.4rem;padding-inline:.75rem}
  .rs-badge{font-size:.98rem;gap:.4rem}
  .rs-badge svg{width:28px;height:28px}
  .rs-mast__tools{gap:.35rem}
  .rs-cta,.rs-menu-toggle{font-size:.9rem;padding:.42rem .6rem}
}
@media(max-width:359px){.rs-badge svg,.rs-menu-toggle svg{display:none}}
@media(min-width:960px){.rs-mast__tools{display:none}.rs-sitenav{width:auto}}
/* narrow desktops: logo + links + CTA stay on one row */
@media(min-width:960px) and (max-width:1139px){.rs-mast__row{column-gap:1rem}.rs-sitenav__links{column-gap:.8rem}.rs-sitenav a,.rs-sitenav summary{font-size:.95rem}.rs-sitenav .rs-cta{padding-inline:.9rem}}

/* ---------- opening band (page title + intro) ---------- */
.rs-opening{background:var(--c-slate2);color:#e9eef2;padding-block:2.2rem 2.4rem;background-image:linear-gradient(180deg,rgba(23,34,44,.0),rgba(23,34,44,.35))}
.rs-h1{color:#fff;font-size:clamp(1.85rem,4.6vw,3rem);font-weight:700;margin:0 0 .6rem;max-width:26ch}
.rs-intro{font-size:clamp(1.12rem,1.6vw,1.3rem);color:#e9eef2;max-width:62ch}
.rs-intro:last-child{margin-bottom:0}
.rs-opening a{color:#fff;text-decoration-color:var(--c-ember)}
.rs-opening strong{color:#fff}
.rs-opening__links{display:flex;flex-wrap:wrap;gap:.7rem;margin:1.3rem 0 0}
.rs-button{display:inline-block;background:var(--c-rust);color:#fff!important;font:700 1.05rem/1.2 var(--f-body);text-decoration:none!important;padding:.85rem 1.35rem;border:2px solid var(--c-rust);border-radius:999px;cursor:pointer}
.rs-button:hover{background:var(--c-rustdk);border-color:var(--c-rustdk)}
.rs-button--outline{background:transparent;color:var(--c-slate2)!important;border-color:var(--c-slate3)}
.rs-button--outline:hover{background:var(--c-fog);border-color:var(--c-slate3)}
.rs-opening .rs-button--outline{color:#fff!important;border-color:var(--c-mist)}
.rs-opening .rs-button--outline:hover{background:var(--c-slate3)}

/* ---------- cesspool deadline calculator (full width; needs JS, hidden without it) ---------- */
.rs-clock{background:linear-gradient(180deg,var(--c-slate2) 0,var(--c-slate2) 3.2rem,var(--c-dune) 3.2rem);padding-bottom:2.6rem}
/* no JS: the calculator controls are hidden and Dan's static sentence shows instead; with JS the sentence is hidden
   (rs-js is set by an inline script in <head>, before first paint, so it never shows twice) */
.rs-clock__static{font:650 clamp(1.15rem,2vw,1.4rem)/1.35 var(--f-display);color:var(--c-slate);margin:0}
.rs-js .rs-clock__static{display:none}
html:not(.rs-js) .rs-clock__label,html:not(.rs-js) .rs-clock__date,html:not(.rs-js) .rs-clock__out,html:not(.rs-js) .rs-clock__go{display:none}
html:not(.rs-js) .rs-clock__panel{grid-template-columns:minmax(0,1fr)}
.rs-clock__panel{display:grid;gap:1.4rem 2.5rem;background:#fff;border:1px solid var(--c-drift);border-bottom:6px solid var(--c-rust);border-radius:10px;padding:clamp(1.25rem,3vw,2.3rem);box-shadow:0 24px 40px -30px rgba(23,34,44,.75)}
.rs-clock__ask h2{font-size:clamp(1.45rem,3vw,2rem);margin-bottom:1rem}
.rs-clock__label{display:block;font-weight:700;color:var(--c-deep);margin-bottom:.35rem}
.rs-clock__date{font:inherit;font-size:1.2rem;color:var(--c-ink);width:100%;max-width:20rem;min-height:3.1rem;padding:.6rem .8rem;border:2px solid var(--c-slate4);border-radius:var(--r);background:var(--c-shell)}
.rs-clock__date:focus{border-color:var(--c-slate2);outline:3px solid rgba(168,68,30,.45);outline-offset:1px}
.rs-clock__result{min-height:1px}
.rs-clock__first{font:650 clamp(1.15rem,2vw,1.4rem)/1.35 var(--f-display);color:var(--c-slate);margin:0 0 .6rem}
.rs-clock__then{font-size:1.12rem;margin:0 0 .9rem}
[data-rs-calc-state=passed] .rs-clock__then{color:var(--c-rustdk);font-weight:700}
[data-rs-calc-state=future] .rs-clock__then{color:var(--c-slate2);font-weight:600}
.rs-clock__line{position:relative;height:12px;border-radius:999px;background:var(--c-fog);margin:.2rem 0 1.1rem;overflow:hidden;--rs-done:0}
.rs-clock__line::before{content:"";position:absolute;inset:0 auto 0 0;width:calc(var(--rs-done)*100%);background:linear-gradient(90deg,var(--c-slate4),var(--c-rust));border-radius:999px}
.rs-clock__small{font-size:.98rem;color:var(--c-quiet);border-top:1px solid var(--c-dune);padding-top:.8rem;margin:0}
.rs-clock__go{grid-column:1/-1;justify-self:start}
@media(min-width:880px){.rs-clock__panel{grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);align-items:start}.rs-clock__go{justify-self:start}}

/* ---------- body sections: full-width rows, heading column + copy column ---------- */
.rs-sections{background:var(--c-sand)}
.rs-sec{border-bottom:1px solid var(--c-drift)}
.rs-sec:nth-child(even){background:var(--c-shell)}
.rs-sec__grid{display:grid;gap:.2rem 3rem;padding-block:1.9rem}
.rs-sec__key h2{margin:0;position:relative;padding-top:.85rem}
.rs-sec__key h2::before{content:"";position:absolute;left:0;top:0;width:2.6rem;height:4px;background:var(--c-rust);border-radius:2px}
.rs-sec__copy{max-width:72ch}
.rs-sec__copy>:last-child{margin-bottom:0}
.rs-sec__copy ul{padding-left:1.2rem}
.rs-sec__copy li{margin:.4rem 0;padding-left:.15rem}
.rs-sec__copy ul li::marker{color:var(--c-rust)}
.rs-sec__copy ol{list-style:none;counter-reset:rsn;padding:0;margin:0 0 1rem;display:grid;gap:.8rem}
.rs-sec__copy ol li{counter-increment:rsn;position:relative;margin:0;padding:.85rem 1rem .85rem 3.4rem;background:#fff;border:1px solid var(--c-dune);border-radius:var(--r)}
.rs-sec__copy ol li::before{content:counter(rsn);position:absolute;left:.9rem;top:.85rem;width:1.8rem;height:1.8rem;border-radius:50%;border:2px solid var(--c-rust);color:var(--c-rustdk);font:700 .95rem/1.6rem var(--f-display);text-align:center}
.rs-sec--solo .rs-sec__grid{grid-template-columns:minmax(0,1fr)}
@media(min-width:900px){.rs-sec__grid{grid-template-columns:17rem minmax(0,1fr);padding-block:2.4rem}.rs-sec__key h2{position:sticky;top:1rem}}
.rs-offer{display:grid;gap:.8rem;margin:0 0 1rem}
.rs-offer p{margin:0;padding:.95rem 1.1rem;background:#fff;border:1px solid var(--c-dune);border-left:4px solid var(--c-slate3);border-radius:var(--r)}
@media(min-width:700px){.rs-offer{grid-template-columns:1fr 1fr}.rs-offer p:last-child{grid-column:1/-1}}
.rs-townlist{list-style:none;padding:0!important;display:grid;gap:.6rem}
.rs-townlist li{margin:0!important;padding:.75rem 1rem!important;background:var(--c-fog);border-radius:var(--r)}
@media(min-width:700px){.rs-townlist{grid-template-columns:1fr 1fr}}
.rs-dated{color:var(--c-quiet)}

/* ---------- request band + stepped form ---------- */
.rs-request-band{background:var(--c-slate);color:#e3e9ee;padding-block:2.6rem 3rem}
.rs-request-band__grid{display:grid;gap:1.6rem}
.rs-request-copy h2{color:#fff;font-size:clamp(1.45rem,3vw,2rem)}
.rs-request-copy p{max-width:62ch}
.rs-alert{background:var(--c-blush);color:var(--c-ink);border-radius:var(--r);padding:.8rem 1rem;border-left:5px solid var(--c-ember)}
.rs-alert em{font-weight:700;color:var(--c-rustdk)}
@media(min-width:1000px){.rs-request-band__grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);align-items:start}.rs-request-copy{position:sticky;top:1rem}}
.rs-quote-form{background:#fff;color:var(--c-ink);border-radius:10px;padding:1.3rem;border-top:6px solid var(--c-rust)}
@media(min-width:600px){.rs-quote-form{padding:1.8rem 2rem}}
.rs-meter{display:none;margin:0 0 1.1rem;font-weight:700;color:var(--c-slate2);font-size:1rem}
.rs-meter__track{display:grid;grid-template-columns:repeat(3,1fr);gap:.35rem;margin-top:.45rem}
.rs-meter__track i{display:block;height:6px;border-radius:999px;background:var(--c-fog)}
.rs-quote-form--stepped .rs-meter{display:block}
.rs-quote-form[data-rs-at="1"] .rs-meter__track i:nth-child(-n+1),.rs-quote-form[data-rs-at="2"] .rs-meter__track i:nth-child(-n+2),.rs-quote-form[data-rs-at="3"] .rs-meter__track i{background:var(--c-rust)}
.rs-quote-form--stepped .rs-pane{display:none}
.rs-quote-form--stepped .rs-pane--on{display:block}
.rs-pane:focus{outline:none}
.rs-quote-form--stepped .rs-pane--on:focus-visible{outline:3px solid rgba(168,68,30,.45);outline-offset:6px;border-radius:4px}
.rs-pane__nav{display:none;gap:.7rem;flex-wrap:wrap;align-items:center;margin-top:.4rem}
.rs-quote-form--stepped .rs-pane__nav{display:flex}
.rs-quote-form [data-rs-back]{display:none}
.rs-quote-form--stepped [data-rs-back]{display:inline-block}
.rs-pane__send{display:flex;gap:.7rem;flex-wrap:wrap;align-items:center}
.rs-button--back{background:#fff;color:var(--c-slate2)!important;border-color:var(--c-slate4)}
.rs-button--back:hover{background:var(--c-fog);border-color:var(--c-slate3)}
.rs-entry{margin:0 0 1.05rem}
.rs-entry label,.rs-quote-form legend{display:block;font-weight:700;color:var(--c-deep);margin-bottom:.4rem;font-size:1.06rem;padding:0}
.rs-optional{font-weight:400;color:var(--c-quiet)}
.rs-note{display:block;font-size:.95rem;color:var(--c-quiet);margin:-.15rem 0 .45rem}
.rs-quote-form input[type=text],.rs-quote-form input[type=tel],.rs-quote-form input[type=email],.rs-quote-form input[type=date],.rs-quote-form select,.rs-quote-form textarea{width:100%;font:inherit;font-size:1.06rem;color:var(--c-ink);background:var(--c-shell);border:1px solid var(--c-slate4);border-radius:var(--r);padding:.65rem .8rem;min-height:2.95rem}
.rs-quote-form textarea{min-height:6rem;resize:vertical}
.rs-quote-form select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23a8441e' stroke-width='2'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .85rem center;background-size:12px 8px;padding-right:2.4rem}
.rs-quote-form input:focus,.rs-quote-form select:focus,.rs-quote-form textarea:focus{border-color:var(--c-slate2);outline:3px solid rgba(168,68,30,.45);outline-offset:1px}
.rs-quote-form fieldset{border:0;padding:0;margin:0 0 1.15rem;min-width:0}
.rs-radios{display:grid;gap:.45rem}
.rs-radios--row{grid-template-columns:repeat(2,minmax(0,1fr))}
.rs-radios--big{gap:.6rem}
@media(min-width:600px){.rs-radios--row{grid-template-columns:repeat(4,auto);justify-content:start}.rs-radios--big{grid-template-columns:repeat(3,minmax(0,1fr))}}
.rs-radio{display:flex;gap:.6rem;align-items:flex-start;border:1px solid var(--c-mist);border-radius:var(--r);padding:.6rem .8rem;cursor:pointer;line-height:1.35;background:#fff}
.rs-radio:hover{border-color:var(--c-slate3)}
.rs-radio input{margin:.15rem 0 0;width:1.1rem;height:1.1rem;accent-color:var(--c-rust);flex:none}
.rs-radio:has(input:checked){border-color:var(--c-rust);background:var(--c-blush);box-shadow:inset 0 0 0 1px var(--c-rust)}
.rs-radios--big .rs-radio{padding:1rem;font-weight:600;font-size:1.1rem}
.rs-twin{display:grid;gap:0 1rem}
@media(min-width:600px){.rs-twin{grid-template-columns:1fr 1fr}}
.rs-consent{display:flex;gap:.7rem;align-items:flex-start;font-size:.98rem;line-height:1.5;background:var(--c-sand);border:1px solid var(--c-drift);border-radius:var(--r);padding:.85rem .95rem;margin:0 0 1.1rem;cursor:pointer}
.rs-consent input{margin:.2rem 0 0;width:1.15rem;height:1.15rem;accent-color:var(--c-rust);flex:none}
.rs-submit{width:100%}
@media(min-width:600px){.rs-submit{width:auto}}
.rs-honey{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

/* ---------- related strip ---------- */
.rs-seealso{background:var(--c-shell);border-top:1px solid var(--c-drift);padding-block:1.3rem}
.rs-seealso p{margin:0 0 .35rem}
.rs-seealso__lead{font-weight:700;color:var(--c-slate);margin-right:.25rem}

/* ---------- footer ---------- */
.rs-base{background:var(--c-deep);color:#e3e9ee;padding-block:2.4rem 1.6rem;font-size:1rem}
.rs-base a{color:#f3d9c6;text-decoration-color:var(--c-ember)}
.rs-base a:hover{color:#fff}
.rs-base .rs-badge{color:var(--c-sand);margin:0 0 .6rem}
.rs-base .rs-badge b{color:#f0b48f}
.rs-base h2{font:600 .82rem/1.3 var(--f-display);letter-spacing:.12em;text-transform:uppercase;color:var(--c-drift);margin:0 0 .55rem}
.rs-base__cols{display:grid;gap:1.6rem;grid-template-columns:1fr 1fr}
.rs-base__cols ul{list-style:none;margin:0;padding:0}
.rs-base__cols li{margin:.3rem 0}
.rs-base__brand{grid-column:1/-1}
@media(min-width:860px){.rs-base__cols{grid-template-columns:1.4fr 1fr 1fr 1fr}.rs-base__brand{grid-column:auto}}
.rs-base__legal{border-top:1px solid #3b4b59;margin-top:1.8rem;padding-top:1.2rem;color:#d3dbe1;font-size:.95rem}
.rs-base__legal strong{color:#fff}

.rs-callbar{background:var(--c-slate);color:#fff}
.rs-callbar__row{display:flex;justify-content:flex-end;align-items:center;min-height:2rem}
.rs-callbar__tel{display:inline-flex;align-items:center;gap:.4rem;color:#fff!important;text-decoration:none;font:600 .95rem/1.2 var(--f-body);white-space:nowrap;padding:.3rem 0}
.rs-callbar__tel:hover{text-decoration:underline}
.rs-callbar__tel svg{flex:none;width:15px;height:15px}
.rs-base__call{margin:.3rem 0 0}
@media(max-width:420px){.rs-callbar__row{justify-content:center;padding-inline:.75rem}.rs-callbar__tel{font-size:.9rem}}
