@font-face{font-family:'Ibarra Real Nova';src:url(fonts/ibarra-real-nova-latin-400-normal.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Ibarra Real Nova';src:url(fonts/ibarra-real-nova-latin-400-italic.woff2) format('woff2');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:'Ibarra Real Nova';src:url(fonts/ibarra-real-nova-latin-700-normal.woff2) format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Urbanist';src:url(fonts/urbanist-latin-700-normal.woff2) format('woff2');font-weight:700;font-style:normal;font-display:swap}

:root{--gd:#f3f3ef;--bd:#e4e8e4;--hl:#c9cfc9;--ink:#1d2227;--sl:#46515a;--au:#f2b01e;--cr:#2f6785;--dk2:#262d33;--dk3:#46515a;
--serif:'Ibarra Real Nova',Georgia,'Times New Roman',serif;--ui:'Urbanist',system-ui,-apple-system,'Segoe UI',sans-serif;
--ht:repeating-linear-gradient(135deg,rgba(29,34,39,.55) 0 1.5px,transparent 1.5px 7px)}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--gd);color:var(--ink);font:400 clamp(17px,.9vw + 13.2px,19.5px)/1.62 var(--serif);text-rendering:optimizeLegibility;overflow-x:clip}
img,svg{max-width:100%}
img{height:auto}
h1,h2,h3{font-family:var(--serif);font-weight:700;line-height:1.08;margin:0 0 .5em;letter-spacing:-.012em;text-wrap:balance}
h1{font-size:clamp(2.15rem,1.05rem + 4.1vw,4.3rem);line-height:1.02}
h1 em{font-style:italic;font-weight:400;padding:0 .05em;background:linear-gradient(transparent 63%,rgba(242,176,30,.72) 63% 93%,transparent 93%)}
h2{font-size:clamp(1.65rem,1.1rem + 1.7vw,2.55rem)}
h3{font-size:clamp(1.2rem,1rem + .5vw,1.45rem);line-height:1.2}
p{margin:0 0 1em}
a{color:var(--cr);text-decoration-thickness:1.5px;text-underline-offset:.2em}
a:hover{color:var(--ink)}
address{font-style:normal}
:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
.pc-dk :focus-visible,.pc-foot :focus-visible{outline-color:var(--au)}
.pc-skip{position:absolute;left:-9999px;top:0}
.pc-skip:focus{left:8px;top:8px;z-index:99;background:var(--au);color:var(--ink);padding:10px 14px;font:700 .95rem var(--ui)}
.pc-wrap{width:min(100% - 32px,1180px);margin-inline:auto}

