body.txc-cantons-page, body.txc-cantons-page .site-content { background:#070707; color:#eee; }
body.txc-cantons-page .theme-banner-breadcrumb { display:none; }
.txc-page { padding:0 0 60px; }
.txc-container { box-sizing:border-box; width:100%; max-width:1400px; padding-inline:28px; margin-inline:auto; }
.txc-hero { background:#0b0b0b url('../images/triplex-cantons-background.jpg') center / cover no-repeat; padding:65px 0 55px; }
.txc-hero h1 { max-width:850px; margin:0 0 18px; color:#fff; font-family:var(--heading-font,'Arial Narrow',sans-serif); font-size:clamp(30px,4vw,48px); font-weight:800; line-height:1.15; text-transform:uppercase; letter-spacing:-.7px; }
.txc-hero h1 span { color:#ff5b00; }
.txc-hero p { color:#bdbdbd; font-size:14px; line-height:1.8; max-width:650px; margin:0; }
.txc-selector { max-width:1000px; margin:32px auto 42px; }
.txc-search { display:flex; gap:12px; max-width:700px; margin:0 auto 28px; }
.txc-search input[type="search"] { min-width:0; width:100%; height:46px; border:1px solid #333; border-radius:24px; padding:10px 20px; background:#111; color:#fff; font:inherit; font-size:13px; }
.txc-search input::placeholder { color:#aaa; opacity:1; }
.txc-search button { flex-shrink:0; border:1px solid #ff5b00; border-radius:7px; padding:10px 23px; background:#ff5b00; color:#fff; font:inherit; font-size:12px; font-weight:700; cursor:pointer; }
.txc-selector h2 { display:flex; align-items:center; gap:16px; color:#ccc; font-size:13px; font-weight:500; margin:0 0 18px; }
.txc-selector h2::after { content:''; height:1px; flex:1; background:#773a16; }
.txc-badges { display:flex; flex-wrap:wrap; justify-content:center; gap:10px; }
.txc-badges a.txc-badge { display:inline-flex; align-items:center; min-height:36px; border:1px solid #333; border-radius:22px; background:#141414; color:#ddd; padding:7px 17px; font-size:12px; line-height:1.5; text-decoration:none; }
.txc-badges a.txc-badge:hover { border-color:#ff5b00; color:#fff; }
.txc-badges a.is-active { background:#ff5b00; border-color:#ff5b00; color:#fff; }
.txc-badges a[hidden], .txc-no-match[hidden] { display:none; }
.txc-badge:focus-visible, .txc-search :focus-visible { outline:2px solid #ff8c45; outline-offset:4px; }
.txc-no-match { color:#bbb; text-align:center; margin-top:18px; }
.txc-listings > h2 { color:#eee; font-size:20px; margin:0 0 22px; }
.txc-listings .txl-full-listing { max-width:none; }
@media(max-width:767px) {
    .txc-container { padding-inline:18px; }
    .txc-hero { padding:38px 0; background-position:60% center; }
    .txc-hero p { max-width:75%; font-size:12px; }
    .txc-selector { margin:26px 0 32px; }
    .txc-search { gap:8px; }
    .txc-search button { padding-inline:14px; }
    .txc-badges { justify-content:flex-start; gap:8px; }
    .txc-badges a.txc-badge { font-size:11px; padding:7px 12px; }
}
