/* Ceiling stain - Cedar Auburn Water Damage Restoration. Archivo 700 + Newsreader. Prefix cs- */
@font-face{font-family:"Archivo";src:url(fonts/archivo-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Newsreader";src:url(fonts/newsreader-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Newsreader";src:url(fonts/newsreader-400i.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Newsreader";src:url(fonts/newsreader-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}

:root{
  --sheet:#f4f1ec;--tint:#e7e2d8;--card:#fbf9f5;--night:#17232c;--night2:#22323d;
  --rust:#8c3a1a;--rust-d:#6e2b11;--rustl:#e9a47f;--wash:#d9b79f;--warm:#f6e6da;
  --hi:#ff7a1a;--hi-h:#ff9440;--mid:#3b4a55;--line:#cdc6b8;
  --disp:"Archivo","Helvetica Neue",Arial,sans-serif;--body:"Newsreader",Georgia,"Times New Roman",serif;
  --rail:272px;--gut:clamp(20px,4.4vw,52px);
  --ring:url("ring.svg");--rings:url("rings-lg.svg");
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:16px}
body{margin:0;background:var(--sheet);color:var(--night);font:400 1.125rem/1.66 var(--body);font-synthesis:none;-webkit-font-smoothing:antialiased;overflow-x:clip}
img{display:block;max-width:100%;height:auto}
h1,h2,h3,p,ul,ol,dl,dd,dt,figure,address{margin:0}
ul,ol{padding:0;list-style:none}
b,strong{font-weight:600}
a{color:var(--rust);text-underline-offset:.2em;text-decoration-thickness:1px}
a:hover{color:var(--rust-d)}
:focus-visible{outline:3px solid var(--night);outline-offset:3px;border-radius:4px}
.cs-rail :focus-visible,.cs-ft :focus-visible,.cs-dock :focus-visible,.is-night :focus-visible{outline-color:var(--sheet)}
.cs-skip{position:absolute;left:12px;top:-80px;z-index:99;background:var(--hi);color:var(--night);padding:.7rem 1rem;border-radius:10px;font:700 1rem var(--disp);text-decoration:none}
.cs-skip:focus{top:12px}
.cs-defs{position:absolute;width:0;height:0;overflow:hidden}

/* ---------- frame: content column + right wall rail ---------- */
.cs-frame{display:block}
.cs-col{min-width:0}
.cs-rail{background:var(--night);color:var(--sheet);position:relative}
.cs-brand{display:flex;align-items:center;gap:.75rem;color:inherit;text-decoration:none}
.cs-mark{width:44px;height:44px;flex:none;color:var(--hi)}
.cs-brand-t{display:block;min-width:0}
.cs-brand-t b{display:block;font:700 1.125rem/1.1 var(--disp);letter-spacing:-.01em}
.cs-brand-t small{display:block;margin-top:.15rem;font:italic 400 .9375rem/1.2 var(--body);opacity:.85}
.cs-addr{font-style:normal;font-size:.9375rem;line-height:1.45;color:rgba(244,241,236,.84)}
.cs-rn a{display:block;padding:.62rem .9rem .62rem 1rem;border-left:3px solid transparent;border-radius:0 12px 12px 0;color:var(--sheet);text-decoration:none;font:700 1rem/1.25 var(--disp)}
.cs-rn a:hover{background:rgba(255,255,255,.08);color:var(--sheet)}
.cs-rn a[aria-current]{border-left-color:var(--hi);background:rgba(255,255,255,.1)}
@media (min-width:1020px){
  .cs-frame{display:grid;grid-template-columns:minmax(0,1fr) var(--rail);align-items:start}
  .cs-rail{grid-column:2;grid-row:1;position:sticky;top:0;height:100vh;height:100dvh;overflow:hidden auto;display:flex;flex-direction:column;gap:26px;padding:30px 20px 24px 24px}
  .cs-rail::before{content:"";position:absolute;right:-84px;top:-84px;width:270px;height:270px;background:var(--wash);opacity:.16;-webkit-mask:var(--rings) center/contain no-repeat;mask:var(--rings) center/contain no-repeat;pointer-events:none}
  .cs-rail>*{position:relative}
  .cs-col{grid-column:1;grid-row:1}
  .cs-rn ul{display:grid;gap:2px}
  .cs-rf{margin-top:auto;display:grid;gap:14px}
  .cs-mm{display:none}
  .cs-dock{display:none}
}
@media (max-width:1019.98px){
  .cs-rail{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px var(--gut);z-index:30}
  .cs-rn,.cs-rf{display:none}
  .cs-mark{width:38px;height:38px}
  .cs-brand-t b{font-size:1rem}
  .cs-brand-t small{font-size:.875rem}
  .cs-mm{position:static}
  .cs-mm summary{list-style:none;display:flex;align-items:center;gap:.6rem;min-height:44px;padding:.4rem .95rem;border:1.5px solid rgba(244,241,236,.45);border-radius:999px;font:700 1rem var(--disp);cursor:pointer}
  .cs-mm summary::-webkit-details-marker{display:none}
  .cs-mm summary i{width:16px;height:2px;background:currentColor;position:relative;display:block}
  .cs-mm summary i::before,.cs-mm summary i::after{content:"";position:absolute;left:0;width:16px;height:2px;background:currentColor}
  .cs-mm summary i::before{top:-5px}.cs-mm summary i::after{top:5px}
  .cs-mm[open] summary{background:var(--sheet);color:var(--night)}
  .cs-mm-p{position:absolute;left:0;right:0;top:100%;background:var(--night2);padding:10px var(--gut) 22px;box-shadow:0 22px 30px -10px rgba(0,0,0,.35)}
  .cs-mm-p ul{display:grid}
  .cs-mm-p .cs-rn a,.cs-mm-p a{display:block;padding:.8rem .2rem;border-bottom:1px solid rgba(244,241,236,.14);color:var(--sheet);text-decoration:none;font:700 1.0625rem var(--disp)}
  .cs-mm-p a[aria-current]{color:var(--rustl)}
  .cs-mm-p .cs-addr{margin-top:14px}
  .cs-dock{display:block;position:fixed;left:0;right:0;bottom:0;z-index:40;background:var(--night);padding:10px var(--gut) calc(10px + env(safe-area-inset-bottom));box-shadow:0 -10px 26px rgba(23,35,44,.28)}
  body{padding-bottom:calc(76px + env(safe-area-inset-bottom))}
}

/* ---------- buttons ---------- */
a.cs-call{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;min-height:52px;padding:.85rem 1.5rem;border-radius:999px;background:var(--hi);color:var(--night);font:700 1.0625rem/1.15 var(--disp);text-decoration:none;box-shadow:0 10px 22px -12px rgba(255,122,26,.9);transition:background .15s,box-shadow .15s}
a.cs-call:hover,a.cs-call:focus-visible,a.cs-call:visited{color:var(--night)}
a.cs-call:hover{background:var(--hi-h)}
a.cs-call svg{flex:none}
a.cs-call--lg{min-height:60px;padding:1rem 1.9rem;font-size:1.1875rem}
a.cs-call--rail,a.cs-call--dock,a.cs-call--ft{width:100%}
a.cs-call--dock{min-height:54px;font-size:1.1875rem}
a.cs-call--ft{max-width:20rem}
a.cs-ghost{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:.8rem 1.4rem;border:2px solid currentColor;border-radius:999px;color:var(--night);font:700 1rem/1.15 var(--disp);text-decoration:none;transition:background .15s,color .15s}
a.cs-ghost:hover{background:var(--night);border-color:var(--night);color:var(--sheet)}
.is-night a.cs-ghost{color:var(--sheet)}
.is-night a.cs-ghost:hover{background:var(--sheet);border-color:var(--sheet);color:var(--night)}

/* ---------- bands, wrap, type ---------- */
.cs-wrap{width:100%;max-width:calc(66rem + 2 * var(--gut));margin-inline:auto;padding-inline:var(--gut)}
.cs-sec{padding-block:clamp(48px,7vw,92px)}
.is-sheet{background:var(--sheet)}.is-tint{background:var(--tint)}.is-night{background:var(--night);color:var(--sheet)}
.is-sheet+.is-sheet,.is-tint+.is-tint{padding-top:0}
.cs-h1{font:700 clamp(2.3rem,1rem + 4.4vw,4.1rem)/1.02 var(--disp);letter-spacing:-.022em;text-wrap:balance}
.cs-h1 span{display:block;margin-top:.28em;font:italic 400 .5em/1.2 var(--body);letter-spacing:0;color:var(--rust)}
.cs-h1--pg{font-size:clamp(2rem,1rem + 2.9vw,3.2rem);line-height:1.06;letter-spacing:-.018em}
.cs-h2{font:700 clamp(1.55rem,1.05rem + 1.7vw,2.35rem)/1.1 var(--disp);letter-spacing:-.015em;text-wrap:balance}
.cs-h2::before{content:"";display:block;width:30px;height:30px;margin-bottom:.75rem;background:var(--rust);-webkit-mask:var(--ring) center/contain no-repeat;mask:var(--ring) center/contain no-repeat}
.cs-h2--s{font-size:clamp(1.3rem,1rem + 1vw,1.7rem)}
.cs-h2--s::before{width:22px;height:22px;margin-bottom:.5rem}
.cs-sub{display:block;margin-top:.35rem;font:italic 400 .62em/1.3 var(--body);letter-spacing:0;color:var(--mid)}
.is-night .cs-h2{color:var(--sheet)}
.is-night .cs-h2::before{background:var(--rustl)}
.is-night .cs-sub{color:rgba(244,241,236,.8)}
/* text links (phone numbers included) inside dark bands: light rust + underline, 7.7:1 on night */
.is-night a:not(.cs-call):not(.cs-ghost):not(.cs-chip),.cs-pair-tab a,.cs-scope a,.cs-hp-a a:not(.cs-call):not(.cs-ghost){color:var(--rustl);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em}
.is-night a:not(.cs-call):not(.cs-ghost):not(.cs-chip):hover,.cs-pair-tab a:hover,.cs-scope a:hover,.cs-hp-a a:not(.cs-call):not(.cs-ghost):hover{color:var(--sheet)}
.cs-eye{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem 1rem;margin-bottom:1rem;font:700 .9375rem/1.25 var(--disp);color:var(--rust)}
.cs-eye span+span::before{content:"";display:inline-block;width:15px;height:15px;margin-right:.6rem;vertical-align:-2px;background:currentColor;-webkit-mask:var(--ring) center/contain no-repeat;mask:var(--ring) center/contain no-repeat}
.cs-lede{max-width:36rem;font:italic 400 clamp(1.2rem,1.05rem + .5vw,1.4rem)/1.5 var(--body);color:var(--mid)}
.cs-lede--s{margin-top:1rem}
.cs-prose p{max-width:37rem}
.cs-prose p+p{margin-top:1.05em}
.cs-prose--on{color:rgba(244,241,236,.92)}
.cs-prose--pg{margin-top:1.1rem}
.cs-upd{margin-top:.8rem;font:italic 400 1.0625rem var(--body);color:var(--mid)}
.cs-split{display:grid;gap:1.4rem 3rem}
.cs-split-b{min-width:0}
@media (min-width:900px){.cs-split{grid-template-columns:minmax(0,.8fr) minmax(0,1.5fr)}.cs-split-h{position:sticky;top:28px;align-self:start}}

/* ring lists and panels */
.cs-rl{display:grid;gap:.85rem}
.cs-rl li{position:relative;padding-left:2rem;max-width:42rem}
.cs-rl li::before{content:"";position:absolute;left:0;top:.36em;width:1.15rem;height:1.15rem;background:var(--rust);-webkit-mask:var(--ring) center/contain no-repeat;mask:var(--ring) center/contain no-repeat}
@media (min-width:720px){.cs-rl--2{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:2rem}}
.cs-panel{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:clamp(20px,3vw,34px)}
.cs-stop{background:var(--warm);border:1px solid #e4c2a8;border-left:8px solid var(--rust);border-radius:6px 24px 24px 6px;padding:clamp(22px,3.4vw,40px)}
.cs-stop .cs-h2{margin-bottom:1.2rem}
.cs-rl--stop li{font-size:1.1875rem;line-height:1.5;max-width:46rem}
.cs-rl--notes li{padding-bottom:.85rem;border-bottom:1px solid var(--line)}
.cs-rl--notes li:last-child{border-bottom:0}

/* ---------- stain photo (clip + rings) ---------- */
.cs-stain{position:relative;isolation:isolate;aspect-ratio:1/.9}
.cs-stain img{width:100%;height:100%;object-fit:cover;-webkit-clip-path:url(#cs-clip);clip-path:url(#cs-clip)}
.cs-rings{position:absolute;left:-9%;top:-9%;width:118%;height:118%;z-index:-1;overflow:visible;pointer-events:none}
.cs-stain--h{aspect-ratio:1/.92}
.cs-stain--s{aspect-ratio:1/.86}
.cs-stain--m{aspect-ratio:1/.92}
.cs-pos1 img{object-position:0% 55%}
.cs-pos2 img{object-position:100% 45%}
.cs-tws li:nth-child(3n+2) .cs-tw-ph img{scale:2;transform-origin:6% 64%}
.cs-tws li:nth-child(3n+3) .cs-tw-ph img{scale:2;transform-origin:96% 46%}

/* ---------- hero ---------- */
.cs-hero{padding-top:clamp(34px,5.5vw,70px);padding-bottom:0;overflow-x:clip}
.cs-hero-g{display:grid;gap:2.4rem 3.2rem;margin-top:clamp(1.4rem,3vw,2.4rem);align-items:center}
@media (min-width:860px){.cs-hero-g{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:2.4rem 4.8rem}.cs-stain--h{width:92%;margin-left:auto}}
.cs-hero-c{min-width:0}
.cs-hero-cta{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.5rem}
.cs-hl{margin-top:1.6rem;border-top:1px solid var(--line)}
.cs-hl li{border-bottom:1px solid var(--line)}
.cs-hl a{position:relative;display:block;padding:.72rem .2rem .72rem 2rem;color:var(--night);text-decoration:none;font:700 1.0625rem/1.3 var(--disp)}
.cs-hl a::before{content:"";position:absolute;left:.1rem;top:50%;width:1.1rem;height:1.1rem;margin-top:-.55rem;background:var(--rust);-webkit-mask:var(--ring) center/contain no-repeat;mask:var(--ring) center/contain no-repeat}
.cs-hl a:hover{color:var(--rust)}
.cs-roll{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem;margin-top:1.4rem}
.cs-roll p{margin-right:.35rem;font:700 .9375rem var(--disp);color:var(--mid)}
a.cs-chip{display:inline-flex;align-items:center;min-height:44px;padding:.4rem 1.1rem;border:1.5px solid var(--rust);border-radius:999px;color:var(--rust);text-decoration:none;font:700 1rem var(--disp)}
a.cs-chip:hover{background:var(--rust);color:var(--sheet)}
.cs-scope{margin-top:clamp(40px,5.5vw,72px);background:var(--night);color:var(--sheet);padding:1rem var(--gut)}
.cs-scope ul{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem 2.2rem;max-width:66rem;margin:0 auto;font:700 .9375rem/1.3 var(--disp)}
.cs-scope li{display:flex;align-items:center;gap:.6rem}
.cs-scope li::before{content:"";width:15px;height:15px;flex:none;background:var(--rustl);-webkit-mask:var(--ring) center/contain no-repeat;mask:var(--ring) center/contain no-repeat}

/* ---------- inner page head ---------- */
.cs-pg{padding-block:clamp(26px,4vw,52px) clamp(40px,5.5vw,72px);overflow-x:clip}
.cs-pg-in{display:grid;gap:2.4rem 3.4rem;align-items:center}
@media (min-width:860px){.cs-pg-in{grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr)}.cs-pg--nophoto .cs-pg-in{grid-template-columns:minmax(0,1fr)}}
.cs-pg-t{min-width:0}
.cs-pg-cta{margin-top:1.6rem}
.cs-bc ol{display:flex;flex-wrap:wrap;gap:0 .55rem;margin-bottom:1rem;font:700 .875rem/1.3 var(--disp)}
.cs-bc li+li::before{content:"/";margin-right:.55rem;color:var(--mid);opacity:.6}
.cs-bc a{display:inline-block;padding:.35rem 0;color:var(--mid)}
.cs-bc [aria-current]{padding:.35rem 0;color:var(--night)}

/* ---------- cards: pairs, towns, guides ---------- */
.cs-pairs{display:grid;gap:clamp(18px,2.6vw,30px);margin-top:2.2rem}
.cs-pair{display:grid;overflow:hidden;border:1px solid var(--line);border-radius:26px;background:var(--card)}
.cs-pair-tab{display:flex;flex-direction:column;justify-content:center;gap:.45rem;padding:1.4rem 1.5rem;background:var(--night);color:var(--sheet)}
.cs-pair-l{font:700 1.3rem/1.12 var(--disp)}
.cs-pair-n{font:italic 400 1.0625rem/1.4 var(--body);color:rgba(244,241,236,.84)}
.cs-pair-c{display:grid;gap:14px;padding:14px}
@media (min-width:640px){.cs-pair-c{grid-template-columns:1fr 1fr}}
@media (min-width:900px){.cs-pair{grid-template-columns:210px minmax(0,1fr)}}
.cs-pc,.cs-tw,.cs-gc{display:flex;flex-direction:column;gap:.5rem;color:var(--night);text-decoration:none}
.cs-pc-ph,.cs-tw-ph,.cs-gc-ph{position:relative;display:block;overflow:hidden;border-radius:18px;aspect-ratio:4/3;background:var(--tint)}
.cs-pc-ph img,.cs-tw-ph img,.cs-gc-ph img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.cs-pc-ph::after,.cs-tw-ph::after,.cs-gc-ph::after,.cs-sf-ph::after{content:"";position:absolute;left:-30px;bottom:-30px;width:112px;height:112px;background:#fff;opacity:.6;-webkit-mask:var(--rings) center/contain no-repeat;mask:var(--rings) center/contain no-repeat;pointer-events:none}
.cs-pc:hover img,.cs-tw:hover img,.cs-gc:hover img{transform:scale(1.04)}
.cs-pc-t,.cs-tw-t,.cs-gc-t{margin-top:.25rem;font:700 1.2rem/1.2 var(--disp)}
.cs-pc:hover .cs-pc-t,.cs-tw:hover .cs-tw-t,.cs-gc:hover .cs-gc-t{color:var(--rust)}
.cs-pc-q,.cs-tw-d,.cs-gc-q{display:block;font-size:1rem;line-height:1.5;color:var(--mid)}
.cs-pc--s .cs-pc-ph{aspect-ratio:3/2}
.cs-pc--s .cs-pc-t{font-size:1.05rem}
.cs-pc--s .cs-pc-q{display:none}
.cs-rel{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;margin-top:1.8rem}
.cs-tws{display:grid;gap:clamp(20px,3vw,32px);margin-top:2rem}
@media (min-width:760px){.cs-tws{grid-template-columns:repeat(3,minmax(0,1fr))}}
.cs-tw{height:100%}
.cs-tw-t{font-size:1.3rem}
.cs-gcs{display:grid;gap:24px}
.cs-gc{display:grid;gap:.4rem 2.2rem;padding:clamp(16px,2.4vw,26px);border:1px solid var(--line);border-radius:26px;background:var(--card)}
@media (min-width:800px){.cs-gc{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:center}.cs-gc-ph{grid-row:1/5}}
.cs-gc-t{font-size:1.7rem}
.cs-gc-go{display:inline-flex;align-items:center;gap:.4rem;margin-top:.5rem;font:700 1rem var(--disp);color:var(--rust)}
.cs-chev{flex:none}

/* ---------- home blocks ---------- */
.cs-stain-s{margin-top:2.2rem;max-width:300px}
.cs-sf{display:grid;gap:12px;margin-top:2rem}
@media (min-width:900px){.cs-sf{grid-template-columns:1fr 1fr}}
.cs-sf-r{display:grid;grid-template-columns:104px minmax(0,1fr);gap:4px 16px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:20px;background:var(--card);color:var(--night);text-decoration:none;transition:border-color .15s,background .15s}
.cs-sf-r:hover{border-color:var(--rust);background:#fff}
.cs-sf-ph{position:relative;grid-row:1/3;overflow:hidden;border-radius:13px;aspect-ratio:4/3}
.cs-sf-ph img{width:100%;height:100%;object-fit:cover}
.cs-sf-ph::after{left:-20px;bottom:-20px;width:70px;height:70px}
.cs-sf-t{align-self:end;font-size:1.0625rem;line-height:1.38}
.cs-sf-go{display:flex;align-items:center;gap:.3rem;align-self:start;font:700 .9375rem/1.25 var(--disp);color:var(--rust)}
.cs-qk{display:grid;gap:1.6rem 2.6rem;margin-top:2rem}
@media (min-width:760px){.cs-qk{grid-template-columns:1fr 1fr}}
.cs-qk>div{padding-top:.9rem;border-top:2px solid var(--night)}
.cs-qk dt{font:700 1.1rem/1.3 var(--disp)}
.cs-qk dd{margin-top:.45rem;font-size:1.0625rem;line-height:1.55}
.cs-mk li{padding:1.2rem 0;border-top:1px solid var(--line)}
.cs-mk li:last-child{border-bottom:1px solid var(--line)}
.cs-mk-l{font:700 1.2rem/1.3 var(--disp);margin-bottom:.35rem}
.cs-mk p:not(.cs-mk-l){max-width:37rem}
.cs-qa-r{padding:1.25rem 0;border-top:1px solid rgba(23,35,44,.22)}
.cs-qa-r:last-child{border-bottom:1px solid rgba(23,35,44,.22)}
.cs-qa dt{position:relative;padding-left:1.9rem;font:700 1.15rem/1.3 var(--disp)}
.cs-qa dt::before{content:"";position:absolute;left:0;top:.18em;width:1.2rem;height:1.2rem;background:var(--rust);-webkit-mask:var(--ring) center/contain no-repeat;mask:var(--ring) center/contain no-repeat}
.cs-qa dd{margin-top:.5rem;padding-left:1.9rem;max-width:38rem}
.cs-hp{display:grid;gap:2.2rem 3.4rem;align-items:center}
@media (min-width:860px){.cs-hp{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}}
.cs-hp-a{display:grid;gap:14px;padding:clamp(22px,3vw,34px);border:1px solid rgba(244,241,236,.24);border-radius:24px}
.cs-hp-h,.cs-ct-h{font:700 .9375rem/1.3 var(--disp)}
.cs-hp-h{color:var(--rustl)}
.cs-addr--lg{font:700 1.4rem/1.25 var(--disp);color:var(--sheet)}
.cs-ct .cs-addr--lg{color:var(--night)}
.cs-notes{display:grid;gap:18px;margin-top:2rem}
@media (min-width:760px){.cs-notes{grid-template-columns:1fr 1fr}}
.cs-note{padding:1.4rem 1.6rem;background:var(--card);border:1px solid var(--line);border-radius:6px 24px 24px 24px}
.cs-point{display:grid;gap:.4rem;max-width:46rem;padding:clamp(20px,3vw,32px);border:2px dashed var(--rust);border-radius:22px}
.cs-weather .cs-prose{color:rgba(244,241,236,.94)}

/* ---------- sources ---------- */
.cs-src summary{display:flex;align-items:center;gap:.7rem;min-height:48px;padding:.5rem 0;border-top:1px solid var(--line);list-style:none;cursor:pointer;font:700 1rem/1.3 var(--disp)}
.cs-src summary::-webkit-details-marker{display:none}
.cs-src summary::before{content:"";width:20px;height:20px;flex:none;background:var(--rust);-webkit-mask:var(--ring) center/contain no-repeat;mask:var(--ring) center/contain no-repeat}
.cs-src summary::after{content:"+";margin-left:auto;font:700 1.4rem/1 var(--disp);color:var(--rust)}
.cs-src[open] summary::after{content:"\2212"}
.cs-src summary em{padding:.1rem .6rem;border-radius:999px;background:var(--tint);font:700 .875rem var(--disp);font-style:normal;color:var(--mid)}
.cs-src ol{display:grid;gap:.55rem;padding:.4rem 0 .4rem 1.4rem;list-style:decimal;font-size:1rem;line-height:1.5}
.cs-src ol li{padding-left:.3rem}
.cs-src ol li::marker{color:var(--mid);font-family:var(--disp)}
.cs-src-d{padding:.3rem 0 .6rem;font:italic 400 .9375rem var(--body);color:var(--mid)}
.cs-src--s summary{border-top:0;min-height:44px;font-size:.9375rem}
.is-tint .cs-src summary em{background:var(--sheet)}

/* ---------- guide timeline, long form, table ---------- */
.cs-tl{margin-left:14px;border-left:2px solid var(--wash)}
.cs-tl li{position:relative;padding:0 0 2.4rem 2.4rem}
.cs-tl li:last-child{padding-bottom:0}
.cs-tl li::before{content:"";position:absolute;left:-16px;top:-.05rem;width:30px;height:30px;border-radius:50%;background:var(--sheet)}
.cs-tl li::after{content:"";position:absolute;left:-16px;top:-.05rem;width:30px;height:30px;background:var(--rust);-webkit-mask:var(--ring) center/contain no-repeat;mask:var(--ring) center/contain no-repeat}
.cs-tl .cs-h2{margin-bottom:.6rem}
.cs-tl .cs-h2::before{display:none}
.cs-lf{display:grid;gap:2rem 3rem}
@media (min-width:960px){.cs-lf{grid-template-columns:210px minmax(0,1fr)}}
.cs-toc{display:none}
@media (min-width:960px){.cs-toc{display:block;position:sticky;top:28px;align-self:start;max-height:calc(100vh - 56px);overflow:auto;padding-right:6px}}
.cs-toc ul{display:grid;gap:2px;border-left:2px solid var(--wash)}
.cs-toc a{display:block;padding:.4rem .8rem;color:var(--mid);text-decoration:none;font:700 .875rem/1.3 var(--disp)}
.cs-toc a:hover{color:var(--rust)}
.cs-lf-b{min-width:0}
.cs-lf-s{padding:1.9rem 0}
.cs-lf-s+.cs-lf-s{border-top:1px solid var(--line)}
.cs-lf-s:first-child{padding-top:0}
.cs-lf-s .cs-prose{margin-bottom:.6rem}
.cs-tbl{margin-top:1.2rem;overflow-x:auto}
.cs-tbl table{width:100%;border-collapse:collapse;font-size:.95rem;line-height:1.45}
.cs-tbl th{padding:.75rem .8rem;background:var(--night);color:var(--sheet);text-align:left;font:700 .875rem/1.2 var(--disp)}
.cs-tbl td{padding:.8rem;vertical-align:top;border-bottom:1px solid var(--line)}
.cs-tbl tbody tr:nth-child(even){background:var(--card)}
.cs-tbl td:first-child{font-weight:600}
@media (max-width:899.98px){
  .cs-tbl table,.cs-tbl tbody,.cs-tbl tr,.cs-tbl td{display:block}
  .cs-tbl thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .cs-tbl tr{margin-bottom:14px;padding:6px 14px;border:1px solid var(--line);border-radius:18px;background:var(--card)}
  .cs-tbl td{padding:.55rem 0}
  .cs-tbl td::before{content:attr(data-l);display:block;font:700 .8125rem var(--disp);color:var(--mid)}
}

/* ---------- contact, privacy, 404 ---------- */
.cs-ct{display:grid;gap:2rem 3rem;align-items:start}
@media (min-width:900px){.cs-ct{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}}
.cs-ct-i{display:grid;gap:14px;justify-items:start}
.cs-ct-n{font:700 1.5rem/1.2 var(--disp)}
.cs-ct-area{color:var(--mid)}
.cs-ct-h{color:var(--mid);margin-bottom:.5rem}
.cs-ct-i .cs-ct-h{margin-bottom:0}
.cs-map iframe{display:block;width:100%;height:100%;min-height:340px;border:0;border-radius:24px;background:var(--tint)}
.cs-ct-l{display:grid;gap:2rem 3rem}
@media (min-width:760px){.cs-ct-l{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr)}}
.cs-ct-note{margin-top:2.2rem}
.cs-pvs{max-width:44rem}
.cs-pv{padding:1.5rem 0;border-top:1px solid var(--line)}
.cs-pvs>.cs-prose{padding-bottom:1.5rem}
.cs-nf{max-width:40rem}
.cs-nf .cs-prose{margin:1.2rem 0}
.cs-nf .cs-hl{margin-bottom:1.6rem}
.cs-hubsec .cs-h2+.cs-lede{margin-top:1rem}
.cs-cta{display:grid;gap:1.6rem 3rem;align-items:center}
@media (min-width:860px){.cs-cta{grid-template-columns:minmax(0,1.4fr) auto}}

/* ---------- footer ---------- */
.cs-ft{position:relative;overflow:hidden;background:var(--night);color:var(--sheet);padding:clamp(40px,6vw,72px) 0 0}
.cs-ft::before{content:"";position:absolute;right:-110px;top:-120px;width:340px;height:340px;background:var(--wash);opacity:.1;-webkit-mask:var(--rings) center/contain no-repeat;mask:var(--rings) center/contain no-repeat;pointer-events:none}
.cs-ft-in{position:relative;display:grid;gap:2.4rem 3rem;width:100%;max-width:calc(66rem + 2 * var(--gut));margin-inline:auto;padding-inline:var(--gut)}
@media (min-width:900px){.cs-ft-in{grid-template-columns:minmax(0,.9fr) minmax(0,1.7fr)}.cs-ft-base{grid-column:1/-1}}
.cs-ft-nap{display:grid;gap:.8rem;align-content:start;justify-items:start}
.cs-ft-nap .cs-brand{margin-bottom:.6rem}
.cs-ft-h{font:700 .9375rem/1.3 var(--disp);color:var(--rustl)}
.cs-ft-area{font:italic 400 1rem var(--body);color:rgba(244,241,236,.8)}
.cs-ft-line{max-width:20rem;color:rgba(244,241,236,.92)}
.cs-ft-cols{display:grid;gap:1.8rem 1.6rem;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));align-content:start}
.cs-ft ul{display:grid;margin-top:.5rem}
.cs-ft a:not(.cs-call){color:var(--sheet);text-decoration:none}
.cs-ft a:not(.cs-call):hover{color:var(--rustl);text-decoration:underline}
.cs-ft li a{display:inline-block;padding:.3rem 0;font-size:1rem;line-height:1.35}
.cs-ft-base{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.4rem 1.5rem;margin-top:.6rem;padding:1.2rem 0 1.7rem;border-top:1px solid rgba(244,241,236,.18);font-size:.9375rem;color:rgba(244,241,236,.8)}
.cs-ft-base p{display:flex;gap:1.2rem;flex-wrap:wrap}
.cs-ft-base a{display:inline-block;padding:.35rem 0}

@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
@media print{.cs-rail,.cs-dock{display:none}}