/* swatches: one hatch per job and per material */
.pc-sw{--p:none;position:relative;display:inline-block;flex:none;width:18px;height:18px;border:1.6px solid currentColor;border-radius:2px;vertical-align:-3px;background:transparent}
.pc-sw::after{content:"";position:absolute;inset:0;background:currentColor;-webkit-mask-image:var(--p);mask-image:var(--p)}
.pc-sw-xl{width:64px;height:64px;border-width:2.5px}
.pc-sw-l{width:26px;height:26px}
.pc-sw-1{--p:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M0 2q3-3 6 0t6 0M0 6q3-3 6 0t6 0' fill='none' stroke='black' stroke-width='1.3'/%3E%3C/svg%3E")}
.pc-sw-2{--p:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6'%3E%3Cpath d='M-1 1l2-2M0 6l6-6M5 7l2-2' stroke='black' stroke-width='1.3'/%3E%3C/svg%3E")}
.pc-sw-3{--p:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath d='M0 0l8 8M8 0l-8 8' stroke='black' stroke-width='1'/%3E%3C/svg%3E")}
.pc-sw-4{--p:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='9'%3E%3Cg fill='black'%3E%3Ccircle cx='2' cy='2' r='1'/%3E%3Ccircle cx='6.5' cy='4' r='1'/%3E%3Ccircle cx='3' cy='7' r='.9'/%3E%3C/g%3E%3C/svg%3E")}
.pc-sw-5{--p:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='5'%3E%3Cpath d='M0 1h10M0 4h6' stroke='black' stroke-width='1.1'/%3E%3C/svg%3E")}
.pc-sw-6{--p:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7'%3E%3Cpath d='M0 5l2.5-4 2.5 4 2.5-4 2.5 4' fill='none' stroke='black' stroke-width='1.2'/%3E%3C/svg%3E")}
.pc-sw-7{--p:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M0 .6h12M0 4.6h12M6 .6v4M0 4.6v3.4M12 4.6v3.4' fill='none' stroke='black' stroke-width='1.1'/%3E%3C/svg%3E")}
.pc-sw-8{--p:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='8'%3E%3Cpath d='M0 6l5-5 5 5' fill='none' stroke='black' stroke-width='1.3'/%3E%3C/svg%3E")}

/* wall strips */
.pc-wall{height:18px;background:#fff repeating-linear-gradient(135deg,var(--ink) 0 1.4px,transparent 1.4px 7px);border-block:2px solid var(--ink)}
.pc-wall-d{background:var(--ink) repeating-linear-gradient(135deg,var(--au) 0 1.4px,transparent 1.4px 7px)}

/* buttons */
.pc-call,.pc-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.7em 1.3em;border:2px solid var(--ink);border-radius:3px;font:700 1rem/1.1 var(--ui);letter-spacing:.015em;text-decoration:none;cursor:pointer;transition:transform .12s,box-shadow .12s,background .12s}
.pc-call{background:var(--au);color:var(--ink);box-shadow:4px 4px 0 var(--ink)}
.pc-call:hover{color:var(--ink);transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink)}
.pc-call-lg{min-height:56px;padding:.8em 1.6em;font-size:1.1rem}
.pc-call-sm{min-height:44px;padding:.6em 1.1em;font-size:.95rem;box-shadow:3px 3px 0 var(--ink);white-space:nowrap}
.pc-btn{background:transparent;color:var(--ink)}
.pc-btn:hover{background:var(--ink);color:var(--gd)}
.pc-dk .pc-call,.pc-foot .pc-call{border-color:var(--gd);box-shadow:4px 4px 0 var(--gd);color:var(--ink)}
.pc-dk .pc-btn{border-color:var(--gd);color:var(--gd)}

/* header */
.pc-head{background:#fff;border-bottom:2px solid var(--ink)}
.pc-top{position:relative}
.pc-top-g{display:flex;align-items:center;gap:clamp(14px,2vw,32px);min-height:78px}
.pc-brand{display:flex;align-items:center;gap:11px;color:var(--ink);text-decoration:none;flex:none}
.pc-brand:hover{color:var(--ink)}
.pc-mark{width:44px;height:44px;flex:none;display:block}
.pc-bn{display:flex;flex-direction:column;font:700 1.12rem/1.04 var(--serif);letter-spacing:-.005em}
.pc-bn span{display:block;white-space:nowrap}
.pc-nav{display:flex;gap:clamp(14px,1.55vw,26px);margin-left:auto}
.pc-nav a{color:var(--ink);text-decoration:none;font:700 .93rem/1 var(--ui);padding:1.05em 0 .9em;border-bottom:3px solid transparent;white-space:nowrap}
.pc-nav a:hover{border-bottom-color:var(--hl);color:var(--ink)}
.pc-nav a[aria-current]{border-bottom-color:var(--au)}
.pc-menu{display:none}
.pc-jobs{background:var(--ink);color:var(--gd)}
.pc-jobs-g{display:flex;align-items:center;gap:clamp(14px,1.6vw,26px);min-height:50px}
.pc-jobs-l{font:700 .66rem/1 var(--ui);text-transform:uppercase;letter-spacing:.12em;color:var(--au);flex:none}
.pc-jobs ul{display:flex;gap:clamp(10px,1.2vw,22px);list-style:none;margin:0;padding:0;flex:1;justify-content:space-between}
.pc-jobs a{display:flex;align-items:center;gap:7px;color:var(--gd);text-decoration:none;font:700 clamp(.74rem,.62rem + .2vw,.84rem)/1 var(--ui);white-space:nowrap;padding:1em 0 .85em;border-bottom:3px solid transparent}
.pc-jobs a:hover{color:var(--au)}
.pc-jobs a[aria-current]{border-bottom-color:var(--au)}
.pc-jobs .pc-sw{color:var(--au);width:14px;height:14px;border-width:1.4px;vertical-align:0}

/* shared section pieces */
.pc-sec{padding:clamp(40px,6vw,84px) 0}
.pc-sh{margin-bottom:clamp(22px,3vw,38px)}
.pc-sh h2{margin:0;max-width:21em}
.pc-sh::after{content:"";display:block;width:92px;height:11px;margin-top:16px;background:#fff repeating-linear-gradient(135deg,var(--ink) 0 1.4px,transparent 1.4px 6px);border-block:2px solid var(--ink)}
.pc-lab{font:700 .7rem/1.2 var(--ui);text-transform:uppercase;letter-spacing:.13em;color:var(--sl);margin:0 0 .55rem}
.pc-eyebrow{display:flex;align-items:center;gap:10px;font:700 .74rem/1.25 var(--ui);text-transform:uppercase;letter-spacing:.13em;color:var(--sl);margin:0 0 1.1rem}
.pc-lede{font-size:clamp(1.15rem,1rem + .55vw,1.4rem);line-height:1.5;color:var(--sl);max-width:36em}
.pc-acts{display:flex;flex-wrap:wrap;gap:14px 16px;align-items:center;margin:1.6rem 0 1rem}
.pc-plate{position:relative;background:#fff;border:2px solid var(--ink);padding:clamp(20px,2.6vw,34px) clamp(20px,2.6vw,34px) clamp(20px,2.6vw,34px) calc(clamp(20px,2.6vw,34px) + 14px)}
.pc-plate::before{content:"";position:absolute;left:0;top:0;bottom:0;width:14px;background:#fff repeating-linear-gradient(135deg,var(--ink) 0 1.4px,transparent 1.4px 6px);border-right:2px solid var(--ink)}
.pc-plate>p:last-child{margin-bottom:0}
.pc-note{position:relative;background:#fff;border:2px solid var(--ink);padding:clamp(22px,3vw,36px) clamp(22px,3vw,36px) clamp(22px,3vw,36px) calc(clamp(22px,3vw,36px) + 18px)}
.pc-note::before{content:"";position:absolute;left:0;top:0;bottom:0;width:18px;background:var(--au) var(--ht);border-right:2px solid var(--ink)}
.pc-note h2{font-size:clamp(1.4rem,1.1rem + 1vw,1.9rem)}
.pc-note>p:last-of-type{margin-bottom:0}
.pc-note-c{box-shadow:8px 8px 0 var(--hl)}
.pc-card-l{background:#fff;border:2px solid var(--ink);padding:22px 24px;box-shadow:7px 7px 0 var(--au)}
.pc-card-l .pc-lab:not(:first-child){margin-top:1.3rem}
.pc-ll{list-style:none;margin:0;padding:0}
.pc-ll li{padding:3px 0;border-top:1px solid var(--hl)}
.pc-ll a{display:inline-block;padding:4px 0;font-weight:700}
.pc-big{font-size:clamp(1.2rem,1rem + .7vw,1.5rem);line-height:1.5}
.pc-crumbs{font:700 .76rem/1 var(--ui);letter-spacing:.04em;padding:14px 0 0}
.pc-crumbs .pc-wrap{display:flex;flex-wrap:wrap;gap:2px 10px;align-items:center}
.pc-crumbs a{color:var(--sl);padding:6px 0;display:inline-block}
.pc-crumbs span{padding:6px 0;color:var(--ink)}
.pc-crumbs i{font-style:normal;color:var(--dk3)}
.pc-cta{background:var(--au);color:var(--ink);border-block:2px solid var(--ink);padding:clamp(30px,4vw,54px) 0}
.pc-cta-g{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px 40px;align-items:center}
.pc-cta-t{margin:0;font:700 clamp(1.2rem,1rem + .8vw,1.65rem)/1.35 var(--serif);max-width:44em}
.pc-cta a:not(.pc-call){color:var(--ink)}
.pc-cta .pc-call{background:var(--ink);color:var(--au);box-shadow:5px 5px 0 #fff}
.pc-cta .pc-call:hover{color:var(--au);box-shadow:2px 2px 0 #fff}
.pc-src{padding:34px 0 clamp(40px,5vw,64px);font-size:.92rem;color:var(--sl)}
.pc-src-h{font:700 .7rem/1.2 var(--ui);text-transform:uppercase;letter-spacing:.13em;margin:0 0 14px;color:var(--ink)}
.pc-src ul{list-style:none;margin:0;padding:0;columns:2 340px;column-gap:44px}
.pc-src li{break-inside:avoid;position:relative;padding:0 0 2px 20px;line-height:1.35}
.pc-src li::before{content:"";position:absolute;left:0;top:.5em;width:10px;height:10px;border:1.5px solid var(--ink);background:#fff repeating-linear-gradient(135deg,var(--ink) 0 1px,transparent 1px 4px)}
.pc-src a{display:inline-block;padding:5px 0}
.pc-srcl{list-style:none;margin:.3em 0 0;padding:0;display:flex;flex-wrap:wrap;gap:2px 22px;font-size:.88rem}
.pc-srcl a{display:inline-block;padding:6px 0}
.pc-two{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:clamp(20px,4vw,64px);align-items:start}
.pc-two-h h2{margin:0}

/* hero + stage */
.pc-hero{padding:clamp(26px,4.5vw,60px) 0 clamp(40px,5vw,66px);overflow:clip}
.pc-hero-g{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);gap:clamp(28px,5vw,76px);align-items:center}
.pc-hero h1{margin-bottom:.4em}
.pc-glink{margin:0 0 1.5rem;font-size:1.05rem}
.pc-glink a{font-weight:700}
.pc-chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.pc-chips li{font:700 .76rem/1 var(--ui);letter-spacing:.04em;padding:.7em 1.05em;border:1.6px solid var(--ink);border-radius:99px;background:#fff}
.pc-chips .pc-chip-w{border-style:dashed;background:transparent}
.pc-stage{position:relative;isolation:isolate;padding:0 0 30px}
.pc-stage::before{content:"";position:absolute;z-index:-1;left:14%;top:48px;bottom:0;right:calc((100vw - min(100vw - 32px,1180px))/-2);background:var(--au) var(--ht)}
.pc-stage-img{display:block;width:calc(100% - 30px);aspect-ratio:4/3;object-fit:cover;border:2px solid var(--ink);border-radius:3px 3px 3px 120px;background:var(--bd)}
.pc-stage-s .pc-stage-img{border-radius:3px 3px 3px 84px}
.pc-ledger{display:grid;grid-template-columns:1.15fr 1fr 1.25fr;margin-top:clamp(28px,4vw,52px);background:#fff;border:2px solid var(--ink);box-shadow:7px 7px 0 var(--hl)}
.pc-ledger>div{padding:20px 24px;border-left:2px solid var(--hl)}
.pc-ledger>div:first-child{border-left:0}
.pc-ledger address,.pc-lc{font-size:1.05rem;margin:0;line-height:1.45}
.pc-lt{margin:0;line-height:1.7}
.pc-lt a{display:inline-block;margin-right:14px;padding:2px 0;font-weight:700;white-space:nowrap}

/* dark bands + 1-to-10 read */
.pc-dk{background:var(--ink);color:var(--gd)}
.pc-dk a{color:var(--au)}
.pc-dk a:hover{color:#fff}
.pc-dk h2{color:#fff}
.pc-dk .pc-sh::after{background:var(--ink) repeating-linear-gradient(135deg,var(--au) 0 1.4px,transparent 1.4px 6px);border-color:var(--au)}
.pc-band-g{display:grid;grid-template-columns:1.55fr 1fr .9fr;gap:clamp(14px,2vw,26px)}
.pc-band{background:var(--dk2);border:1.6px solid var(--dk3);border-top:6px solid var(--au);padding:clamp(18px,2.2vw,28px)}
.pc-band p{margin:0;font-size:1.02rem;line-height:1.58}
.pc-band-lo{background:transparent}
.pc-ruler{display:grid;grid-template-columns:repeat(10,1fr);gap:3px;margin:0 0 18px}
.pc-ruler i{display:block;height:26px;border:1.5px solid currentColor;opacity:.5;font:700 .62rem/23px var(--ui);text-align:center;font-style:normal}
.pc-ruler i.on{opacity:1;background:var(--au) var(--ht);color:var(--ink);border-color:var(--au)}
.pc-bnd{font-weight:700;background:linear-gradient(transparent 62%,rgba(242,176,30,.7) 62% 94%,transparent 94%)}
.pc-dk .pc-bnd{background:none;color:var(--au)}
.pc-band-note{margin:26px 0 0;padding:4px 0 4px 18px;border-left:6px solid var(--au);font-size:1.12rem}
.pc-bandsec{background:var(--bd);border-block:2px solid var(--ink)}
.pc-bandsec .pc-band{background:#fff;border-color:var(--ink);border-top-width:6px}
.pc-bandsec .pc-band-lo{background:#fff}
.pc-bandsec .pc-band-note{border-left-color:var(--ink)}

/* rain ledger + tables */
.pc-rain-w{background:#fff;border:2px solid var(--ink);box-shadow:7px 7px 0 var(--hl);overflow-x:auto}
.pc-tab{width:100%;border-collapse:collapse;font-size:.98rem}
.pc-tab th,.pc-tab td{text-align:left;padding:.62em .9em;border-bottom:1px solid var(--hl);vertical-align:middle}
.pc-tab thead th{background:var(--ink);color:var(--gd);font:700 .66rem/1.25 var(--ui);text-transform:uppercase;letter-spacing:.1em;border:0;padding:1em .9em}
.pc-tab tbody th{font-weight:400;font-style:italic;font-size:1.06rem;white-space:nowrap}
.pc-tab tbody tr:nth-child(even){background:#f8f8f5}
.pc-tab tbody tr:last-child>*{border-bottom:0}
.pc-rb{display:grid;grid-template-columns:minmax(80px,1fr) 3em;align-items:center;gap:10px;min-width:170px}
.pc-bar{display:block;height:14px;min-width:6px;border:1.5px solid var(--cr);background:#fff repeating-linear-gradient(135deg,var(--cr) 0 1.4px,transparent 1.4px 5px)}
.pc-rb b{font:700 .9rem/1 var(--ui)}
.pc-rain-n{margin:22px 0 0;font-size:.95rem;color:var(--sl);max-width:60em}
.pc-wkd{display:none}
.pc-tab-p tbody th{font-style:normal;font-weight:700;white-space:normal}
.pc-tab-p td:nth-child(3){white-space:nowrap;font-family:var(--ui);font-weight:700;font-size:.9rem}

/* photo strip */
.pc-strip-g{display:grid;grid-template-columns:repeat(6,1fr);gap:clamp(16px,2vw,28px) clamp(14px,2vw,26px)}
.pc-fig{margin:0}
.pc-fig:nth-child(1){grid-column:span 4}
.pc-fig:nth-child(n+2){grid-column:span 2}
.pc-fig img{display:block;width:100%;height:250px;object-fit:cover;border:2px solid var(--ink)}
.pc-fig:nth-child(-n+2) img{height:clamp(230px,26vw,350px)}
.pc-fig:nth-child(odd) img{border-radius:0 0 0 52px}
.pc-fig:nth-child(even) img{border-radius:0 52px 0 0}
.pc-fig figcaption{display:flex;gap:10px;align-items:flex-start;margin-top:12px;font-size:.98rem;line-height:1.4;color:var(--sl)}
.pc-fig figcaption .pc-sw{margin-top:3px}

/* habits */
.pc-hab{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(24px,4vw,60px)}
.pc-hab li{display:flex;gap:16px;padding:20px 0 22px;border-top:2px solid var(--ink)}
.pc-hab p{margin:0}
.pc-hab strong{display:block;font-size:1.24rem;line-height:1.2;margin-bottom:.3em}
.pc-hab .pc-sw{margin-top:2px}

/* about */
.pc-about{background:var(--bd);border-block:2px solid var(--ink)}
.pc-about-g{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,.8fr);gap:clamp(24px,5vw,72px);align-items:start}
.pc-about h2{margin-bottom:.7em}

/* symptom cards */
.pc-sc-g{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,1.8vw,24px);list-style:none;margin:0;padding:0}
.pc-sc{position:relative;background:#fff;border:2px solid var(--ink);display:flex;flex-direction:column;transition:transform .15s,box-shadow .15s}
.pc-sc:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--au)}
.pc-sc-p img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-bottom:2px solid var(--ink)}
.pc-sc-t{padding:16px 18px 22px}
.pc-sc-t .pc-sw{margin-bottom:10px}
.pc-sc-t p{margin:0;font-size:1.02rem;line-height:1.45}
.pc-sc-t a{font-weight:700}
.pc-sc a::after{content:"";position:absolute;inset:0}

/* towns route */
.pc-towns-g{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(24px,5vw,64px);align-items:center}
.pc-route{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);position:relative}
.pc-route::before{content:"";position:absolute;left:10%;right:10%;top:20px;border-top:3px dashed var(--ink)}
.pc-stop{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;color:var(--ink);text-decoration:none;position:relative;padding:0 4px 4px}
.pc-stop:hover{color:var(--ink)}
.pc-node{width:24px;height:24px;margin-top:8px;border-radius:50%;border:3px solid var(--ink);background:#fff;position:relative}
.pc-node-b{width:40px;height:40px;margin-top:0;background:var(--au) var(--ht)}
.pc-stop b{font:700 1.12rem/1.15 var(--serif)}
.pc-stop small{font:700 .64rem/1.2 var(--ui);text-transform:uppercase;letter-spacing:.1em;color:var(--cr)}
.pc-stop:hover b{text-decoration:underline}
.pc-route-w{max-width:880px;margin:0 auto}

/* story */
.pc-story-g{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,5vw,72px);align-items:center}
.pc-story-p,.pc-pair-p{position:relative;isolation:isolate}
.pc-story-p::before,.pc-pair-p::before{content:"";position:absolute;z-index:-1;inset:24px -24px -24px 24px;background:var(--au) var(--ht)}
.pc-arc{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border:2px solid var(--ink);border-radius:3px 3px 96px 3px;background:var(--bd)}
.pc-grow{margin-top:28px;display:grid;gap:12px}
.pc-grow>div{display:grid;grid-template-columns:3.4em minmax(0,1fr) 4.6em;align-items:center;gap:12px}
.pc-grow span{font:700 .78rem/1 var(--ui);letter-spacing:.1em;color:var(--sl)}
.pc-grow i{display:block;height:24px;border:2px solid var(--ink);background:var(--au) var(--ht)}
.pc-grow b{font:700 1.25rem/1 var(--serif)}

/* service pages */
.pc-banner{margin-top:14px;border-block:2px solid var(--ink);background:var(--ink)}
.pc-banner-img{display:block;width:100%;height:clamp(240px,36vw,470px);object-fit:cover;object-position:center 58%}
.pc-tcard{position:relative;max-width:780px;margin:clamp(-120px,-9vw,-44px) 0 0;background:#fff;border:2px solid var(--ink);padding:clamp(34px,3.4vw,46px) clamp(22px,3vw,40px) clamp(22px,3vw,38px);box-shadow:10px 10px 0 var(--au)}
.pc-tcard::before{content:"";position:absolute;left:-2px;right:-2px;top:-2px;height:15px;background:#fff repeating-linear-gradient(135deg,var(--ink) 0 1.4px,transparent 1.4px 6px);border:2px solid var(--ink)}
.pc-tcard h1{font-size:clamp(2rem,1.15rem + 2.8vw,3.4rem)}
.pc-tcard .pc-lede{margin-bottom:0}
.pc-cost{padding-bottom:clamp(20px,3vw,40px)}
.pc-rep{background:var(--bd);border-block:2px solid var(--ink)}
.pc-rep-g{display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(20px,4vw,60px);align-items:start}
.pc-rep-sw .pc-sw{width:clamp(88px,12vw,150px);height:clamp(88px,12vw,150px);box-shadow:8px 8px 0 var(--au);background:#fff}
.pc-rep h2{margin-bottom:.45em}
.pc-stopn{padding-block:clamp(44px,6vw,80px)}
.pc-stopl{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(14px,2vw,24px)}
.pc-stopl li{display:flex;gap:16px;padding:22px 24px;background:var(--dk2);border:1.6px solid var(--dk3);border-left:8px solid var(--au)}
.pc-stopl .pc-sw{color:var(--au);margin-top:4px}
.pc-stopl p{margin:0;font-size:1.02rem;line-height:1.55}
.pc-stopl strong{color:#fff}
.pc-cl{list-style:none;margin:0;padding:0}
.pc-cl li{display:flex;gap:16px;align-items:flex-start;padding:16px 0;border-top:2px solid var(--ink);font-size:1.12rem;line-height:1.45}
.pc-cl li:last-child{border-bottom:2px solid var(--ink)}
.pc-cl .pc-sw{margin-top:4px}
.pc-steps-g{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(20px,4vw,64px);align-items:start}
.pc-sl{list-style:none;margin:0;padding:0}
.pc-sl li{display:flex;gap:16px;padding:14px 0;border-top:1px solid var(--hl);line-height:1.5}
.pc-sl li:first-child{border-top:2px solid var(--ink)}
.pc-sl .pc-sw{margin-top:5px}
.pc-ptr{padding-top:0}

/* town pages, hubs */
.pc-tintro{padding:clamp(24px,4vw,56px) 0 clamp(32px,5vw,64px);overflow:clip}
.pc-tintro-g{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(24px,5vw,72px);align-items:center}
.pc-tintro-n .pc-tintro-g{grid-template-columns:minmax(0,1fr)}
.pc-tintro-n .pc-tintro-g>div{max-width:52rem}
.pc-tintro h1{font-size:clamp(2rem,1.1rem + 3.2vw,3.7rem)}
.pc-tintro .pc-lede:last-of-type{margin-bottom:0}
.pc-homes{padding-bottom:clamp(20px,3vw,40px)}
.pc-qa{list-style:none;margin:0;padding:0}
.pc-qa li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(14px,2vw,26px);padding:26px 0;border-top:2px solid var(--ink)}
.pc-qa li:last-child{border-bottom:2px solid var(--ink)}
.pc-qn{width:48px;height:48px;border:2px solid var(--ink);border-radius:50%;display:grid;place-items:center;font:700 1.2rem/1 var(--serif);background:var(--au)}
.pc-qa h3{margin:0 0 .4em}
.pc-qa p{margin:0}
.pc-season{background:var(--bd);border-block:2px solid var(--ink)}
.pc-pair{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(28px,5vw,76px);align-items:center}
.pc-pair-r{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}
.pc-pair-r .pc-pair-p{order:-1}
.pc-pair-r .pc-pair-p::before{inset:24px 24px -24px -24px}
.pc-near-g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(20px,4vw,56px);align-items:start}
.pc-nps{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.pc-np{display:flex;align-items:center;gap:14px;padding:16px 20px;background:#fff;border:2px solid var(--ink);color:var(--ink);text-decoration:none;transition:transform .15s,box-shadow .15s}
.pc-np:hover{color:var(--ink);transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--au)}
.pc-np b{font:700 1.25rem/1.1 var(--serif)}
.pc-np small{margin-left:auto;font:700 .66rem/1.2 var(--ui);text-transform:uppercase;letter-spacing:.1em;color:var(--cr)}
.pc-tp-g{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,2.6vw,36px)}
.pc-tp{display:flex;flex-direction:column;gap:6px;background:#fff;border:2px solid var(--ink);padding:0 clamp(20px,2.6vw,30px) clamp(22px,2.6vw,30px);box-shadow:7px 7px 0 var(--hl)}
.pc-tp-sw{margin:0 calc(-1*clamp(20px,2.6vw,30px)) 16px}
.pc-tp-sw .pc-sw{display:block;width:100%;height:46px;border-width:0 0 2px;border-radius:0;color:var(--ink)}
.pc-tp h2{font-size:clamp(1.8rem,1.3rem + 1.4vw,2.4rem);margin:.1em 0 0}
.pc-tp h2 a{color:var(--ink);text-decoration:none}
.pc-tp-h{font-weight:700;margin:0;font-size:1.05rem}
.pc-tp p{margin:0 0 .4em}
.pc-tp .pc-btn{align-self:flex-start;margin-top:auto}
.pc-hubhead{padding:clamp(24px,4vw,52px) 0 0}
.pc-gc-g{list-style:none;margin:0;padding:0;display:grid;gap:clamp(44px,6vw,80px)}
.pc-gc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,72px);align-items:center}
.pc-gc:nth-child(even) .pc-gc-p{order:2}
.pc-gc h2 a{color:var(--ink);text-decoration:none}
.pc-gc h2 a:hover{text-decoration:underline}
.pc-gc-t p:last-child{margin:0}

/* guides + rules */
.pc-chk-s{padding-top:0}
.pc-chk-w{background:#fff;border:2px solid var(--ink);padding:clamp(22px,3vw,40px);box-shadow:8px 8px 0 var(--au)}
.pc-chk-w .pc-sh h2{max-width:none}
.pc-chk{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 38px}
.pc-chk li{display:flex;gap:14px;padding:13px 0;border-top:1px solid var(--hl);line-height:1.45}
.pc-box{flex:none;width:22px;height:22px;border:2px solid var(--ink);margin-top:3px;background:#fff}
.pc-qqs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 40px}
.pc-qq h3{font-size:1.25rem;margin-bottom:.3em}
.pc-qq p{margin:0}
.pc-gb{display:grid;grid-template-columns:minmax(0,260px) minmax(0,1fr);gap:clamp(24px,5vw,72px);align-items:start}
.pc-toc{position:sticky;top:20px}
.pc-toc ul{list-style:none;margin:0;padding:0;border-left:3px solid var(--ink)}
.pc-toc a{display:flex;gap:10px;align-items:flex-start;padding:9px 0 9px 14px;color:var(--ink);text-decoration:none;font:700 .85rem/1.3 var(--ui)}
.pc-toc a:hover{background:var(--bd)}
.pc-toc .pc-sw{width:14px;height:14px;margin-top:1px}
.pc-gb-m{max-width:46em}
.pc-gs{padding:0 0 clamp(28px,3.4vw,44px);scroll-margin-top:20px}
.pc-gs h2{font-size:clamp(1.5rem,1.2rem + 1vw,2.1rem)}
.pc-rt{padding-top:0}
.pc-mat-g{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,2.4vw,32px)}
.pc-mat{background:#fff;border:2px solid var(--ink);padding:clamp(20px,2.4vw,30px)}
.pc-mat-h{display:flex;gap:18px;align-items:center;margin-bottom:16px}
.pc-mat-h .pc-sw-xl{width:68px;height:68px}
.pc-mat h2{font-size:clamp(1.3rem,1.1rem + .7vw,1.6rem);margin:0}
.pc-mat>p{font-size:1rem}
.pc-ab-w{max-width:62rem}
.pc-ab{display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(18px,3vw,44px);padding:clamp(24px,3vw,38px) 0;border-top:2px solid var(--ink)}
.pc-ab-n{font:700 clamp(3.2rem,6vw,5.2rem)/.9 var(--serif);width:1.1em;color:transparent;background:repeating-linear-gradient(135deg,var(--ink) 0 2px,transparent 2px 6px);-webkit-background-clip:text;background-clip:text;-webkit-text-stroke:2px var(--ink)}
.pc-ab h2{font-size:clamp(1.5rem,1.2rem + 1vw,2.1rem)}

/* contact, privacy, 404 */
.pc-contact-g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:start}
.pc-contact .pc-card-l{margin-top:28px}
.pc-map{border:2px solid var(--ink);box-shadow:10px 10px 0 var(--au);background:var(--bd)}
.pc-map iframe{display:block;width:100%;height:clamp(320px,42vw,540px);border:0}
.pc-letter{padding:clamp(24px,4vw,56px) 0 clamp(48px,6vw,88px)}
.pc-letter-c{max-width:44rem;margin:0 auto;background:#fff;border:2px solid var(--ink);padding:clamp(24px,5vw,56px);box-shadow:8px 8px 0 var(--hl)}
.pc-letter-c h1{font-size:clamp(1.9rem,1.2rem + 2.6vw,3rem)}
.pc-upd{font:700 .76rem/1.2 var(--ui);letter-spacing:.1em;text-transform:uppercase;color:var(--sl);margin-bottom:1.6em}
.pc-ps h2{font-size:1.45rem;margin:1.7em 0 .4em;scroll-margin-top:16px}
.pc-ps p{margin-bottom:.8em}
.pc-lost{max-width:48rem}
.pc-lostj{margin:30px 0 0}

/* footer + phone bar */
.pc-foot{background:var(--ink);color:#d3d9d6}
.pc-foot a{color:var(--gd);text-decoration:none}
.pc-foot a:hover{color:var(--au)}
.pc-foot-g{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:clamp(24px,4vw,56px);padding:clamp(36px,5vw,66px) 0}
.pc-foot-h{font:700 .68rem/1.2 var(--ui);text-transform:uppercase;letter-spacing:.13em;color:var(--au);margin:1.5em 0 .6em}
.pc-foot-g>div:not(.pc-foot-id) .pc-foot-h{margin-top:0}
.pc-foot ul{list-style:none;margin:0;padding:0}
.pc-foot li a{display:inline-block;padding:5px 0;line-height:1.3}
.pc-brand-f{color:#fff}
.pc-foot .pc-brand-f:hover{color:#fff}
.pc-foot address{line-height:1.5}
.pc-foot .pc-foot-map{color:var(--au);text-decoration:underline;display:inline-block;padding:4px 0}
.pc-foot .pc-foot-call{font-size:1.12rem;line-height:1.45;color:#fff;margin-top:1.3em}
.pc-foot .pc-foot-call a{color:var(--au);text-decoration:underline}
.pc-foot-base{border-top:1px solid var(--dk3);padding:16px 0 20px;font:700 .74rem/1.2 var(--ui);letter-spacing:.04em;color:#b9c1bd}
.pc-foot-base .pc-wrap{display:flex;flex-wrap:wrap;gap:6px 28px}
.pc-foot-base a{padding:6px 0;display:inline-block}
.pc-callbar{display:none}

@media(max-width:1179px){
.pc-nav,.pc-jobs,.pc-call-sm{display:none}
.pc-menu{display:block;margin-left:auto}
.pc-menu summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:12px;min-height:46px;padding:.6em 1em;border:2px solid var(--ink);border-radius:3px;background:#fff;font:700 .95rem/1 var(--ui);box-shadow:3px 3px 0 var(--ink)}
.pc-menu summary::-webkit-details-marker{display:none}
.pc-menu summary i{display:block;width:18px;height:2px;background:var(--ink);box-shadow:0 6px 0 var(--ink),0 -6px 0 var(--ink)}
.pc-menu[open] summary{background:var(--au)}
.pc-menu-p{position:absolute;left:0;right:0;top:100%;z-index:40;background:#fff;border-bottom:2px solid var(--ink);padding:18px max(16px,calc((100vw - 1180px)/2)) 26px;max-height:calc(100vh - 80px);overflow:auto}
.pc-menu-pg,.pc-menu-jb{list-style:none;margin:0 0 16px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 22px}
.pc-menu-pg a,.pc-menu-jb a{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid var(--hl);color:var(--ink);text-decoration:none;font:700 .96rem/1.2 var(--ui)}
.pc-menu-pg a[aria-current],.pc-menu-jb a[aria-current]{border-bottom:3px solid var(--au)}
.pc-menu-h{font:700 .68rem/1.2 var(--ui);text-transform:uppercase;letter-spacing:.13em;color:var(--sl);margin:18px 0 6px}
.pc-menu .pc-call{width:100%}
}
@media(max-width:899px){
.pc-hero-g,.pc-tintro-g,.pc-about-g,.pc-towns-g,.pc-story-g,.pc-two,.pc-steps-g,.pc-pair,.pc-pair-r,.pc-near-g,.pc-gc,.pc-gb,.pc-contact-g,.pc-cta-g{grid-template-columns:minmax(0,1fr)}
.pc-hero-g{gap:36px}
.pc-pair-r .pc-pair-p{order:0}
.pc-toc{display:none}
.pc-ledger{grid-template-columns:1fr}
.pc-ledger>div{border-left:0;border-top:2px solid var(--hl)}
.pc-ledger>div:first-child{border-top:0}
.pc-band-g,.pc-stopl,.pc-hab,.pc-tp-g,.pc-mat-g,.pc-chk,.pc-qqs{grid-template-columns:minmax(0,1fr)}
.pc-sc-g{grid-template-columns:repeat(2,minmax(0,1fr))}
.pc-gc:nth-child(even) .pc-gc-p{order:0}
.pc-foot-g{grid-template-columns:1fr 1fr}
.pc-two-h h2{position:static}
.pc-stage-img{width:calc(100% - 22px)}
.pc-stage::before{left:10%;top:36px}
.pc-callbar{display:block;position:fixed;left:0;right:0;bottom:0;z-index:50;background:var(--au);border-top:3px solid var(--ink);padding-bottom:env(safe-area-inset-bottom)}
.pc-callbar a{display:flex;align-items:center;justify-content:center;min-height:58px;color:var(--ink);font:700 1.2rem/1 var(--ui);text-decoration:none}
body{padding-bottom:calc(61px + env(safe-area-inset-bottom))}
.pc-route{grid-template-columns:1fr;gap:6px}
.pc-route::before{left:19px;right:auto;top:14px;bottom:30px;border-top:0;border-left:3px dashed var(--ink)}
.pc-stop{flex-direction:row;text-align:left;gap:14px;padding:4px 0;align-items:center}
.pc-node{margin-top:0;flex:none}
.pc-node-b{margin-left:-8px;margin-right:-8px}
.pc-stop small{margin-left:auto}
.pc-tcard{box-shadow:6px 6px 0 var(--au)}
.pc-rep-g{grid-template-columns:1fr}
.pc-rep-sw .pc-sw{width:92px;height:92px}
.pc-strip-g{grid-template-columns:repeat(2,minmax(0,1fr))}
.pc-fig:nth-child(1){grid-column:span 2}
.pc-fig:nth-child(n+2){grid-column:span 1}
.pc-fig img,.pc-fig:nth-child(-n+2) img{height:clamp(130px,30vw,230px)}
.pc-fig:nth-child(1) img{height:clamp(200px,48vw,320px)}
.pc-story-p::before,.pc-pair-p::before,.pc-pair-r .pc-pair-p::before{inset:18px -16px -18px 18px}
}
@media(max-width:760px){
.pc-tab thead{position:absolute;left:-9999px}
.pc-tab,.pc-tab tbody{display:block}
.pc-tab tr{display:grid;grid-template-columns:1fr 1fr;gap:6px 14px;padding:14px 16px;border-bottom:1px solid var(--hl)}
.pc-tab tbody th{grid-column:1/-1;border:0;padding:0;font-size:1.28rem}
.pc-tab td{border:0;padding:0}
.pc-tab td::before{content:attr(data-l);display:block;font:700 .6rem/1.3 var(--ui);text-transform:uppercase;letter-spacing:.09em;color:var(--sl);margin-bottom:2px}
.pc-tab td:nth-of-type(1),.pc-tab td:nth-of-type(4),.pc-tab-p td{grid-column:1/-1}
.pc-rb{min-width:0}
.pc-tab tbody tr:nth-child(even){background:#fff}
.pc-tab tbody tr:last-child{border-bottom:0}
.pc-tab-r thead{position:static;display:block}
.pc-tab-r tr{grid-template-columns:40px minmax(0,1fr) 56px 56px;gap:8px;align-items:center;padding:3px 12px}
.pc-tab-r thead tr{background:var(--ink);padding:9px 12px;align-items:end}
.pc-tab-r thead th{padding:0;background:none;font-size:.56rem;line-height:1.25;letter-spacing:.05em;color:var(--gd)}
.pc-tab-r tbody th{grid-column:auto;font-size:1rem}
.pc-tab-r td:nth-of-type(1),.pc-tab-r td:nth-of-type(4){grid-column:auto}
.pc-tab-r td{font-size:.92rem}
.pc-tab-r td::before,.pc-tab-r .pc-wk{display:none}
.pc-tab-r .pc-rb{grid-template-columns:minmax(0,1fr) 2.4em;gap:6px}
.pc-tab-r .pc-bar{height:10px}
.pc-rain .pc-rain-n{margin-top:16px;font-size:.88rem}
.pc-wkd{display:block;border-top:2px solid var(--ink)}
.pc-wkd summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;min-height:46px;padding:0 14px;font:700 .8rem/1.3 var(--ui)}
.pc-wkd summary::-webkit-details-marker{display:none}
.pc-wkd summary::after{content:"+";font-size:1.4rem;line-height:1}
.pc-wkd[open] summary::after{content:"\2212"}
.pc-wkd summary:focus-visible{outline:3px solid var(--cr);outline-offset:-3px}
.pc-wkd ul{list-style:none;margin:0;padding:0 14px 8px}
.pc-wkd li{padding:9px 0;border-top:1px solid var(--hl);font-size:.92rem;line-height:1.4}
.pc-wkd li b{font-weight:400;font-style:italic;font-size:1.05rem;margin-right:.35em}
}
@media(max-width:599px){
.pc-sc-g{grid-template-columns:1fr}
.pc-sc{flex-direction:row}
.pc-sc-p{width:38%;flex:none}
.pc-sc-p img{height:100%;aspect-ratio:auto;border-bottom:0;border-right:2px solid var(--ink);min-height:120px}
.pc-sc-t{padding:14px 14px 16px}
.pc-foot-g{grid-template-columns:1fr}
.pc-menu-pg,.pc-menu-jb{grid-template-columns:1fr 1fr;gap:0 14px}
.pc-bn{font-size:1.02rem}
.pc-mark{width:40px;height:40px}
.pc-acts .pc-call,.pc-acts .pc-btn{flex:1 1 100%}
.pc-ab{grid-template-columns:1fr;gap:6px}
.pc-ab-n{font-size:3rem}
.pc-stage-img{border-radius:3px 3px 3px 72px}
.pc-arc{border-radius:3px 3px 64px 3px}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
