/* Texas Property Protest, place pages (a city, then a neighborhood). Loaded AFTER home.css, texas.css and county.css and only
   holds what those three lack. Every class here is prefixed plc-. Same palette, fonts, 2px ink borders and hard offset shadows.
   No inline styles anywhere: the site's CSP only allows stylesheets from this origin. */

/* ---------- Hero: one short lead sits straight under the headline ---------- */
.plc-lead{max-width:62ch;margin-top:clamp(14px,1.8vw,20px);padding:2px 0 2px 18px;border-left:6px solid var(--red);font:600 clamp(1rem,.96rem + .4vw,1.2rem)/1.45 var(--body);color:var(--ink)}
.plc-hero .cty-claim{margin-top:clamp(20px,2.4vw,28px)}
.plc-art{max-width:300px;margin-bottom:0}
.plc-art img{width:min(100%,250px);margin:0 auto}
@media (max-width:860px){.plc-art{max-width:200px;margin:22px auto 0}.plc-art img{width:170px}}
/* Phones: while step two of the sign-up form is open its own button is the call to action, so the fixed bottom bar steps aside.
   (scroll-margin on the field does not move a focused field that is already inside the viewport, so it cannot keep the bar off it.) */
@media (max-width:860px){body:has(#tx-step2:not([hidden])) .stickybar{display:none !important}}

/* ---------- The dated answer block under the first question ---------- */
.plc-answer{max-width:68ch;margin-top:clamp(16px,2vw,22px);padding:2px 0 2px 20px;border-left:6px solid var(--red);font:600 clamp(1.02rem,.98rem + .4vw,1.2rem)/1.5 var(--body);color:var(--ink)}
.plc-answer + .sub{margin-top:18px}

/* ---------- Data sections ---------- */
.plc-sec .sub{max-width:68ch}
.plc-sec h3{margin-top:clamp(30px,4vw,44px)}
.plc-sec .cty-card h3{margin-top:0}
.plc-sec h2 + h3,.plc-sec h2 + .sub{margin-top:16px}
.plc-sec h2 + h3{margin-top:clamp(22px,3vw,32px)}
.plc-sec .sub a,.plc-sec .source a,.plc-sec .note a,.plc-answer a,.plc-lead a,.plc-fine a,.plc-qa a,.plc-more a,.plc-who .sub a,.plc-fb a{color:var(--ink);font-weight:600;text-underline-offset:3px}
.plc-sec .cty-tbl{margin-top:20px}
.plc-sec .source{max-width:72ch}
.plc-sec .note{max-width:72ch}
.plc-units{max-width:56ch;margin-top:12px}
.plc-legend{max-width:56ch;margin-top:18px;font-size:.92rem;color:var(--ink-2)}
.plc-legend li{padding:1px 0}
.plc-file{margin-top:8px}
.plc-file li{padding:2px 0}
.plc-codes{max-width:56ch;margin-top:18px}
.plc-codes li{display:flex;gap:16px;align-items:baseline}
.plc-codes b{flex:none;min-width:5.2em;font:500 .9rem/1.4 var(--mono);letter-spacing:.04em}
/* a plain-words definition under a table row label */
.plc-def{display:block;margin-top:3px;max-width:44ch;font:400 .86rem/1.35 var(--body);letter-spacing:0;text-transform:none;color:var(--ink-2)}

/* ---------- How a protest works: three short cards ---------- */
.plc-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:clamp(26px,3.6vw,38px);align-items:start}
.plc-three .cty-card p + p{margin-top:6px}
.plc-guides{margin-top:clamp(28px,3.6vw,40px);max-width:64ch}
.plc-guides li{padding:2px 0}
.plc-guides a{display:inline-block;padding:11px 0;font-weight:700;color:var(--ink);text-underline-offset:5px;text-decoration-thickness:2px}

/* ---------- The offer ---------- */
.plc-fine{margin-top:clamp(22px,3vw,32px);text-align:center;color:var(--ink-2)}

/* ---------- Questions: visible headings and text ---------- */
.plc-qa{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:clamp(26px,3.6vw,38px);align-items:start}
.plc-qa .cty-card h3{font-size:clamp(1.12rem,1.02rem + .5vw,1.4rem);line-height:1.05;text-wrap:balance}
.plc-qa .cty-card p{max-width:60ch}
.plc-faq .source{margin-top:22px}

/* ---------- Last line: more places and the check date ---------- */
.plc-checked{padding:clamp(28px,4vw,44px) 0 clamp(36px,5vw,56px)}
.plc-more-h{font:500 .8rem/1.3 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--mute)}
.plc-more{display:flex;flex-wrap:wrap;gap:0 18px;margin:4px 0 0;padding:0;list-style:none;font-size:.95rem;color:var(--ink-2)}
.plc-more a{display:inline-block;padding:11px 0}
.plc-date{margin-top:6px;font:500 .8rem/1.3 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--mute)}

