/* Mark's Arkansas Land Clearing Service: shared design for every page */

@font-face{font-family:"Barlow Condensed";src:url("/uploads/companies/836ae1dd-4f4a-47be-a99e-22a69d188187/assets/fonts/barlow-condensed-800.woff2") format("woff2");font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:"Barlow Condensed";src:url("/uploads/companies/836ae1dd-4f4a-47be-a99e-22a69d188187/assets/fonts/barlow-condensed-700.woff2") format("woff2");font-weight:600 700;font-style:normal;font-display:swap}
@font-face{font-family:"Barlow";src:url("/uploads/companies/836ae1dd-4f4a-47be-a99e-22a69d188187/assets/fonts/barlow-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Barlow";src:url("/uploads/companies/836ae1dd-4f4a-47be-a99e-22a69d188187/assets/fonts/barlow-500.woff2") format("woff2");font-weight:500 600;font-style:normal;font-display:swap}
/* metric-matched fallbacks so the swap does not shift lines */
@font-face{font-family:"BC Fallback";src:local("Arial Narrow"),local("ArialNarrow"),local("Arial");size-adjust:82%;ascent-override:122%;descent-override:24%;line-gap-override:0%}
@font-face{font-family:"Barlow Fallback";src:local("Arial"),local("Helvetica");size-adjust:94%;ascent-override:106%;descent-override:21%;line-gap-override:0%}

:root{
  --night:#0b0f0a;--plate:#141b11;--edge:#1d2719;--edge-hi:#33402c;
  --brown:#3a2412;--brown-mid:#543424;--moss:#706038;
  --cream:#f1e6cc;--day:#efe5cc;--mute:#b9ad8e;
  --go:#08e600;--on-go:#061004;
  --ink:#2a1a0c;--ink-mid:#6b5a3c;
  --warn:#e0a800;--danger:#ff5a3c;
  --display:"Barlow Condensed","BC Fallback","Arial Narrow",sans-serif;
  --text:"Barlow","Barlow Fallback",Arial,sans-serif;
  --shadow:0 18px 40px -18px rgba(0,0,0,.65);
  --cut:14px;
  --chamfer:polygon(0 0,calc(100% - var(--cut)) 0,100% var(--cut),100% 100%,0 100%);
  --wrap:1240px;--gut:clamp(20px,4vw,48px);
  --ease:cubic-bezier(.16,1,.3,1);
  --bar:0px;
  --grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .6 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:88px;background:var(--night);scrollbar-width:thin;scrollbar-color:var(--brown) var(--night);color-scheme:dark}
html::-webkit-scrollbar{width:10px}
html::-webkit-scrollbar-track{background:var(--night)}
html::-webkit-scrollbar-thumb{background:var(--brown);border:2px solid var(--night)}
body{margin:0;background:var(--night);color:var(--cream);font-family:var(--text);font-size:17px;line-height:1.55;font-weight:400;caret-color:var(--go);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}
@media (min-width:900px){body{font-size:18px}}
::selection{background:var(--go);color:var(--on-go)}
img,svg,picture,video,iframe{display:block;max-width:100%}
img{height:auto}
a{color:inherit}
p{margin:0 0 1em;max-width:70ch}
h1,h2,h3,h4{font-family:var(--display);margin:0;text-wrap:balance;font-weight:800}
h1{font-size:clamp(2.5rem,7vw,5.5rem);line-height:.95;letter-spacing:-.01em;text-transform:uppercase}
h2{font-size:clamp(2rem,4.5vw,3.5rem);line-height:.98;letter-spacing:-.005em;text-transform:uppercase}
h3{font-size:1.5rem;line-height:1.1;font-weight:700}
ul,ol{margin:0;padding:0}
button{font:inherit;color:inherit}
:focus{outline:none}
:focus-visible{outline:3px solid var(--go);outline-offset:2px;box-shadow:0 0 0 2px var(--night)}
.day :focus-visible{box-shadow:0 0 0 2px var(--night)}
.num,.tab-num,a[href^="tel:"]{font-variant-numeric:tabular-nums}
.vh{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--go);color:var(--on-go);font:700 16px/1 var(--display);text-transform:uppercase;letter-spacing:.08em;padding:14px 18px;text-decoration:none}
.skip:focus{top:12px}

.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 var(--gut)}
.sec{padding:clamp(72px,10vw,136px) 0;position:relative}
.sec-rule{border-top:2px solid var(--cream)}
.sec-head{display:grid;gap:18px;margin-bottom:clamp(36px,5vw,64px);max-width:860px}
.sec-head p{color:var(--mute);font-size:1.08em;margin:0}
.lead{font-size:1.12em;color:var(--mute)}
.small{font:700 15px/1.3 var(--display);text-transform:uppercase;letter-spacing:.08em}

/* ---------- buttons ---------- */
.btn-call{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:56px;padding:12px 26px;background:var(--go);color:var(--on-go);font:800 22px/1 var(--display);text-transform:uppercase;letter-spacing:.03em;text-decoration:none;border:0;cursor:pointer;font-variant-numeric:tabular-nums;transition:transform .14s var(--ease),filter .2s,box-shadow .2s;box-shadow:0 4px 0 -1px #047a00,var(--shadow)}
.btn-call svg{width:20px;height:20px;flex:none}
.btn-call:hover{filter:brightness(1.07)}
.btn-call:active{transform:translateY(2px);box-shadow:0 2px 0 -1px #047a00,0 8px 20px -12px rgba(0,0,0,.6)}
.day .btn-call{border:2px solid var(--night)}
.btn-call-lg{min-height:64px;font-size:clamp(22px,3vw,30px);padding:14px 32px}
.link-2{display:inline-block;color:var(--cream);font:700 16px/1.2 var(--display);text-transform:uppercase;letter-spacing:.08em;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px;padding:10px 0;transition:color .2s,text-underline-offset .2s}
.link-2:hover{text-underline-offset:9px;color:#fff}
.day .link-2{color:var(--ink)}
.press-note{font-size:15px;color:var(--mute);margin:10px 0 0}

/* ---------- header ---------- */
.hd{position:sticky;top:0;z-index:50;background:var(--brown);border-bottom:2px solid var(--cream)}
.hd-in{display:flex;align-items:center;gap:20px;min-height:72px;max-width:1440px;margin:0 auto;padding:8px var(--gut)}
.hd-brand{display:flex;align-items:center;gap:12px;text-decoration:none;flex:none;min-height:48px}
.hd-brand img{width:48px;height:48px}
.hd-word{display:grid;line-height:.92;font-family:var(--display);text-transform:uppercase}
.hd-word b{font-weight:800;font-size:24px;letter-spacing:.02em}
.hd-word span{font-weight:700;font-size:12.5px;letter-spacing:.12em;color:var(--mute)}
.hd-nav{margin-left:auto}
.hd-nav ul{list-style:none;display:flex;gap:4px}
.hd-nav a{display:block;padding:12px 12px;font:700 16px/1 var(--display);text-transform:uppercase;letter-spacing:.08em;text-decoration:none;color:var(--cream);position:relative}
.hd-nav a::after{content:"";position:absolute;left:12px;right:12px;bottom:6px;height:2px;background:var(--cream);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}
.hd-nav a:hover::after,.hd-nav a[aria-current="page"]::after{transform:scaleX(1)}
.hd-call{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:10px 16px;background:var(--go);color:var(--on-go);font:800 18px/1 var(--display);letter-spacing:.03em;text-decoration:none;white-space:nowrap;transition:transform .14s var(--ease),filter .2s}
.hd-call svg{width:18px;height:18px}
.hd-call:hover{filter:brightness(1.07)}
.hd-call:active{transform:translateY(2px)}
.hd-menu{display:none;width:48px;height:48px;background:transparent;border:2px solid var(--cream);cursor:pointer;place-items:center;flex:none}
.hd-menu span,.hd-menu span::before,.hd-menu span::after{display:block;width:20px;height:2px;background:var(--cream);position:relative;transition:transform .3s var(--ease),opacity .2s}
.hd-menu span::before,.hd-menu span::after{content:"";position:absolute;left:0}
.hd-menu span::before{top:-6px}.hd-menu span::after{top:6px}
.hd-menu[aria-expanded="true"] span{background:transparent}
.hd-menu[aria-expanded="true"] span::before{transform:translateY(6px) rotate(45deg)}
.hd-menu[aria-expanded="true"] span::after{transform:translateY(-6px) rotate(-45deg)}
@media (max-width:1060px){.hd-word span{display:none}.hd-nav a{padding:12px 9px;font-size:15px}}
@media (max-width:900px){
  .hd-in{flex-wrap:wrap;gap:12px}
  .hd-call{margin-left:auto}
  .hd-nav{order:3;width:100%;margin:0}
  .hd-nav ul{overflow-x:auto;padding-bottom:4px}
  html.js-rv .hd-menu{display:grid}
  html.js-rv .hd-nav{display:none}
  html.js-rv .hd-nav.open{display:block}
  html.js-rv .hd-nav ul{flex-direction:column;overflow:visible;border-top:2px solid var(--brown-mid);padding:8px 0}
  html.js-rv .hd-nav a{padding:16px 4px;font-size:18px}
  html.js-rv .hd-nav a::after{left:4px;right:auto;width:40px;bottom:10px}
}
@media (max-width:600px){.hd-word{display:none}.hd-in{min-height:64px}.hd-call{font-size:17px;padding:10px 12px}}
@media (max-width:359px){.hd-call .hd-call-n{display:none}}

/* ---------- stamp strip and live dot ---------- */
.stamp{display:flex;align-items:center;gap:0;min-height:36px;background:var(--brown);color:var(--cream);font:700 13px/1 var(--display);text-transform:uppercase;letter-spacing:.1em;padding:0 14px;overflow:hidden;white-space:nowrap}
.stamp > *{display:inline-flex;align-items:center;gap:8px;padding:0 14px;min-height:36px;border-left:1px solid var(--brown-mid)}
.stamp > *:first-child{border-left:0;padding-left:0}
.stamp .num{font-variant-numeric:tabular-nums}
.stamp-end{margin-left:auto}
.live{position:relative;display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--go);flex:none}
.live::after{content:"";position:absolute;inset:-5px;border-radius:50%;border:2px solid var(--go);opacity:0;animation:live 2.4s var(--ease) infinite}
@keyframes live{0%{transform:scale(.4);opacity:.9}80%,100%{transform:scale(1.5);opacity:0}}

/* ---------- photo frames (stills) ---------- */
.still{position:relative;overflow:hidden;background:var(--plate);box-shadow:var(--shadow)}
.still img{width:100%;height:100%;object-fit:cover}
.still::after{content:"";position:absolute;inset:10px 10px 46px;border:1px solid rgba(241,230,204,.6);pointer-events:none;z-index:2}
.still .stamp{position:absolute;left:0;right:0;bottom:0;z-index:3}
.still-night img{filter:grayscale(1) contrast(1.12) brightness(.7)}
.still-night::before{content:"";position:absolute;inset:0;background:var(--grain);opacity:.2;mix-blend-mode:overlay;z-index:1;pointer-events:none}
.develop img{--d:0;filter:grayscale(calc(1 - var(--d))) brightness(calc(.62 + .38 * var(--d))) contrast(calc(1.14 - .14 * var(--d)))}
.develop::before{content:"";position:absolute;inset:0;background:var(--grain);opacity:calc(.24 * (1 - var(--d, 0)));mix-blend-mode:overlay;z-index:1;pointer-events:none}
html:not(.js) .develop img{filter:none}

/* ---------- hero (homepage) ---------- */
.hero{position:relative;min-height:min(86svh,880px);display:grid;align-items:end;overflow:hidden;background:var(--night);isolation:isolate}
.hero-photo{position:absolute;inset:0;z-index:-2}
.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 60%;transform-origin:60% 55%;animation:push 22s cubic-bezier(.2,.6,.2,1) both}
@keyframes push{from{transform:scale(1.02)}to{transform:scale(1.12)}}
.hero-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,15,10,.92) 0%,rgba(11,15,10,.72) 38%,rgba(11,15,10,.18) 72%,rgba(11,15,10,.05) 100%),linear-gradient(0deg,rgba(11,15,10,.85) 0%,rgba(11,15,10,0) 40%)}
.hero-frame{position:absolute;inset:18px 18px 54px;border:1px solid rgba(241,230,204,.45);z-index:-1;pointer-events:none}
.hero-frame::before,.hero-frame::after{content:"";position:absolute;width:26px;height:26px;border:3px solid var(--cream)}
.hero-frame::before{left:-2px;top:-2px;border-right:0;border-bottom:0}
.hero-frame::after{right:-2px;bottom:-2px;border-left:0;border-top:0}
.hero-body{width:100%;max-width:var(--wrap);margin:0 auto;padding:clamp(96px,12vh,150px) var(--gut) clamp(72px,9vh,104px);display:grid;gap:22px;justify-items:start}
.hero-body h1{max-width:7.8em}
.hero-sub{font-size:clamp(18px,1.6vw,21px);color:var(--cream);max-width:54ch;margin:0}
.hero-acts{display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px;margin-top:6px}
.hero .stamp{position:absolute;left:0;right:0;bottom:0}
.lines-tabs{position:absolute;top:26px;right:var(--gut);display:flex;gap:2px;z-index:2}
.lines-tabs a{display:grid;gap:3px;padding:9px 14px 10px;background:rgba(11,15,10,.78);border:1px solid rgba(241,230,204,.35);text-decoration:none;transition:background .2s,border-color .2s,transform .2s var(--ease)}
.lines-tabs a:hover{background:var(--brown);border-color:var(--cream);transform:translateY(-2px)}
.lines-tabs small{font:700 12px/1 var(--display);text-transform:uppercase;letter-spacing:.12em;color:var(--mute)}
.lines-tabs b{font:800 17px/1 var(--display);letter-spacing:.03em;font-variant-numeric:tabular-nums}
@media (max-width:900px){
  .lines-tabs{position:static;flex-wrap:wrap;width:auto;margin:0 var(--gut) 64px;justify-self:start}
  .hero{min-height:auto;align-content:end}
  .hero-body{padding-top:56px;padding-bottom:26px}
}
@media (max-width:600px){
  .hero-acts .btn-call{width:100%}
  .lines-tabs{justify-self:stretch}
  .lines-tabs{display:grid;grid-template-columns:1fr;gap:2px}
  .lines-tabs a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px}
  .lines-tabs b{font-size:17px}
  .hero-frame{inset:10px 10px 46px}
  .hero .stamp .stamp-hide{display:none}
}

