/* Texas Property Protest, inner pages (the comparison page, privacy, email policy, 404).
   Same system as home.css: big sky, yard-sign red, sun yellow, navy ink; 2px ink borders, 18px corners,
   pills on anything you press; Bricolage Grotesque display, Instrument Sans text, DM Mono labels.
   No inline styles anywhere: the site's CSP only allows these stylesheets. */
:root{
  --sky:#dcebfb; --sky-2:#eef5fd; --white:#fff; --ink:#12203a; --ink-2:#33415c; --mute:#4c5a76;
  --red:#d23426; --red-d:#b3281c; --sun:#ffcb3d; --navy:#182a63; --navy-2:#223a82; --olive:#8a9a2c;
  --r:18px; --bd:2px solid var(--ink); --pop:4px 4px 0 var(--ink);
  --disp:'Bricolage Grotesque','Arial Narrow',system-ui,sans-serif;
  --body:'Instrument Sans',system-ui,-apple-system,'Segoe UI',sans-serif;
  --mono:'DM Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
}
*{box-sizing:border-box}
[hidden]{display:none !important}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--sky);color:var(--ink);font:400 17px/1.6 var(--body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
img{display:block;max-width:100%}
a{color:inherit}
p{margin:0;text-wrap:pretty}
.wrap{max-width:1180px;margin:0 auto;padding:0 28px}
.wrap.narrow{max-width:900px}
h1,h2,h3{margin:0;font-family:var(--disp);font-weight:800;text-transform:uppercase;letter-spacing:-.025em;line-height:.96;text-wrap:balance}
h1{font-size:clamp(2.3rem,1.3rem + 4.2vw,4.3rem)}
h2{font-size:clamp(1.9rem,1.3rem + 2.6vw,3.2rem)}
h3{font-size:1.4rem;line-height:1.02}
.lede{font-size:clamp(1.06rem,1rem + .35vw,1.24rem);color:var(--ink-2);max-width:60ch}
.num{font-variant-numeric:tabular-nums}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:focus-visible{outline:3px solid var(--navy-2);outline-offset:3px;border-radius:6px}
section{scroll-margin-top:16px}
.skip{position:absolute;left:-9999px;top:8px;background:var(--ink);color:#fff;padding:10px 14px;border-radius:10px;z-index:10}
.skip:focus{left:16px}

/* Header */
.site-h{background:var(--white);border-bottom:var(--bd)}
.site-h .wrap{display:flex;align-items:center;gap:20px;min-height:74px}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--ink);min-height:44px}
.brand svg{width:38px;height:38px;flex:none}
.brand b{display:block;font:800 1.12rem/1.05 var(--disp);letter-spacing:-.015em}
.brand small{display:block;font-size:.8rem;color:var(--ink-2);font-weight:500;line-height:1.3}
.nav{margin-left:auto;display:flex;gap:26px;font-weight:600;font-size:.95rem}
.nav a{text-decoration:none;padding:12px 0}
.nav a:hover{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:2px}

/* The red pill */
.cta-hero{display:inline-flex;align-items:center;gap:10px;background:var(--red);color:#fff;text-decoration:none;font:800 1rem/1 var(--body);letter-spacing:.03em;text-transform:uppercase;padding:18px 28px;border:var(--bd);border-radius:999px;box-shadow:var(--pop);transition:transform .15s cubic-bezier(.16,1,.3,1),box-shadow .15s cubic-bezier(.16,1,.3,1),background-color .15s;touch-action:manipulation}
.cta-hero:hover{background:var(--red-d);transform:translate(-1px,-1px);box-shadow:5px 5px 0 var(--ink)}
.cta-hero:active{transform:translate(3px,3px);box-shadow:1px 1px 0 var(--ink)}
.cta-hero svg{width:18px;height:18px}

/* Comparison page: top */
.cmp-hero{padding:clamp(40px,5vw,72px) 0 clamp(40px,5vw,64px)}
.cmp-hero .wrap{display:grid;gap:18px;justify-items:start}
.cmp-hero h1{max-width:19ch}
.eyebrow{display:flex;flex-wrap:wrap;gap:6px 14px;font:500 .8rem/1.2 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--navy-2)}
.eyebrow span+span{color:var(--mute)}
.eyebrow span+span::before{content:"\2605";margin-right:14px;color:var(--red)}
.byline{font-size:.92rem;color:var(--mute)}
.disclose{max-width:780px;margin-top:6px;background:var(--sun);border:var(--bd);border-radius:var(--r);box-shadow:var(--pop);padding:18px 22px;display:grid;gap:6px}
.disclose p{font-size:.98rem}
.disclose a,.sub a,.pick a:not(.cta-hero),.checks a,.prose a{color:var(--ink);font-weight:600;text-underline-offset:3px}