@media (max-width:980px){.plc-three{grid-template-columns:1fr}}
@media (max-width:860px){.plc-qa{grid-template-columns:1fr}}
@media (max-width:700px),(pointer:coarse){
  .plc-sec .sub a,.plc-sec .source a,.plc-sec .note a,.plc-answer a,.plc-lead a,.plc-fine a,.plc-qa a,.plc-three a,.plc-fb a,.plc-who .sub a,.plc-fees .source a{padding:14px 0}
}

/* ================= Version two ================= */
/* ---------- A. First screen: the Katy line ---------- */
.plc-fb{max-width:62ch;margin-top:10px;font-size:.95rem;color:var(--ink-2)}
.plc-fb a{font-weight:600;text-underline-offset:3px}

/* ---------- C. Fee comparison (the live block, no slider) ---------- */
.plc-fees .source a{color:var(--ink);font-weight:600;text-underline-offset:3px}
.plc-fees .cty-cta{margin-top:clamp(26px,3.4vw,40px)}

/* ---------- D. Who files it ---------- */
.plc-who-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:clamp(24px,4vw,56px);align-items:center}
.plc-who .sub{max-width:62ch}
.plc-who .sub a{font-weight:700;text-underline-offset:3px}
.plc-licence{max-width:62ch;margin-top:22px;padding:2px 0 2px 20px;border-left:6px solid var(--red);font:600 clamp(1.02rem,.98rem + .4vw,1.2rem)/1.5 var(--body);color:var(--ink)}
.plc-who-art{justify-self:center;width:clamp(120px,22vw,260px);height:auto}
.plc-who .tx-figs{margin:clamp(34px,4.4vw,52px) auto clamp(26px,3.4vw,38px)}
.plc-who .cty-cta{margin-top:0}

/* ---------- E. What the flat fee covers ---------- */
.plc-cover-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:clamp(28px,5vw,72px);align-items:center}
.plc-cover-what{max-width:640px}
.plc-cover .sub{max-width:52ch}
.plc-cover-list li{padding-right:68px}
.plc-stk{position:absolute;right:0;top:12px;width:48px;height:48px;object-fit:contain}
.plc-cover .helper{margin-top:0}
.plc-cover .cty-cta{margin-top:clamp(28px,3.6vw,44px)}

/* ---------- F. Place facts: headings with a small picture, then the neighborhood finder ---------- */
.plc-h3row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:clamp(30px,4vw,44px)}
.plc-sec .plc-h3row h2,.plc-sec .plc-h3row h3{margin-top:0}
.plc-sec h2 + .plc-h3row{margin-top:clamp(22px,3vw,32px)}
.plc-sec .plc-h2row{margin-top:0}
.plc-find-art{flex:none;height:auto}
.plc-art-zip{width:104px}
.plc-art-nb{width:112px}
.plc-finder{margin-top:22px;max-width:1040px}
.plc-find-bar{display:grid;gap:8px;margin-bottom:16px}
.plc-find-l{font:500 .8rem/1.2 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--navy-2)}
.plc-find-i{width:100%;min-height:48px;padding:12px 20px;font:400 1rem/1.3 var(--body);color:var(--ink);background:#fff;border:var(--bd);border-radius:999px;box-shadow:var(--pop);-webkit-appearance:none;appearance:none}
.plc-find-i::placeholder{color:var(--mute);opacity:1}
.plc-find-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.plc-find-n{font-size:.95rem;color:var(--ink-2)}
.plc-find-more{flex:none;min-height:44px;padding:0 20px;border:var(--bd);border-radius:999px;background:transparent;color:var(--ink);font:700 .86rem/1 var(--body);letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;cursor:pointer;touch-action:manipulation;transition:background-color .15s}
.plc-find-more:hover{background:var(--sky-2)}
.plc-find-more:active{background:var(--sun)}
.plc-nbt-wrap{background:var(--white);border:var(--bd);border-radius:var(--r);overflow:hidden;box-shadow:6px 6px 0 var(--ink)}
.plc-nbt{width:100%;border-collapse:collapse;font-size:.97rem}
.plc-nbt th,.plc-nbt td{text-align:left;vertical-align:top;padding:14px 20px;border-top:var(--bd)}
.plc-nbt thead th{border-top:0;background:var(--sky-2);font:500 .76rem/1.3 var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2);white-space:nowrap}
.plc-nbt thead th:last-child{text-align:right}
.plc-nbt tbody th{font-weight:700}
.plc-nbt tbody td{color:var(--ink-2)}
.plc-nbt tbody td:nth-child(2){font:500 .9rem/1.4 var(--mono);letter-spacing:.02em;white-space:nowrap}
.plc-nbt td.num{text-align:right;color:var(--ink);font:800 1.3rem/1.15 var(--disp);letter-spacing:-.02em;white-space:nowrap}
.plc-nbt a{color:var(--ink);font-weight:600;text-underline-offset:3px}
.plc-finder.is-collapsed .plc-x{display:none}
.plc-nbt tr.plc-miss{display:none}
.plc-find-empty{margin-top:14px;font-weight:600;color:var(--ink-2)}
.plc-finder [hidden]{display:none}

/* ---------- H. Prices ---------- */
.plc-price .cty-pay{position:relative}
.plc-price .cty-pay .cty-price-lead{max-width:44ch}
.plc-sign{position:absolute;right:clamp(10px,2vw,28px);bottom:-52px;width:150px;height:auto;transform:rotate(4deg);pointer-events:none}