/* ---------- promise frames ---------- */
.frames > li{display:grid}
.frames{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;counter-reset:f}
.frame{position:relative;display:grid;grid-template-rows:auto 1fr auto;min-height:330px;background:var(--plate);clip-path:var(--chamfer);box-shadow:inset 0 0 0 1px var(--edge);transition:box-shadow .3s,background .3s}
.frame-top{display:flex;justify-content:space-between;align-items:flex-start;padding:22px 24px 0}
.frame-n{font:800 clamp(56px,6vw,84px)/.8 var(--display);color:var(--cream);font-variant-numeric:tabular-nums;letter-spacing:-.02em;transition:color .4s}
.frame-marks{width:34px;height:34px;border-top:2px solid var(--moss);border-right:2px solid var(--moss);margin-right:6px}
.frame p{padding:20px 24px 26px;margin:0;font-size:1.08em;line-height:1.5;color:var(--cream);align-self:end}
.frame .stamp{background:var(--brown);transition:background .4s}
.frame.is-now{box-shadow:inset 0 0 0 1px var(--mute);background:var(--edge)}
.frame.is-now .frame-n{color:var(--go)}
@media (max-width:900px){.frames{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.frames{grid-template-columns:1fr}.frame{min-height:0}}

/* promises line (town pages, hubs) */
.pline{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);border-top:2px solid var(--cream);border-bottom:2px solid var(--cream)}
.pline li{padding:26px 26px 28px;border-left:1px solid var(--edge-hi);display:grid;gap:10px;align-content:start}
.pline li:first-child{border-left:0;padding-left:0}
.pline b{font:800 44px/.85 var(--display);font-variant-numeric:tabular-nums;color:var(--cream)}
.pline span{color:var(--cream)}
@media (max-width:900px){.pline{grid-template-columns:1fr}.pline li{border-left:0;border-top:1px solid var(--edge-hi);padding:22px 0}.pline li:first-child{border-top:0}}

/* ---------- service plates ---------- */
.plates{list-style:none;display:grid;grid-template-columns:repeat(12,1fr);gap:18px}
.plates > li{grid-column:span 4;filter:drop-shadow(0 18px 22px rgba(0,0,0,.4));transition:transform .35s var(--ease)}
.plates > li.wide{grid-column:span 6}
.plate{display:grid;grid-template-rows:auto 1fr;height:100%;background:var(--plate);clip-path:var(--chamfer);text-decoration:none;box-shadow:inset 0 0 0 1px var(--edge);transition:box-shadow .3s,background .3s}
.plate-img{aspect-ratio:16/10;overflow:hidden;position:relative;background:var(--edge)}
.wide .plate-img{aspect-ratio:16/9}
.plate-img img{width:100%;height:100%;object-fit:cover;filter:saturate(.85) brightness(.92);transition:transform .8s var(--ease),filter .5s}
.plate-body{display:grid;gap:8px;padding:20px 22px 22px;align-content:start;position:relative}
.plate-body h3{display:flex;justify-content:space-between;gap:12px;align-items:baseline}
.plate-body h3 svg{width:22px;height:22px;flex:none;transition:transform .35s var(--ease)}
.plate-body p{margin:0;color:var(--mute);font-size:.95em}
.plates > li:hover{transform:translateY(-4px)}
.plates > li:hover .plate{box-shadow:inset 0 0 0 1px var(--mute);background:var(--edge)}
.plates > li:hover .plate-img img{transform:scale(1.04);filter:saturate(1) brightness(1)}
.plates > li:hover h3 svg{transform:translateX(4px)}
@media (max-width:900px){.plates > li,.plates > li.wide{grid-column:span 6}}
@media (max-width:600px){.plates{gap:14px}.plates > li,.plates > li.wide{grid-column:span 12}}

/* compact service list (town pages) */
.svc-list{list-style:none;display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--edge-hi)}
.svc-list li{border-bottom:1px solid var(--edge-hi)}
.svc-list li:nth-child(odd){border-right:1px solid var(--edge-hi)}
.svc-list a{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;text-decoration:none;transition:background .25s}
.svc-list a > span{transition:transform .35s var(--ease)}
.svc-list a b{font:700 21px/1.1 var(--display)}
.svc-list a span{display:block;color:var(--mute);font-size:.92em;margin-top:4px}
.svc-list a svg{width:20px;height:20px;flex:none;transition:transform .3s var(--ease)}
.svc-list a:hover{background:var(--plate)}
.svc-list a:hover > span{transform:translateX(6px)}
.svc-list a:hover svg{transform:translateX(4px)}
@media (max-width:700px){.svc-list{grid-template-columns:1fr}.svc-list li:nth-child(odd){border-right:0}}