/* Comparison page: sections */
.cmp-sec{padding:clamp(56px,7vw,96px) 0}
.cmp-sec.alt,.cmp-sec#glance,.cmp-sec#how{background:var(--white);border-top:var(--bd);border-bottom:var(--bd)}
.cmp-sec h2{margin-bottom:12px}
.cmp-sec .sub{color:var(--ink-2);max-width:62ch;margin-bottom:28px}
.note{font-size:.88rem;color:var(--mute);margin-top:16px;max-width:70ch}

.tbl{background:var(--white);border:var(--bd);border-radius:var(--r);overflow:hidden;box-shadow:6px 6px 0 var(--ink)}
.tbl table{width:100%;border-collapse:collapse;font-size:.97rem}
.tbl th,.tbl td{text-align:left;vertical-align:top;padding:15px 18px;border-top:var(--bd)}
.tbl 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)}
.tbl tbody th{font-weight:700}
.tbl td{color:var(--ink-2)}
.tbl td.num{color:var(--ink);font-weight:700;white-space:nowrap}
.tbl tr.us th,.tbl tr.us td{background:var(--sun);color:var(--ink)}
.tbl tr.us td.num{color:var(--red-d)}
.tbl tr.diy th,.tbl tr.diy td{background:var(--sky-2)}

