/* city.css — shared styles for RankGrid /local-seo/{city}-tx/ pages.
   Loads AFTER product.css and extends it. */

.wrap{max-width:1000px}

/* breadcrumb */
.crumb{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:rgba(244,233,213,.6);padding:18px 0 0}
.crumb a{color:rgba(244,233,213,.6);transition:color .12s ease}
.crumb a:hover{color:var(--gold)}
.crumb span{color:var(--gold)}

/* city banner image */
.citybanner{width:100%;max-width:1000px;height:auto;display:block;border:3px solid var(--ink);border-radius:6px;margin:16px 0 4px;box-shadow:0 14px 34px rgba(21,13,9,.4)}

/* hero left-aligned for city pages */
.hero.city{text-align:left;padding:34px 0 22px}
.hero.city .lede{margin-left:0}
.hero.city .btns{justify-content:flex-start}
.pin{font-family:var(--mono);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:14px}

/* local context block */
.localblock p{color:var(--dim);font-size:16.5px;max-width:68ch;margin:0 0 16px;line-height:1.6}
.localblock p b{color:var(--cream)}

/* 3-up cards */
.cardgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:24px}
.card{background:var(--ink);border-radius:3px;padding:22px 22px 24px}
.card .k{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:10px}
.card h3{margin:0 0 8px;font-size:18px;letter-spacing:-.01em;color:var(--cream)}
.card p{margin:0;color:var(--dim);font-size:14.5px;line-height:1.55}
@media(max-width:760px){.cardgrid{grid-template-columns:1fr}}

/* who it's for */
.who{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:24px}
.who > div{background:var(--ink);border-radius:3px;padding:20px 22px}
.who h3{margin:0 0 6px;font-size:17px;color:var(--gold)}
.who p{margin:0;color:var(--dim);font-size:14.5px;line-height:1.55}
@media(max-width:600px){.who{grid-template-columns:1fr}}

/* in-page map */
.areamap{margin-top:26px;border:3px solid var(--ink);border-radius:4px;overflow:hidden;background:var(--ink);line-height:0}
.areamap iframe{width:100%;height:300px;border:0;display:block}

/* nearby cities */
.nearby{list-style:none;padding:0;margin:22px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.nearby a{display:block;background:var(--ink);color:var(--cream);padding:13px 16px;border-radius:2px;font-weight:700;font-size:14.5px;transition:background .12s ease,transform .12s ease}
.nearby a:hover{background:#20140c;transform:translateY(-2px)}
@media(max-width:820px){.nearby{grid-template-columns:repeat(3,1fr)}}
@media(max-width:520px){.nearby{grid-template-columns:repeat(2,1fr)}}

/* rich footer (mirrors homepage) */
.site-footer{background:var(--ink);color:var(--cream);border-top:3px solid #000;padding:48px 0 22px;margin-top:26px;font-family:var(--disp);text-align:left;text-transform:none;letter-spacing:normal;line-height:1.5;font-size:14px}
.site-footer .wrap{max-width:1000px}
.foot-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:34px}
.foot-brand .fb{display:flex;align-items:center;gap:9px;font-weight:800;font-size:18px;letter-spacing:.02em;color:var(--cream);margin-bottom:12px}
.foot-brand .fb img{width:26px;height:26px;border-radius:6px;border:1.5px solid #000;object-fit:cover;object-position:50% 30%}
.foot-brand p{color:var(--dim);font-size:14px;max-width:36ch;margin:0 0 14px;line-height:1.6}
.foot-mail{color:var(--gold);font-family:var(--mono);font-size:13px;letter-spacing:.02em}
.foot-mail:hover{text-decoration:underline}
.foot-col h4{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin:0 0 14px}
.foot-col a{display:block;color:var(--dim);font-size:14px;margin-bottom:11px;transition:color .12s ease}
.foot-col a:hover{color:var(--cream)}
/* full-width serving band */
.foot-areas{margin-top:36px;padding-top:26px;border-top:1px solid rgba(244,233,213,.14);text-align:center}
.foot-areas .lbl{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin:0 0 12px}
.foot-areas .cities{color:var(--dim);font-size:13.5px;line-height:2;max-width:820px;margin:0 auto}
.foot-areas .cities a{color:var(--dim);transition:color .12s ease;white-space:nowrap}
.foot-areas .cities a:hover{color:var(--cream)}
.foot-map{margin-top:28px;border:2px solid #000;border-radius:4px;overflow:hidden;line-height:0}
.foot-map iframe{width:100%;height:230px;border:0;display:block;filter:grayscale(.15)}
.foot-bottom{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:26px;padding-top:18px;border-top:1px solid rgba(244,233,213,.12);font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:rgba(244,233,213,.55)}
@media(max-width:760px){.foot-grid{grid-template-columns:1fr 1fr;gap:26px}.foot-brand{grid-column:1/-1}}
@media(max-width:480px){.foot-grid{grid-template-columns:1fr}}