/* ---------- process steps ---------- */
.steps-wrap{position:relative}
.steps-track{width:100%;height:70px;margin-bottom:8px;overflow:visible}
.steps-track .trk{fill:none;stroke:var(--moss);stroke-width:2;stroke-dasharray:6 7}
.steps-track .trk-on{fill:none;stroke:var(--cream);stroke-width:3}
.steps-track .stake line{stroke:var(--cream);stroke-width:3}
.steps-track .stake path{fill:var(--brown-mid);stroke:var(--cream);stroke-width:1.5}
.steps-track .stake.last path{fill:var(--cream)}
.steps{list-style:none;display:grid;grid-template-columns:repeat(6,1fr);gap:18px}
.step{display:grid;gap:10px;align-content:start;padding-top:16px;border-top:2px solid var(--edge-hi)}
.step-n{font:800 40px/.85 var(--display);font-variant-numeric:tabular-nums;color:var(--cream)}
.step h3{font-size:1.3rem}
.step p{margin:0;color:var(--mute);font-size:.95em}
@media (max-width:1100px){.steps{grid-template-columns:repeat(3,1fr);row-gap:36px}.steps-track{display:none}}
@media (max-width:600px){
  .steps{grid-template-columns:1fr;gap:0;position:relative;padding-left:40px}
  .steps::before{content:"";position:absolute;left:11px;top:6px;bottom:6px;width:2px;background:repeating-linear-gradient(var(--moss) 0 6px,transparent 6px 13px)}
  .step{border-top:0;padding:0 0 30px;position:relative}
  .step::before{content:"";position:absolute;left:-36px;top:4px;width:16px;height:16px;background:var(--brown-mid);border:2px solid var(--cream);transform:rotate(45deg)}
  .step:last-child::before{background:var(--cream)}
}

/* ---------- daylight band ---------- */
.day{background:var(--day);color:var(--ink);position:relative}
.day::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:var(--night)}
.day h2,.day h3{color:var(--ink)}
.day .sec-head p,.day .lead{color:var(--ink-mid)}
.day p{color:var(--ink)}
.ground-grid{display:grid;grid-template-columns:5fr 7fr;gap:clamp(28px,4vw,64px);align-items:start}
.ground-photo{aspect-ratio:4/3;border:2px solid var(--ink)}
.ground-photo.still::after{border-color:rgba(241,230,204,.75)}
.cream-plates{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:clamp(36px,5vw,56px)}
.cream-plate{background:var(--cream);border:2px solid var(--ink);clip-path:var(--chamfer);padding:24px 26px 26px;display:grid;gap:12px;align-content:start}
.cream-plate .tag{font:800 15px/1 var(--display);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-mid)}
.cream-plate p{margin:0;font-size:1.06em;color:var(--ink)}
@media (max-width:900px){.ground-grid{grid-template-columns:1fr}.cream-plates{grid-template-columns:1fr}}