.bars-sec{background:var(--navy);color:#fff}
.bars-sec h2{color:#fff;margin-bottom:28px}
.bars{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.bars li{display:grid;grid-template-columns:210px 1fr 110px;align-items:center;gap:16px}
.bl{font-weight:600;color:#dfe7fb}
.bv{text-align:right;color:#fff;font:800 1.3rem/1 var(--disp)}
.bt{position:relative;height:20px;border-radius:999px;background:var(--navy-2);border:2px solid #fff;overflow:hidden}
.bt i{position:absolute;left:0;top:0;bottom:0;background:var(--olive)}
.bars li.us .bt i{background:var(--sun)}
.bars li.us .bl,.bars li.us .bv{color:var(--sun)}
.w99{width:19.8%} .w250{width:50%} .w330{width:66%} .w400{width:80%} .w500{width:100%}
.even{margin-top:36px;border:2px solid #fff;border-radius:var(--r);padding:20px 22px;max-width:660px;background:var(--navy-2)}
.even p{color:#dfe7fb} .even b{color:var(--sun)}
.even ul{margin:10px 0 0;padding-left:20px;color:#dfe7fb;display:grid;gap:4px}
.even .num{color:#fff;font-weight:700}
.even-note{margin-top:12px;font-size:.88rem}

.pick{background:var(--white);border:var(--bd);border-radius:var(--r);padding:26px 28px;margin-top:18px}
.pick.us{background:var(--sun);box-shadow:6px 6px 0 var(--ink)}
.pick.diy{background:var(--sky-2);border-style:dashed}
.pick-h{display:flex;gap:16px;align-items:flex-start}
.rank{flex:none;min-width:46px;height:46px;padding:0 8px;border-radius:23px;display:grid;place-items:center;border:var(--bd);background:var(--white);font:800 1.15rem/1 var(--disp)}
.pick.us .rank{background:var(--red);color:#fff}
.pick.diy .rank{border-style:dashed;font-size:1rem}
.pick h3{margin-top:4px}
.best{color:var(--red-d);font-weight:700;font-size:.95rem;margin-top:5px}
.pick dl{margin:18px 0 0;display:grid;gap:12px}
.pick dl div{display:grid;grid-template-columns:120px 1fr;gap:16px}
.pick dt{font:500 .74rem/1.9 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--mute)}
.pick.us dt{color:var(--ink-2)}
.pick dd{margin:0;color:var(--ink-2)}
.pick.us dd{color:var(--ink)}
.pick .cta-hero{margin-top:22px}
.src{margin-top:16px;padding-top:12px;border-top:var(--bd);font-size:.86rem;color:var(--mute)}
.src a{font-weight:500 !important;color:var(--ink-2) !important}

.checks{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:0;max-width:70ch}
.checks li{padding:15px 0;border-top:var(--bd);color:var(--ink-2)}
.checks li:last-child{border-bottom:var(--bd)}
.checks b{color:var(--ink)}
.emailed{margin-top:32px;background:var(--sky-2);border:var(--bd);border-radius:var(--r);box-shadow:var(--pop);padding:22px 24px;display:grid;gap:10px;max-width:740px}
.emailed p{color:var(--ink-2)}
.prose{display:grid;gap:14px;color:var(--ink-2);max-width:66ch}

/* Questions */
.faq{padding:clamp(56px,7vw,96px) 0}
.faq h2{margin-bottom:22px}
.faq details{border-top:var(--bd)}
.faq details:last-of-type{border-bottom:var(--bd)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:16px;align-items:center;padding:20px 0;font:800 clamp(1.05rem,1rem + .4vw,1.3rem)/1.08 var(--disp);text-transform:uppercase;letter-spacing:-.015em}
.faq summary::-webkit-details-marker{display:none}
.faq summary svg{width:34px;height:34px;padding:7px;flex:none;border:var(--bd);border-radius:50%;background:var(--white);transition:transform .2s cubic-bezier(.16,1,.3,1),background-color .2s}
.faq details[open] summary svg{transform:rotate(45deg);background:var(--sun)}
.faq details p{padding:0 0 22px;color:var(--ink-2);max-width:62ch}
.faq details p a{color:var(--ink);font-weight:600;text-underline-offset:3px}

/* Closing band and footer */
.band{background:var(--red);color:#fff;border-top:var(--bd);padding:clamp(56px,7vw,88px) 0}
.band .wrap{display:grid;gap:16px;justify-items:start}
.band h2{color:#fff}
.band p{color:#ffe9e5;max-width:60ch;font-size:1.1rem}
.band .cta-hero{background:var(--sun);color:var(--ink)}
.band .cta-hero:hover{background:#ffd85f}
.site-f{background:var(--ink);color:#b7c3dc;padding:40px 0 44px;font-size:.9rem;border-top:var(--bd)}
.site-f .wrap{display:grid;gap:10px}
.site-f b{color:#fff}
.site-f a{color:#e3eaf8}
.site-f .links{display:flex;gap:20px;flex-wrap:wrap}
.site-f .links a{display:inline-block;padding:11px 0}

/* Legal pages */
.legal{padding:56px 0 96px;background:var(--white);border-bottom:var(--bd)}
.legal .wrap{max-width:780px}
.legal h1{font-size:clamp(2rem,1.4rem + 2.4vw,3.2rem)}
.legal .updated{color:var(--mute);margin-top:12px;font:500 .8rem/1.3 var(--mono);letter-spacing:.05em;text-transform:uppercase}
.legal h2{font-size:1.35rem;margin-top:42px}
.legal p,.legal li{color:var(--ink-2);margin-top:12px;max-width:66ch}
.legal ul{padding-left:20px;margin:12px 0 0}
.legal a{color:var(--ink);font-weight:600;text-underline-offset:3px}
.back{display:inline-block;margin-bottom:28px;padding:10px 0;color:var(--ink-2);text-decoration:none;font-weight:700}
.back:hover{color:var(--ink)}

@media (max-width:900px){.nav{display:none}}
@media (max-width:760px){
  body{font-size:16px}
  .wrap{padding:0 18px}
  .eyebrow{flex-direction:column;gap:4px}
  .eyebrow span+span::before{content:none}
  .tbl{background:none;border:0;border-radius:0;overflow:visible;box-shadow:none}
  .tbl table,.tbl tbody,.tbl tr,.tbl th,.tbl td{display:block}
  .tbl thead{position:absolute;left:-9999px}
  .tbl tr{background:var(--white);border:var(--bd);border-radius:var(--r);padding:14px 16px;margin-bottom:12px;overflow:hidden}
  .tbl tr.us{background:var(--sun);box-shadow:var(--pop)}
  .tbl tr.us th,.tbl tr.us td,.tbl tr.diy th,.tbl tr.diy td{background:none}
  .tbl tr.diy{background:var(--sky-2);border-style:dashed}
  .tbl tbody th{padding:0 0 8px;border:0;font-size:1.08rem}
  .tbl td{display:flex;justify-content:space-between;gap:16px;padding:8px 0;border-top:var(--bd);text-align:right}
  .tbl td::before{content:attr(data-l);flex:none;max-width:48%;text-align:left;color:var(--mute);font:400 .86rem/1.5 var(--body)}
  .tbl tr.us td::before{color:var(--ink-2)}
  .tbl td.num{white-space:normal}
  .bars li{grid-template-columns:1fr auto;grid-template-areas:"l v" "t t";gap:6px 12px}
  .bl{grid-area:l} .bv{grid-area:v} .bt{grid-area:t}
  .pick{padding:20px}
  .pick dl div{grid-template-columns:1fr;gap:2px}
  .src a{display:inline-block;padding:12px 0}
}
@media (prefers-reduced-motion:reduce){*{transition:none !important}}