/* ---------- I-a. The live questions ---------- */
.plc-owl{flex:none;width:150px;height:auto}

@media (min-width:981px){
  .plc-price .cty-pay .cty-pricecard{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr)}
  .plc-price .cty-pay .tx-tiles{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
  .plc-who-grid{grid-template-columns:1fr;gap:18px}
  .plc-who-art{width:120px}
  .plc-cover-grid{grid-template-columns:1fr;gap:6px}
}
@media (max-width:700px){
  .plc-cover .helper{height:130px;margin-top:14px}
  .plc-cover .helper img{width:120px}
  .plc-cover .bubble--helper{left:104px;top:12px}
  .plc-art-zip,.plc-art-nb{width:64px}
  .plc-owl{width:72px}
  .plc-sign{display:none}
  .plc-nbt thead{position:absolute;left:-9999px}
  .plc-nbt,.plc-nbt tbody{display:block}
  .plc-nbt tbody{margin-top:-2px}
  .plc-nbt tr{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"n c" "k c";column-gap:12px;align-items:center;padding:9px 14px;border-top:var(--bd)}
  .plc-nbt th,.plc-nbt td{display:block;padding:0;border:0}
  .plc-nbt tbody th{grid-area:n;font-size:.98rem;line-height:1.25}
  .plc-nbt tbody td:nth-child(2){grid-area:k;margin-top:3px;font-size:.76rem;line-height:1.2}
  .plc-nbt td.num{grid-area:c;font-size:1.2rem;line-height:1.15}
  .plc-find-n{font-size:.9rem}
}
@media (prefers-reduced-motion:reduce){.plc-find-more{transition:none}}

/* ================= Version two, second pass ================= */
/* Phones: the fixed bottom bar stays away until the whole hero form has scrolled off (place.js toggles body.plc-pill-in), so it never
   sits on the hero button on a short screen (finding render-1). */
@media (max-width:860px){body.plc-pill-in .stickybar{display:none !important}}
/* Step two of the sign-up opens with the form card at the top of a phone screen, so first name, email, the tick box and the button all show
   (finding render-3; place.js does the scroll). */
.plc-hero .tx-claim{scroll-margin-top:12px}
/* The live "Nobody can promise a reduction, including us" paragraph: directly under the fee tiles, reading size, ink colour (finding copy-7). */
.plc-caveat{max-width:62ch;margin-top:clamp(18px,2.4vw,26px);font:600 clamp(1.02rem,.98rem + .4vw,1.2rem)/1.5 var(--body);color:var(--ink)}
.plc-fees .plc-caveat + .source{margin-top:12px}
/* A short question line under a live heading (finding search-should-1). */
.plc-q{max-width:62ch;margin-top:10px;font:700 clamp(1.08rem,1rem + .45vw,1.3rem)/1.25 var(--body);letter-spacing:0;text-transform:none;color:var(--ink-2)}
/* A heading with a picture beside it wraps instead of pushing the page sideways at 320 px (finding render-6). */
.plc-h3row{flex-wrap:wrap}
/* No match in the finder: hide the empty table frame, the line below it says so (finding render-7). */
.plc-finder.has-none .plc-nbt-wrap{display:none}
/* Touch targets of 44 px (finding render-9). */
@media (pointer:coarse){
  .plc-hero .cty-crumbs a{display:inline-block;min-width:44px}
  .plc-nbt a{display:inline-block;padding:7px 0}
  .plc-checked a{display:inline-block;min-width:44px;min-height:44px;line-height:44px;padding:0}
}
@media (max-width:700px){
  /* The roll, school-district, taxing-unit, ZIP and utility-district tables become one row per item, name left and figure right, the way the
     finder rows read: no repeated captions, no stack of cards (finding render-4). Desktop tables are untouched. */
  .plc-sec .cty-tbl{background:var(--white);border:var(--bd);border-radius:var(--r);overflow:hidden;box-shadow:4px 4px 0 var(--ink)}
  .plc-sec .cty-tbl tr{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 12px;margin:0;padding:11px 14px;background:none;border:0;border-top:var(--bd);border-radius:0;box-shadow:none}
  .plc-sec .cty-tbl tbody tr:first-child{border-top:0}
  .plc-sec .cty-tbl tbody th{flex:1 1 0;min-width:46%;padding:0;font-size:1rem;line-height:1.3}
  .plc-sec .cty-tbl td{display:block;padding:0;border:0;text-align:right}
  .plc-sec .cty-tbl td::before{display:none}
  .plc-sec .cty-tbl td.num{flex:none;margin-left:auto;font-size:1.2rem}
  .plc-sec .cty-tbl td:not(.num){flex:1 1 100%;text-align:left;font-size:.9rem}
  .plc-sec .cty-tbl tr:has(td.num + td.num) th{flex:1 1 100%}       /* two figures in a row (homes, share): the name takes its own line, the figures sit together under it */
  .plc-sec .cty-tbl td.num + td.num{margin-left:0}
}