/* cross-section drawing */
.xsec{position:relative;margin-top:clamp(40px,6vw,72px)}
.xsec svg{width:100%;height:auto}
.xsec .sky{fill:none}
.xsec .soil{fill:#8a7550}
.xsec .sub{fill:#6f5c3d}
.xsec .mulch{fill:var(--moss)}
.xsec .mulch-dots circle{fill:#4c4126}
.xsec .stump{fill:#543424;stroke:var(--ink);stroke-width:2}
.xsec .roots{fill:none;stroke:#543424;stroke-width:5;stroke-linecap:round}
.xsec .line{fill:none;stroke:var(--ink);stroke-width:2}
.xsec .tree path{fill:#3d4a2a}
.xsec .tree rect{fill:#3a2412}
.xsec .pile path{fill:#5a4a2c;stroke:var(--ink);stroke-width:1.5}
.xsec .lead{fill:none;stroke:var(--ink);stroke-width:2}
.xsec .lead-dot{fill:var(--ink)}
.xsec .dim{stroke:var(--ink);stroke-width:2}
.xsec-n{font:800 22px var(--display);fill:var(--cream)}
.xsec-nb{fill:var(--ink)}
.xsec-labs{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:22px;counter-reset:x}
.xsec-lab{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;align-items:start;border-top:2px solid var(--ink);padding-top:14px}
.xsec-lab i{grid-row:span 2;display:grid;place-items:center;width:34px;height:34px;background:var(--ink);color:var(--cream);font:800 19px/1 var(--display);font-style:normal}
.xsec-lab b{font:800 21px/1.1 var(--display);text-transform:uppercase;letter-spacing:.02em;color:var(--ink)}
.xsec-lab span{color:var(--ink);font-size:.98em}
@media (max-width:900px){.xsec-labs{grid-template-columns:1fr}}
.xsec-art{overflow:hidden}
@media (max-width:600px){.xsec-art svg{width:170%;max-width:none;margin-left:-45%}}

/* ---------- reviews ---------- */
.revs{display:grid;grid-template-columns:7fr 5fr;gap:clamp(28px,4vw,64px);align-items:start}
.rev-score{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-bottom:28px}
.rev-on{font:800 clamp(22px,2.4vw,30px)/1 var(--display);text-transform:uppercase;letter-spacing:.02em}
.rev-score b{font:800 clamp(64px,8vw,104px)/.8 var(--display);font-variant-numeric:tabular-nums}
.stars{display:inline-flex;gap:3px}
.stars svg{width:20px;height:20px;fill:currentColor}
.rev-big{margin:0;padding:30px 0 0;border-top:2px solid currentColor}
.rev-big p{font:700 clamp(26px,2.8vw,38px)/1.12 var(--display);max-width:26ch;margin:0 0 18px;text-wrap:balance}
.rev-by{font:700 15px/1.3 var(--display);text-transform:uppercase;letter-spacing:.1em;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.rev-by .stars svg{width:15px;height:15px}
.rev-list{list-style:none;display:grid;gap:0;border-top:2px solid currentColor}
.rev-list li{padding:20px 0;border-bottom:1px solid rgba(42,26,12,.25)}
.rev-list blockquote{margin:0}
.rev-list blockquote p{margin:0 0 10px;font-size:1.08em}
.rev-quiet{margin-top:16px;font-size:.95em}
.day .rev-quiet{color:var(--ink-mid)}
.rev-src{margin-top:26px}
@media (max-width:900px){.revs{grid-template-columns:1fr}}
.night-rev{background:var(--plate);clip-path:var(--chamfer);padding:clamp(24px,4vw,40px);box-shadow:inset 0 0 0 1px var(--edge)}
.night-rev .rev-big{border-color:var(--cream)}

/* ---------- map with tabs ---------- */
.mapx{display:grid;grid-template-columns:4fr 8fr;gap:0;background:var(--plate);box-shadow:inset 0 0 0 1px var(--edge),var(--shadow)}
.map-tabs{display:grid;align-content:start;border-right:1px solid var(--edge-hi)}
.map-tabs button,.map-tabs a.map-tab{display:grid;gap:4px;text-align:left;padding:22px 24px;background:transparent;border:0;border-bottom:1px solid var(--edge-hi);cursor:pointer;text-decoration:none;position:relative;transition:background .25s}
.map-tabs b{display:flex;align-items:center;gap:10px}
.map-tabs b::before{content:"";width:10px;height:10px;flex:none;border:2px solid var(--mute);transition:background .25s,border-color .25s}
.map-tabs button[aria-selected="true"]{background:var(--edge)}
.map-tabs button[aria-selected="true"] b::before{background:var(--go);border-color:var(--go)}
.map-tabs button:hover,.map-tabs a.map-tab:hover{background:var(--edge)}
.map-tabs b{font:800 24px/1 var(--display);text-transform:uppercase}
.map-tabs span{color:var(--mute);font-size:.95em}
.map-frame{position:relative;min-height:420px;background:var(--edge)}
.map-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:grayscale(.35) contrast(1.05)}
.map-open{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding:16px 24px;border-top:1px solid var(--edge-hi)}
.map-side{display:flex;flex-direction:column}
.map-side .map-open{margin-top:auto;border-top:0}
.map-one{display:grid;grid-template-columns:1fr;background:var(--plate);box-shadow:inset 0 0 0 1px var(--edge),var(--shadow)}
.map-one .map-frame{min-height:380px}
@media (max-width:900px){.mapx{grid-template-columns:minmax(0,1fr)}.map-tabs button,.map-tabs a.map-tab{min-width:0}.map-tabs{border-right:0;grid-template-columns:repeat(3,1fr)}.map-tabs button,.map-tabs a.map-tab{padding:16px 14px;border-right:1px solid var(--edge-hi)}.map-tabs b{font-size:19px}.map-tabs span{font-size:.85em}.map-frame{min-height:340px}}
@media (max-width:600px){.map-tabs span{display:none}.map-tabs b{font-size:15px;line-height:1.05}.map-tabs button,.map-tabs a.map-tab{padding:14px 8px}.map-open{padding:12px 14px}}

/* ---------- region quilt ---------- */
.quilt{display:grid;grid-template-columns:repeat(6,1fr);gap:2px;background:var(--brown-mid);border:2px solid var(--brown-mid);margin-top:clamp(36px,5vw,56px)}
.patch{background:var(--plate);padding:22px 22px 24px;display:grid;gap:10px;align-content:start;grid-column:span 2;transition:background .3s}
.patch.big{grid-column:span 3;grid-row:span 2}
.patch.full{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;background:var(--brown)}
.patch:hover{background:var(--edge)}
.patch.full:hover{background:var(--brown)}
.patch h3 a{text-decoration:none;display:inline-flex;gap:10px;align-items:baseline}
.patch h3 a svg{width:18px;height:18px;transition:transform .3s var(--ease)}
.patch h3 a:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}
.patch h3 a:hover svg{transform:translateX(3px)}
.patch .cty{font:500 15px/1.45 var(--text);color:var(--mute);margin:0}
.patch ul{list-style:none;display:flex;flex-wrap:wrap;gap:4px 16px}
.patch li a{display:inline-block;padding:4px 0;color:var(--cream);text-decoration:underline;text-decoration-color:rgba(241,230,204,.35);text-underline-offset:4px;transition:text-decoration-color .2s}
.patch li a:hover{text-decoration-color:var(--cream)}
.patch.big h3{font-size:2rem}
@media (max-width:900px){.quilt{grid-template-columns:repeat(2,1fr)}.patch,.patch.big{grid-column:span 1;grid-row:auto}.patch.big{grid-column:span 2}}
@media (max-width:600px){.quilt{grid-template-columns:1fr}.patch,.patch.big{grid-column:1 / -1}}

/* ---------- FAQ ---------- */
.faq{display:grid;grid-template-columns:4fr 8fr;gap:clamp(28px,5vw,80px);align-items:start}
.faq-side{position:sticky;top:110px;display:grid;gap:18px}
.faq-side p{color:var(--mute);margin:0}
.faq-list{border-top:2px solid var(--cream)}
.faq-item{border-bottom:1px solid var(--edge-hi)}
.faq-item summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:1fr 28px;gap:18px;align-items:center;padding:22px 0;font:700 clamp(21px,2vw,25px)/1.2 var(--display);transition:color .2s}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary:hover{color:#fff}
.faq-x{position:relative;width:28px;height:28px;border:2px solid var(--cream)}
.faq-x::before,.faq-x::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2px;background:var(--cream);transform:translate(-50%,-50%);transition:transform .3s var(--ease)}
.faq-x::after{transform:translate(-50%,-50%) rotate(90deg)}
.faq-item[open] .faq-x::after{transform:translate(-50%,-50%) rotate(0)}
.faq-item[open] .faq-x{border-color:var(--go)}
.faq-a{padding:0 48px 24px 0}
.faq-a p{margin:0;color:var(--mute)}
.faq-a p + p{margin-top:.8em}
.faq-item[open] .faq-a{animation:faqin .45s var(--ease)}
@keyframes faqin{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
@media (max-width:900px){.faq{grid-template-columns:1fr}.faq-side{position:static}.faq-a{padding-right:0}}

/* ---------- live claims ---------- */
.claims{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);border-top:2px solid var(--cream);border-bottom:2px solid var(--cream)}
.claims li{padding:30px 24px 32px;border-left:1px solid var(--edge-hi);display:grid;gap:10px;align-content:start}
.claims li:first-child{border-left:0;padding-left:0}
.claims b{font:800 clamp(52px,6vw,84px)/.85 var(--display);font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.claims li > span{font:500 16px/1.35 var(--text);color:var(--mute)}
@media (max-width:900px){.claims{grid-template-columns:1fr 1fr}.claims li:nth-child(3){border-left:0;padding-left:0}.claims li:nth-child(n+3){border-top:1px solid var(--edge-hi)}}
@media (max-width:420px){.claims b{font-size:46px}.claims li{padding:22px 14px 24px}}

/* ---------- call close ---------- */
.close{padding:clamp(72px,10vw,128px) 0 clamp(64px,8vw,104px)}
.close h2{max-width:18ch;margin-bottom:28px}
.close-band{display:grid;grid-template-columns:1fr auto;align-items:center;gap:20px 40px;padding:clamp(26px,4vw,44px) clamp(24px,4vw,48px);background:var(--go);color:var(--on-go);text-decoration:none;clip-path:var(--chamfer);transition:transform .16s var(--ease),filter .2s}
.close-band:hover{filter:brightness(1.06)}
.close-band:active{transform:translateY(2px)}
.close-band .cb-n{font:800 clamp(44px,8vw,112px)/.85 var(--display);letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.close-band .cb-t{display:inline-block;margin-top:10px;font:600 clamp(17px,1.6vw,21px)/1.35 var(--text);max-width:44ch}
.close-band svg{width:clamp(44px,6vw,72px);height:clamp(44px,6vw,72px)}
.close p{color:var(--mute);margin-top:18px}
@media (max-width:600px){.close-band{grid-template-columns:1fr;padding:22px 18px}.close-band svg{display:none}.close-band .cb-n{font-size:clamp(30px,10vw,44px);white-space:nowrap}}

/* ---------- breadcrumb trail ---------- */
.trail{border-bottom:1px solid var(--edge-hi);background:var(--night)}
.trail ol{list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:0;max-width:var(--wrap);margin:0 auto;padding:12px var(--gut)}
.trail li{display:inline-flex;align-items:center;font:700 14px/1 var(--display);text-transform:uppercase;letter-spacing:.1em;color:var(--mute)}
.trail li + li::before{content:"";width:22px;height:2px;background:var(--moss);margin:0 10px}
.trail a{text-decoration:none;padding:8px 0;color:var(--cream)}
.trail a:hover{text-decoration:underline;text-underline-offset:4px}
.trail [aria-current]{color:var(--go)}

/* ---------- town hero (split, framed still) ---------- */
.thero{padding:clamp(40px,6vw,80px) 0 clamp(56px,7vw,96px);position:relative}
.thero-grid{display:grid;grid-template-columns:6fr 5fr;gap:clamp(28px,5vw,72px);align-items:center}
.thero-text{display:grid;gap:22px;justify-items:start}
.thero h1{font-size:clamp(2.5rem,5vw,4.25rem)}
.thero .still{aspect-ratio:5/4}
.thero .still img{transform-origin:50% 60%;animation:push 22s cubic-bezier(.2,.6,.2,1) both}
@media (max-width:900px){.thero-grid{grid-template-columns:1fr}.thero .still{aspect-ratio:16/10}}
@media (max-width:600px){.thero-text .btn-call{width:100%}}

/* town facts plate */
.facts{display:grid;grid-template-columns:repeat(4,1fr);background:var(--plate);clip-path:var(--chamfer);box-shadow:inset 0 0 0 1px var(--edge)}
.facts div{padding:24px 24px 26px;border-left:1px solid var(--edge-hi);display:grid;gap:8px;align-content:start}
.facts div:first-child{border-left:0}
.facts dt{font:700 14px/1 var(--display);text-transform:uppercase;letter-spacing:.1em;color:var(--mute)}
.facts dd{margin:0;font:800 clamp(30px,3.4vw,44px)/.95 var(--display);font-variant-numeric:tabular-nums}
.facts dd small{display:block;font:500 15px/1.4 var(--text);color:var(--mute);margin-top:8px;letter-spacing:0;text-transform:none}
@media (max-width:900px){.facts{grid-template-columns:1fr 1fr}.facts div:nth-child(3){border-left:0}.facts div:nth-child(n+3){border-top:1px solid var(--edge-hi)}}
@media (max-width:420px){.facts{grid-template-columns:1fr}.facts div{border-left:0;border-top:1px solid var(--edge-hi)}.facts div:first-child{border-top:0}}

/* nearby towns ruler */
.ruler{list-style:none;position:relative;display:grid;grid-template-columns:repeat(var(--n,8),1fr);margin-top:28px;padding-top:34px}
.ruler::before{content:"";position:absolute;left:0;right:0;top:12px;height:2px;background:var(--cream)}
.ruler li{position:relative;display:grid;gap:4px;padding-right:8px}
.ruler li::before{content:"";position:absolute;top:-28px;left:0;width:2px;height:16px;background:var(--cream)}
.ruler li.home::before{background:var(--go);width:4px;height:20px;top:-30px}
.ruler b{font:800 26px/1 var(--display);font-variant-numeric:tabular-nums}
.ruler span{font:700 14px/1.2 var(--display);text-transform:uppercase;letter-spacing:.06em;color:var(--mute)}
.ruler a{color:var(--cream)}
@media (max-width:900px){.ruler{grid-template-columns:1fr 1fr;row-gap:22px;padding-top:0}.ruler::before{display:none}.ruler li{border-top:2px solid var(--cream);padding-top:12px}.ruler li::before{display:none}.ruler li.home{border-top-color:var(--go)}}

.split{display:grid;grid-template-columns:5fr 7fr;gap:clamp(28px,5vw,80px);align-items:start}
@media (max-width:900px){.split{grid-template-columns:1fr}}
.prose p{color:var(--cream)}
.prose p.m{color:var(--mute)}

/* ---------- footer ---------- */
.ft{background:var(--night);border-top:2px solid var(--cream);padding:clamp(56px,7vw,88px) 0 0}
.ft-grid{display:grid;grid-template-columns:3fr 2fr 2fr 3fr;gap:clamp(28px,4vw,56px)}
.ft-brand{display:grid;gap:16px;align-content:start}
.ft-brand img{width:132px;height:132px}
.ft-brand p{color:var(--mute);margin:0;font-size:.95em;max-width:32ch}
.ft h2{font:700 15px/1 var(--display);letter-spacing:.12em;color:var(--mute);margin-bottom:16px;text-transform:uppercase}
.ft ul{list-style:none;display:grid;gap:2px}
.ft ul a{display:inline-block;padding:7px 0;text-decoration:none;color:var(--cream);font:700 17px/1.2 var(--display);text-transform:uppercase;letter-spacing:.05em}
.ft ul a:hover{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:2px}
.ft-lines li{display:grid;gap:2px;padding:8px 0;border-bottom:1px solid var(--edge-hi)}
.ft-lines li small{font:700 13px/1.2 var(--display);text-transform:uppercase;letter-spacing:.1em;color:var(--mute)}
.ft-lines a{font:800 24px/1.1 var(--display)!important;letter-spacing:.02em!important;padding:2px 0!important}
.ft-email{margin-top:18px}
.ft-email a{text-transform:none!important;font:500 16px/1.3 var(--text)!important;letter-spacing:0!important;word-break:break-all}
.ft-base{margin-top:clamp(40px,5vw,64px);border-top:1px solid var(--edge-hi)}
.ft-base .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:18px;padding-bottom:22px;color:var(--mute);font-size:.88em}
.ft-legal{display:flex!important;flex-wrap:wrap;gap:4px 20px!important}
.ft-legal a{font:500 15px/1.2 var(--text)!important;text-transform:none!important;letter-spacing:0!important;color:var(--mute)!important}
@media (max-width:900px){.ft-grid{grid-template-columns:1fr 1fr}.ft-brand{grid-column:1 / -1}}
@media (max-width:600px){.ft-grid{grid-template-columns:1fr}}

/* ---------- sticky call bar (phones) ---------- */
.sticky-call{display:none}
@media (max-width:900px){
  .sticky-call{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;padding:8px 10px calc(8px + env(safe-area-inset-bottom));background:var(--night);border-top:2px solid var(--cream);gap:8px}
  .sticky-call a{flex:1;min-height:52px;font-size:21px;padding:10px 14px}
  .sticky-call .sc-live{display:flex;align-items:center;gap:7px;font:700 13px/1 var(--display);letter-spacing:.1em;color:var(--cream);text-transform:uppercase;padding:0 6px}
  body{padding-bottom:calc(72px + env(safe-area-inset-bottom))}
}

/* ---------- motion: hidden states only under the script's class ---------- */
html.js-rv .rv{opacity:0;transform:translateY(26px);transition:opacity .9s var(--ease),transform 1s var(--ease);transition-delay:var(--dl,0ms)}
html.js-rv .rv.in{opacity:1;transform:none}
html.js-rv .rv-l{opacity:0;transform:translateX(-30px);transition:opacity .9s var(--ease),transform 1s var(--ease);transition-delay:var(--dl,0ms)}
html.js-rv .rv-l.in{opacity:1;transform:none}
html.js-rv .wipe > .frame{clip-path:polygon(0 100%,100% 100%,100% 100%,100% 100%,0 100%);transition:clip-path 1.1s cubic-bezier(.7,0,.2,1),box-shadow .3s;transition-delay:var(--dl,0ms)}
html.js-rv .wipe.in > .frame{clip-path:var(--chamfer)}
html.js-rv .wipe .frame-n{transform:translateY(30px);opacity:0;transition:transform .9s var(--ease),opacity .6s,color .4s;transition-delay:calc(var(--dl,0ms) + 450ms)}
html.js-rv .wipe.in .frame-n{transform:none;opacity:1}
html.js-rv .plates > li.rv{transform:translateY(34px)}
html.js-rv .plates > li.rv.in{transform:none}
html.js-rv .plates > li.rv.in:hover{transform:translateY(-4px)}
/* drawn track */
html.js-rv .draw .trk-on{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 2.2s cubic-bezier(.6,0,.2,1)}
html.js-rv .draw.in .trk-on{stroke-dashoffset:0}
html.js-rv .draw .stake{opacity:0;transform:translateY(-10px);transition:opacity .5s,transform .6s var(--ease);transition-delay:calc(var(--k) * 240ms + 80ms)}
html.js-rv .draw.in .stake{opacity:1;transform:none}
html.js-rv .draw .step{opacity:0;transform:translateY(16px);transition:opacity .7s var(--ease),transform .8s var(--ease);transition-delay:calc(var(--k) * 240ms + 160ms)}
html.js-rv .draw.in .step{opacity:1;transform:none}
/* cross-section, layer by layer, then leader lines and labels */
html.js-rv .xsec [data-l]{opacity:0;transform:translateY(14px);transition:opacity .8s var(--ease),transform .9s var(--ease);transition-delay:calc(var(--l) * 220ms)}
html.js-rv .xsec.in [data-l]{opacity:1;transform:none}
html.js-rv .xsec .lead{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .9s var(--ease);transition-delay:calc(1400ms + var(--q) * 250ms)}
html.js-rv .xsec.in .lead{stroke-dashoffset:0}
html.js-rv .xsec .callout{opacity:0;transition:opacity .5s;transition-delay:calc(1900ms + var(--q) * 250ms)}
html.js-rv .xsec.in .callout{opacity:1}
html.js-rv .xsec .xsec-lab{opacity:0;transform:translateY(12px);transition:opacity .7s var(--ease),transform .8s var(--ease);transition-delay:calc(1900ms + var(--q) * 250ms)}
html.js-rv .xsec.in .xsec-lab{opacity:1;transform:none}
.xsec svg [data-l]{transform-box:fill-box}

/* Motion runs for every visitor, reduce-motion devices included (owner ruling, every site). Nothing here switches it off. */


.sec-tight{padding:0 0 clamp(8px,2vw,24px)}

/* daylight overrides for shared parts */
.day .ruler::before,.day .ruler li::before,.day .ruler li.home::before{background:var(--ink)}
.day .ruler span{color:var(--ink-mid)}
.day .ruler a{color:var(--ink);text-decoration-thickness:2px;text-underline-offset:4px}
.day .night-rev{background:var(--cream);box-shadow:inset 0 0 0 2px var(--ink)}
.day .rev-big{border-color:var(--ink)}
@media (max-width:900px){.day .ruler li,.day .ruler li.home{border-top-color:var(--ink)}}

/* service pages */
/* question frames: question, the fear count, the promise */
.frame.ask{grid-template-rows:auto auto auto 1fr auto;min-height:0}
.frame.ask h3{padding:18px 24px 0;font-size:clamp(24px,2.2vw,30px);line-height:1.02;text-transform:uppercase;letter-spacing:.01em;color:var(--cream)}
.frame.ask .fear{display:flex;gap:10px;align-items:baseline;align-self:start;padding:12px 24px 0;font:600 15px/1.4 var(--text);color:var(--mute)}
.frame.ask .fear::before{content:"";flex:none;width:18px;height:2px;background:var(--moss);transform:translateY(-4px)}
.frame.ask p:not(.fear){padding:16px 24px 24px;align-self:start}
/* plates that are not links */
.plates.lc > li:hover,html.js-rv .plates.lc > li.rv.in:hover{transform:none}
.plates.lc > li:hover .plate{box-shadow:inset 0 0 0 1px var(--edge);background:var(--plate)}
.plates.lc > li:hover .plate-img img{transform:none;filter:saturate(.85) brightness(.92)}
.plates.lc .plate-body h3{text-transform:uppercase;font-size:clamp(22px,2vw,27px)}
.plates.lc .plate-body p{color:var(--cream)}
.plates.lc .plate-body a{color:var(--cream);text-decoration-thickness:2px;text-underline-offset:4px;text-decoration-color:var(--moss)}
.plates.lc .plate-body a:hover{text-decoration-color:var(--cream)}
/* three ways to clear, side by side */
.cmp{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.cmp-col{display:grid;grid-template-rows:auto 1fr auto;gap:14px;align-content:start;background:var(--plate);clip-path:var(--chamfer);box-shadow:inset 0 0 0 1px var(--edge);padding:26px 26px 22px}
.cmp-col.on{background:var(--edge);box-shadow:inset 0 0 0 2px var(--cream)}
.cmp-col h3{font-size:clamp(26px,2.4vw,34px);text-transform:uppercase;line-height:1}
.cmp-col dl{margin:0;display:grid}
.cmp-col dl div{display:grid;gap:4px;padding:14px 0;border-top:1px solid var(--edge-hi)}
.cmp-col dt{font:700 13px/1 var(--display);text-transform:uppercase;letter-spacing:.12em;color:var(--mute)}
.cmp-col dd{margin:0;color:var(--cream)}
.cmp-col .link-2{justify-self:start}
@media (max-width:900px){.cmp{grid-template-columns:1fr}}
/* rules with their source */
.pline.rules h3 b{font-size:clamp(30px,3vw,40px);text-transform:uppercase}
.pline.rules .src{font:500 14px/1.4 var(--text);color:var(--mute);padding-top:8px;border-top:1px solid var(--edge-hi)}
.pline.rules a{color:var(--cream);text-decoration-thickness:2px;text-underline-offset:4px}
/* proof still and cleared-land drawing parts */
.proof-photo{aspect-ratio:3/2}
.xsec .fill{fill:#a08a5e}
.xsec .gone{fill:none;stroke:var(--ink);stroke-width:2;stroke-dasharray:6 6;opacity:.55}
.xsec .flag{fill:var(--danger);stroke:var(--ink);stroke-width:1.5}
@media (max-width:900px){.hero.svc .hero-body{padding-bottom:72px}}
/* >>> legal */
/* legal pages (privacy, terms, accessibility): one readable column */
.lg{padding:clamp(40px,6vw,80px) 0 clamp(48px,7vw,96px)}
.lg-head,.lg-body{max-width:46rem}
.lg h1{font-size:clamp(2.75rem,6.5vw,5rem)}
.lg-date{margin:20px 0 0;font:700 15px/1.2 var(--display);text-transform:uppercase;letter-spacing:.1em;color:var(--mute)}
.lg-date time{color:var(--cream)}
.lg-intro{margin:22px 0 0;font-size:1.12em;color:var(--cream)}
.lg-plain{margin-top:clamp(28px,4vw,44px);padding:clamp(22px,3.2vw,34px) clamp(22px,3.2vw,36px) clamp(24px,3.4vw,36px);background:var(--plate);clip-path:var(--chamfer);box-shadow:inset 0 0 0 1px var(--edge-hi),var(--shadow)}
.lg-plain h2{font-size:clamp(1.6rem,2.8vw,2.1rem);margin-bottom:18px}
.lg-plain ul{list-style:none;display:grid;gap:12px}
.lg-plain li{position:relative;padding-left:28px;color:var(--cream);font-size:1.04em}
.lg-plain li::before{content:"";position:absolute;left:0;top:.55em;width:10px;height:10px;background:var(--go)}
.lg-toc{margin-top:clamp(28px,4vw,40px);padding-top:18px;border-top:2px solid var(--cream)}
.lg-toc h2{font:700 15px/1 var(--display);letter-spacing:.12em;color:var(--mute);margin-bottom:10px}
.lg-toc ol{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:0 28px}
.lg-toc a{display:block;padding:9px 0;border-bottom:1px solid var(--edge-hi);font:700 17px/1.2 var(--display);text-transform:uppercase;letter-spacing:.06em;text-decoration:none;color:var(--cream);transition:color .2s,padding-left .3s var(--ease)}
.lg-toc a:hover{color:#fff;padding-left:8px}
.lg-body > section{margin-top:clamp(40px,5.5vw,64px);padding-top:clamp(32px,4.5vw,48px);border-top:1px solid var(--edge-hi)}
.lg-body h2{font-size:clamp(1.85rem,3.6vw,2.6rem);margin-bottom:20px}
.lg-body h3{font-size:1.3rem;margin:28px 0 10px}
.lg-body p,.lg-body li{color:var(--cream)}
.lg-body ul{padding-left:1.25em;margin:0 0 1em;display:grid;gap:8px;max-width:68ch}
.lg-body li::marker{color:var(--go)}
.lg-body a:not(.btn-call){text-decoration-thickness:2px;text-underline-offset:4px;text-decoration-color:var(--moss);transition:text-decoration-color .2s,color .2s}
.lg-body a:not(.btn-call):hover{color:#fff;text-decoration-color:var(--go)}
.lg-body a[href^="tel:"]{font-weight:600;white-space:nowrap}
.lg-tools{margin:8px 0 1.2em;border-top:2px solid var(--cream)}
.lg-tools div{display:grid;grid-template-columns:minmax(0,13rem) minmax(0,1fr);gap:8px 28px;padding:20px 0;border-bottom:1px solid var(--edge-hi)}
.lg-tools dt{font:800 21px/1.1 var(--display);text-transform:uppercase;letter-spacing:.02em}
.lg-tools dd{margin:0}
.lg-tools dd p{margin:0 0 .6em}
.lg-tools dd p:last-child{margin-bottom:0}
.lg-tools dd ul{margin:.2em 0 .6em}
@media (max-width:700px){.lg-toc ol{grid-template-columns:1fr}.lg-tools div{grid-template-columns:1fr}}
@media (min-width:1100px){.lg-grid{display:grid;grid-template-columns:minmax(0,46rem) minmax(0,1fr);grid-template-areas:"head toc" "body toc";column-gap:clamp(48px,6vw,112px);align-items:start}.lg-head{grid-area:head}.lg-body{grid-area:body}.lg-toc{grid-area:toc;position:sticky;top:112px;margin-top:0;justify-self:end;width:100%;max-width:19rem}.lg-toc ol{grid-template-columns:1fr}}
/* <<< legal */
/* >>> about */
/* about page: the wide truck still in the split hero keeps the whole truck in frame */
.about-hero .still > picture,.about-work .still > picture{display:block;width:100%;height:100%}
.about-hero .still{aspect-ratio:16/9}
.about-hero .still img{object-position:45% 72%;transform-origin:46% 62%}
.about-work .svc-list a{padding:16px 16px}
/* <<< about */
/* >>> contact */
/* contact page: the three lines as plates, the call checklist, four after-call steps, the truck band, the email plate */
.lines3{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:clamp(48px,6vw,80px)}
.lines3 > li{display:grid}
.line-plate{display:grid;grid-template-rows:auto auto auto 1fr;gap:16px;background:var(--plate);clip-path:var(--chamfer);box-shadow:inset 0 0 0 1px var(--edge);padding:24px 26px 24px}
.line-plate.main{background:var(--edge);box-shadow:inset 0 0 0 2px var(--cream)}
.line-top{display:flex;justify-content:space-between;align-items:center;gap:12px;font:700 13px/1 var(--display);text-transform:uppercase;letter-spacing:.12em;color:var(--mute);padding-bottom:14px;border-bottom:1px solid var(--edge-hi)}
.line-top .live{margin-right:2px}
.line-top span{display:inline-flex;align-items:center;gap:8px}
.line-plate h3{font-size:clamp(26px,2.4vw,32px);text-transform:uppercase;line-height:1}
.line-num{display:inline-flex;align-items:center;gap:12px;justify-self:start;font:800 clamp(30px,2.7vw,40px)/1 var(--display);letter-spacing:.01em;white-space:nowrap;text-decoration:none;color:var(--cream);padding:6px 0;transition:color .2s,transform .2s var(--ease)}
.line-num svg{width:26px;height:26px;flex:none;color:var(--go)}
.line-num:hover{color:var(--go);transform:translateX(3px)}
.line-area{margin:0;color:var(--mute);font-size:.98em}
.line-hubs{list-style:none;display:flex;flex-wrap:wrap;gap:4px 16px;align-self:end;padding-top:14px;border-top:1px solid var(--edge-hi)}
.line-hubs a{display:inline-block;padding:6px 0;font:700 14px/1.2 var(--display);text-transform:uppercase;letter-spacing:.08em;color:var(--cream);text-decoration-thickness:2px;text-underline-offset:4px;text-decoration-color:var(--moss)}
.line-hubs a:hover{text-decoration-color:var(--go)}
@media (max-width:900px){.lines3{grid-template-columns:1fr}}

.ready-grid{display:grid;grid-template-columns:5fr 7fr;gap:clamp(28px,5vw,80px);align-items:start}
.ready-side{display:grid;gap:22px;justify-items:start}
.ready{list-style:none;background:var(--cream);border:2px solid var(--ink);clip-path:var(--chamfer);padding:6px clamp(20px,3vw,32px)}
.ready li{display:grid;grid-template-columns:28px 1fr;gap:4px 18px;padding:18px 0;border-bottom:1px dashed rgba(42,26,12,.4)}
.ready li:last-child{border-bottom:0}
.ready .tick{grid-row:1 / span 2;width:28px;height:28px;margin-top:1px}
.ready .tick rect{fill:none;stroke:var(--ink);stroke-width:2}
.ready .tick path{fill:none;stroke:#047a00;stroke-width:3.2;stroke-linecap:square}
.ready b{font:800 clamp(20px,1.8vw,24px)/1.1 var(--display);text-transform:uppercase;color:var(--ink)}
.ready span{color:var(--ink-mid);font-size:.98em}
html.js-rv .ready .tick path{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .55s var(--ease);transition-delay:calc(var(--k,0) * 170ms + 450ms)}
html.js-rv .ready.in .tick path{stroke-dashoffset:0}
@media (max-width:900px){.ready-grid{grid-template-columns:1fr}}
@media (max-width:600px){.ready-side .btn-call{width:100%}}

.steps.s4{grid-template-columns:repeat(4,1fr)}
@media (max-width:1100px){.steps.s4{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.steps.s4{grid-template-columns:1fr}}
.truck{margin:clamp(44px,6vw,72px) 0 0;aspect-ratio:7/2}
.truck img{object-position:45% 62%}
@media (max-width:900px){.truck{aspect-ratio:16/9}}
@media (max-width:600px){.truck{aspect-ratio:4/3}.truck img{object-position:40% 62%}}

.mail{display:grid;grid-template-columns:auto 1fr;gap:clamp(18px,3vw,40px);align-items:center;background:var(--plate);clip-path:var(--chamfer);box-shadow:inset 0 0 0 1px var(--edge);padding:clamp(24px,3vw,40px) clamp(22px,4vw,48px)}
.mail-ic{width:64px;height:64px;color:var(--go)}
.mail h2{font-size:clamp(1.7rem,3vw,2.4rem)}
.mail-addr{display:inline-block;margin-top:10px;font:800 clamp(22px,3vw,38px)/1.1 var(--display);color:var(--cream);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px;text-decoration-color:var(--go);overflow-wrap:anywhere}
.mail-addr:hover{color:var(--go)}
.mail p{margin:12px 0 0;color:var(--mute)}
@media (max-width:600px){.mail{grid-template-columns:1fr}.mail-ic{width:44px;height:44px}}
/* <<< contact */
/* >>> guide */
/* articles: guides and pricing posts (one frame) */
.thero.art-hero h1{font-size:clamp(2.25rem,4.4vw,3.75rem);max-width:16em}
.art-answer{margin:0;padding-top:18px;border-top:2px solid var(--cream);font-size:clamp(18px,1.5vw,20px);line-height:1.55;color:var(--cream);max-width:62ch}
.art-meta{margin:0;font:700 14px/1.3 var(--display);text-transform:uppercase;letter-spacing:.1em;color:var(--mute)}
.art-hero .still{aspect-ratio:4/3}
.art{padding-top:clamp(56px,7vw,96px)}
.art-grid{display:grid;grid-template-columns:minmax(200px,3fr) minmax(0,9fr);gap:clamp(28px,5vw,72px);align-items:start}
.art-toc{position:sticky;top:110px;display:grid;gap:14px;border-top:2px solid var(--cream);padding-top:16px}
.art-toc h2{font:700 15px/1 var(--display);letter-spacing:.12em;color:var(--mute)}
.art-toc ol{list-style:none;display:grid;gap:0;counter-reset:t}
.art-toc li{border-bottom:1px solid var(--edge-hi)}
.art-toc a{display:block;padding:11px 0;font:700 17px/1.2 var(--display);text-transform:uppercase;letter-spacing:.04em;text-decoration:none;color:var(--cream);transition:color .2s,transform .3s var(--ease)}
.art-toc a:hover{color:#fff;transform:translateX(4px)}
.art-body{min-width:0}
.art-body > section{padding-bottom:clamp(44px,5vw,68px);scroll-margin-top:96px}
.art-body > section + section{padding-top:clamp(40px,5vw,60px);border-top:1px solid var(--edge-hi)}
.art-body h2{font-size:clamp(1.9rem,3.4vw,2.75rem);margin-bottom:22px;max-width:20em}
.art-body h3{font-size:clamp(1.3rem,1.8vw,1.6rem);text-transform:uppercase;letter-spacing:.01em;margin:30px 0 10px}
.art-body p{color:var(--cream);max-width:68ch}
.art-body p a,.art-body li a{color:var(--cream);text-decoration-thickness:2px;text-underline-offset:4px;text-decoration-color:var(--moss);transition:text-decoration-color .2s}
.art-body p a:hover,.art-body li a:hover{text-decoration-color:var(--cream)}
.art-body ul.art-list{list-style:none;display:grid;gap:10px;margin:0 0 1.2em;max-width:68ch}
.art-body ul.art-list li{position:relative;padding-left:26px}
.art-body ul.art-list li::before{content:"";position:absolute;left:2px;top:.62em;width:10px;height:10px;background:var(--moss);transform:rotate(45deg)}
.art-note{margin:22px 0 0;padding:16px 20px;background:var(--plate);box-shadow:inset 0 0 0 1px var(--edge-hi);font-size:.95em;color:var(--mute)!important;max-width:68ch}
.art-body .facts{grid-template-columns:repeat(2,1fr);margin:6px 0 4px}
.art-body .facts div:nth-child(3){border-left:0}
.art-body .facts div:nth-child(n+3){border-top:1px solid var(--edge-hi)}
.art-body .cmp{margin-top:8px}
.art-body .pline.rules{grid-template-columns:1fr;margin-top:8px}
.art-body .pline.rules li{border-left:0;border-top:1px solid var(--edge-hi);padding:24px 0 26px}
.art-body .pline.rules li:first-child{border-top:0}
.art-decide{list-style:none;display:grid;gap:0;border-top:2px solid var(--cream);margin-top:8px}
.art-decide li{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:8px 28px;align-items:baseline;padding:20px 0;border-bottom:1px solid var(--edge-hi)}
.art-decide .if{color:var(--cream);font-size:1.04em}
.art-decide .then{font:800 clamp(20px,1.8vw,24px)/1.1 var(--display);text-transform:uppercase;letter-spacing:.02em}
.art-decide .then a{display:inline-flex;align-items:baseline;gap:10px;color:var(--go);text-decoration:none}
.art-decide .then a svg{width:18px;height:18px;flex:none;transition:transform .3s var(--ease)}
.art-decide .then a:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}
.art-decide .then a:hover svg{transform:translateX(4px)}
.art-figs{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:26px 0 8px}
.art-figs figure{margin:0;aspect-ratio:4/3}
.art-fig{margin:26px 0 8px;aspect-ratio:3/2}
.pline.two{grid-template-columns:repeat(2,1fr)}
.art-related{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.art-related li{display:grid;gap:10px;align-content:start;background:var(--plate);clip-path:var(--chamfer);box-shadow:inset 0 0 0 1px var(--edge);padding:24px 24px 26px;transition:background .3s,box-shadow .3s}
.art-related li:hover{background:var(--edge);box-shadow:inset 0 0 0 1px var(--mute)}
.art-related a{font:800 clamp(21px,1.9vw,25px)/1.08 var(--display);text-transform:uppercase;text-decoration:none;color:var(--cream)}
.art-related a::after{content:"";position:absolute;inset:0}
.art-related li{position:relative}
.art-related p{margin:0;color:var(--mute);font-size:.95em}
@media (max-width:1100px){.art-body .cmp{grid-template-columns:1fr}.art-related{grid-template-columns:1fr 1fr}}
@media (max-width:900px){.art-grid{grid-template-columns:minmax(0,1fr)}.art-toc{position:static}.art-hero .still{aspect-ratio:16/10}.pline.two{grid-template-columns:1fr}}
@media (max-width:600px){.art-decide li{grid-template-columns:1fr}.art-figs{grid-template-columns:1fr}.art-related{grid-template-columns:1fr}.art-body .facts{grid-template-columns:1fr}.art-body .facts div{border-left:0;border-top:1px solid var(--edge-hi)}.art-body .facts div:first-child{border-top:0}}
/* <<< guide */
/* >>> towns-index */
/* Towns index: region quilt with counts, A to Z ledger with a letter rail, three lines, two promises */
.ti-still picture{height:100%}
.ti-quilt{grid-template-columns:repeat(4,1fr)}
.ti-quilt .patch{grid-column:auto;grid-row:auto;gap:12px;padding:22px 22px 26px}
.ti-quilt .patch h3{font-size:1.45rem;line-height:1.05;text-transform:uppercase}
.ti-quilt .pc{margin:0;display:flex;align-items:baseline;gap:10px;font:700 15px/1 var(--display);text-transform:uppercase;letter-spacing:.1em;color:var(--mute)}
.ti-quilt .pc b{font:800 clamp(46px,4.6vw,64px)/.85 var(--display);letter-spacing:-.01em;color:var(--cream)}
.ti-quilt .ti-miss{background:var(--brown);align-content:center}
.ti-quilt .ti-miss:hover{background:var(--brown)}
.ti-miss p{margin:0;color:var(--cream)}
.ti-miss a{color:var(--cream);font-weight:700;text-decoration-thickness:2px;text-underline-offset:4px;white-space:nowrap}
.ti-miss a:hover{color:#fff}
@media (max-width:1000px){.ti-quilt{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.ti-quilt{grid-template-columns:1fr}}

.ti-jump{position:sticky;top:74px;z-index:20;background:var(--night);border-top:2px solid var(--cream);border-bottom:1px solid var(--edge-hi);margin-bottom:clamp(32px,4vw,52px);box-shadow:0 14px 22px -18px rgba(0,0,0,.9)}
.ti-jump ol{list-style:none;display:flex;flex-wrap:wrap}
.ti-jump li{flex:1 0 auto}
.ti-jump a,.ti-jump span{display:grid;place-items:center;min-width:44px;min-height:48px;font:800 21px/1 var(--display);text-transform:uppercase;text-decoration:none;color:var(--cream);transition:background .2s,color .2s}
.ti-jump a:hover{background:var(--go);color:var(--on-go)}
.ti-jump a:focus-visible{outline-offset:-3px}
.ti-jump span{color:var(--moss)}
@media (max-width:900px){.ti-jump{position:static;box-shadow:none}.ti-jump ol{display:grid;grid-template-columns:repeat(auto-fill,minmax(40px,1fr))}.ti-jump a,.ti-jump span{min-width:0}}

.ti-az{columns:3 280px;column-gap:clamp(28px,4vw,60px)}
.ti-azg{break-inside:avoid;margin:0 0 clamp(30px,3.4vw,44px);scroll-margin-top:160px}
.ti-azh{position:relative;display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding-bottom:8px;border-bottom:2px solid var(--cream)}
.ti-azl{display:block;padding-top:6px;font:800 clamp(58px,6vw,84px)/.9 var(--display);color:var(--cream);text-transform:uppercase}
.ti-azn{font:700 14px/1 var(--display);text-transform:uppercase;letter-spacing:.1em;color:var(--mute);padding-bottom:8px}
.ti-azlist{list-style:none}
.ti-azlist li{border-bottom:1px solid var(--edge)}
.ti-azlist a{display:flex;align-items:baseline;gap:10px;min-height:46px;padding:12px 4px 10px 0;text-decoration:none;transition:background .2s,padding .35s var(--ease)}
.ti-azlist a b{font:700 20px/1.1 var(--display);color:var(--cream);transition:color .2s}
.ti-azlist a i{flex:1;min-width:14px;border-bottom:1px dotted var(--edge-hi);transform:translateY(-5px)}
.ti-azlist a small{font:500 14px/1.2 var(--text);color:var(--mute);white-space:nowrap}
.ti-azlist a:hover{background:var(--plate);padding-left:10px}
.ti-azlist a:hover b{color:var(--go)}
.ti-azlist a:focus-visible{outline-offset:-3px}
.ti-azh::after{content:"";position:absolute;left:0;bottom:-2px;width:76px;height:4px;background:var(--go)}
html.js-rv .ti-azg .ti-azl{clip-path:inset(0 0 100% 0);transform:translateY(22px);transition:clip-path .9s cubic-bezier(.7,0,.2,1),transform 1s var(--ease);transition-delay:calc(var(--dl,0ms) + 120ms)}
html.js-rv .ti-azg.in .ti-azl{clip-path:inset(0);transform:none}
html.js-rv .ti-azg .ti-azh::after{transform:scaleX(0);transform-origin:left;transition:transform 1.1s var(--ease);transition-delay:calc(var(--dl,0ms) + 380ms)}
html.js-rv .ti-azg.in .ti-azh::after{transform:scaleX(1)}

.ti-lines{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--edge-hi);border:2px solid var(--edge-hi);margin-bottom:clamp(40px,5vw,64px)}
.ti-lines a{display:grid;gap:10px;align-content:start;height:100%;padding:22px 24px 24px;background:var(--plate);text-decoration:none;transition:background .25s}
.ti-lines small{font:700 14px/1.2 var(--display);text-transform:uppercase;letter-spacing:.1em;color:var(--mute)}
.ti-lines b{font:800 clamp(32px,3.3vw,44px)/.9 var(--display);color:var(--cream);font-variant-numeric:tabular-nums;white-space:nowrap;transition:color .2s}
.ti-lines span{color:var(--mute);font-size:.95em}
.ti-lines a:hover{background:var(--edge)}
.ti-lines a:hover b{color:var(--go)}
@media (max-width:900px){.ti-lines{grid-template-columns:1fr}}
.ti-maph{margin:0 0 20px;font-size:clamp(1.6rem,3vw,2.2rem);text-transform:uppercase}

.pline.ti-p2{grid-template-columns:repeat(2,1fr)}
@media (max-width:900px){.pline.ti-p2{grid-template-columns:1fr}}
.ti-quilt .patch h3 a svg{flex:none}
/* <<< towns-index */
/* >>> hub */
/* region hubs: two promises, counties, A to Z town index, ground by ecoregion, region lines, the other regions */
.pline.two{grid-template-columns:1fr 1fr}
@media (max-width:900px){.pline.two{grid-template-columns:1fr}}

/* counties the region covers */
.cty-row{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:0;border-top:2px solid var(--cream);border-bottom:1px solid var(--edge-hi);margin-bottom:clamp(32px,4vw,52px)}
.cty-row li{box-shadow:1px 0 0 var(--edge-hi),0 1px 0 var(--edge-hi);padding:16px 18px 18px;display:grid;gap:6px;align-content:start}
.cty-row b{font:800 clamp(22px,2.2vw,28px)/1 var(--display);text-transform:uppercase;letter-spacing:.01em}
.cty-row span{font:700 14px/1.2 var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}

/* A to Z town index */
.az-key{display:flex;flex-wrap:wrap;gap:8px 28px;margin:0 0 22px;font:700 14px/1.3 var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}
.az-key span{display:inline-flex;align-items:center;gap:10px}
.az-key i{display:inline-block;width:26px;height:2px;background:var(--go)}
.az-key i.no{background:var(--edge-hi)}
.az{list-style:none;columns:4 240px;column-gap:clamp(24px,3vw,48px);column-rule:1px solid var(--edge-hi)}
.az-g{break-inside:avoid;display:grid;grid-template-columns:40px minmax(0,1fr);gap:0 12px;padding:14px 0 16px;border-top:1px solid var(--edge-hi)}
.az-k{font:800 36px/.9 var(--display);color:var(--moss);text-transform:uppercase}
.az-g ul{list-style:none;display:grid;gap:2px}
.az-g li{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:4px 0}
.az-g li a,.az-g li > span{font:700 19px/1.15 var(--display);text-transform:uppercase;letter-spacing:.03em;color:var(--cream)}
.az-g li a{text-decoration:underline;text-decoration-color:var(--go);text-decoration-thickness:2px;text-underline-offset:5px;transition:color .2s,text-underline-offset .2s}
.az-g li a:hover{color:var(--go);text-underline-offset:7px}
.az-g li > span{font-weight:600}
.az-g small{flex:none;font:500 13px/1.2 var(--text);color:var(--mute);white-space:nowrap}

/* ground by ecoregion: one bar, then a row per ecoregion */
.eco-bar{display:flex;height:clamp(72px,8vw,104px);border:2px solid var(--ink);margin-top:clamp(28px,4vw,44px)}
.eco-seg{flex:var(--w) 1 0;min-width:0;display:flex;flex-direction:column;justify-content:flex-end;gap:4px;padding:10px 12px;color:var(--cream);border-left:2px solid var(--ink);overflow:hidden}
.eco-seg:first-child{border-left:0}
.eco-seg b{font:800 clamp(26px,3vw,40px)/.9 var(--display);font-variant-numeric:tabular-nums}
.eco-seg span{font:700 13px/1.1 var(--display);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.eco-36{background:var(--brown-mid)}
.eco-37{background:var(--moss)}
.eco-35{background:var(--edge-hi)}
.eco-73{background:var(--ink)}
html.js-rv .eco-bar.draw .eco-seg{clip-path:inset(0 100% 0 0);transition:clip-path .9s cubic-bezier(.7,0,.2,1);transition-delay:calc(var(--k) * 260ms)}
html.js-rv .eco-bar.draw.in .eco-seg{clip-path:inset(0 0 0 0)}
.eco-rows{list-style:none;margin-top:clamp(28px,4vw,48px);border-top:2px solid var(--ink)}
.eco-row{display:grid;grid-template-columns:4fr 5fr 4fr;gap:clamp(18px,3vw,44px);padding:clamp(22px,3vw,34px) 0;border-bottom:1px solid rgba(42,26,12,.3)}
.eco-row h3{display:flex;gap:12px;align-items:center;font-size:clamp(26px,2.6vw,34px);line-height:1;text-transform:uppercase}
.eco-sw{flex:none;width:18px;height:18px;border:2px solid var(--ink)}
.eco-c{font:700 14px/1.35 var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mid);margin:12px 0 0}
.day .eco-row p{margin:0;color:var(--ink)}
.day .eco-row p.eco-c{color:var(--ink-mid);margin-top:12px}
.eco-t b{display:block;font:700 14px/1.2 var(--display);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mid);margin-bottom:6px}
.day .eco-row .eco-t{font-size:.95em}
.day small.src{display:block;font:500 14px/1.45 var(--text);color:var(--ink-mid);margin-top:18px;max-width:90ch}
.cream-plate small.src{margin-top:4px;font-size:13px}
@media (max-width:900px){.eco-row{grid-template-columns:1fr;gap:12px}}
@media (max-width:700px){.eco-seg{padding:8px 6px}.eco-seg span{display:none}.eco-seg b{font-size:22px}}

/* the lines that serve this region */
.hub-lines{list-style:none;border-top:2px solid var(--cream);margin-top:28px;max-width:520px}
.hub-lines li{display:grid;gap:6px;padding:16px 0 18px;border-bottom:1px solid var(--edge-hi)}
.hub-lines small{font:700 13px/1.35 var(--display);text-transform:uppercase;letter-spacing:.1em;color:var(--mute)}
.hub-lines a{justify-self:start;font:800 clamp(28px,3vw,38px)/1 var(--display);text-decoration:none;color:var(--cream);transition:color .2s}
.hub-lines a:hover{color:var(--go)}
.hub-lines li.main a{color:var(--go)}

/* the other regions */
.quilt.others{grid-template-columns:repeat(5,1fr)}
.quilt.others .patch{grid-column:auto}
.quilt.others .patch.full{grid-column:1 / -1}
@media (max-width:900px){.quilt.others{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.quilt.others{grid-template-columns:1fr}}
/* <<< hub */
/* >>> hub-eco */
.eco-38{background:#2f5a3a}
.eco-39{background:#7a4b2a}
.eco-74{background:#5a5f66}
/* <<< hub-eco */
/* >>> guides-index */
/* Guides index: one featured guide plate, the longer guides, and the pricing posts in four numbered groups */
.plates > li.gi-feat{grid-column:1 / -1}
.gi-feat .plate{grid-template-rows:none;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}
.gi-feat .plate-img{aspect-ratio:auto;min-height:340px}
.gi-feat .plate-body{align-content:center;gap:16px;padding:clamp(26px,4vw,56px)}
.gi-feat .plate-body h3{font-size:clamp(1.75rem,3vw,2.6rem);line-height:1.02;text-transform:uppercase}
.gi-feat .plate-body h3 svg{width:28px;height:28px}
.gi-feat .plate-body p:not(.gi-kick){font-size:1.04em;max-width:46ch}
.plate-body .gi-kick{margin:0;display:flex;align-items:center;gap:10px;font:700 14px/1 var(--display);text-transform:uppercase;letter-spacing:.12em;color:var(--go)}
.plate-body .gi-kick::before{content:"";width:28px;height:2px;background:var(--go)}
@media (max-width:900px){.gi-feat .plate{grid-template-columns:minmax(0,1fr)}.gi-feat .plate-img{min-height:0;aspect-ratio:16/10}}

.gi-groups{border-bottom:2px solid var(--cream)}
.gi-grp{display:grid;grid-template-columns:minmax(200px,3fr) minmax(0,9fr);gap:clamp(24px,4vw,64px);padding:clamp(34px,4vw,52px) 0;border-top:1px solid var(--edge-hi);scroll-margin-top:96px}
.gi-grp:first-child{border-top:2px solid var(--cream)}
.gi-grp-h{position:sticky;top:110px;align-self:start;display:grid;gap:12px}
.gi-n{display:block;font:800 clamp(60px,6.4vw,92px)/.8 var(--display);font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--cream)}
.gi-grp-h h3{font-size:clamp(1.45rem,2.1vw,1.95rem);line-height:1.04;text-transform:uppercase}
.gi-c{position:relative;margin:0;padding-top:12px;font:700 14px/1 var(--display);text-transform:uppercase;letter-spacing:.1em;color:var(--mute)}
.gi-c::before{content:"";position:absolute;left:0;top:0;width:64px;height:3px;background:var(--go)}
.art-related.gi-list{grid-template-columns:repeat(2,1fr)}
.gi-list a{font-size:clamp(19px,1.6vw,22px);line-height:1.1}
.gi-list a:focus-visible{outline-offset:4px}
html.js-rv .gi-grp-h .gi-n{clip-path:inset(0 0 100% 0);transform:translateY(24px);transition:clip-path .9s cubic-bezier(.7,0,.2,1),transform 1s var(--ease),color .4s;transition-delay:calc(var(--dl,0ms) + 140ms)}
html.js-rv .gi-grp-h.in .gi-n{clip-path:inset(0);transform:none}
html.js-rv .gi-grp-h .gi-c::before{transform:scaleX(0);transform-origin:left;transition:transform 1.1s var(--ease);transition-delay:calc(var(--dl,0ms) + 380ms)}
html.js-rv .gi-grp-h.in .gi-c::before{transform:scaleX(1)}
.gi-grp:hover .gi-n{color:var(--go)}
@media (max-width:900px){.gi-grp{grid-template-columns:minmax(0,1fr)}.gi-grp-h{position:static;grid-template-columns:auto 1fr;align-items:end;column-gap:18px}.gi-grp-h .gi-c{grid-column:1 / -1}}
@media (max-width:600px){.art-related.gi-list{grid-template-columns:1fr}}
/* <<< guides-index */
/* >>> hub-fixes */
/* hub-fixes: county row cells wide enough for "Independence County"; hero picture fills the 5:4 frame */
.cty-row{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
.thero .still > picture{display:block;width:100%;height:100%}
/* <<< hub-fixes */
