.stay-main,.home-stay{width:min(1160px,calc(100% - 48px));margin:56px auto 64px}.stay-hero{padding:18px 0 32px}.stay-hero h1,.home-stay h2{font-size:clamp(32px,4vw,52px);font-weight:800;letter-spacing:-1.5px;line-height:1.12;margin:12px 0 18px}.stay-hero h1 em,.home-stay h2 em{color:var(--action,#00f5d4);font-style:normal}.stay-lead{max-width:710px;color:var(--muted);font-size:17px;line-height:1.7}.stay-kicker{color:var(--orange,#ff2a85);font-size:11px;font-weight:850;letter-spacing:2px}.stay-region{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}.stay-region span,.stay-tag{border:1px solid var(--line);border-radius:20px;padding:6px 11px;font-size:11px}.stay-filters{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:24px;margin:12px 0 24px}.stay-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:18px}.stay-field{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:700}.stay-field input,.stay-field select{width:100%;min-width:0;padding:12px;border:1px solid var(--line);border-radius:9px;background:var(--cream);color:var(--ink);font:inherit;min-height:46px}.stay-filter-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:20px;flex-wrap:wrap}.stay-check{display:flex;align-items:center;gap:10px;min-height:44px}.stay-check input{width:20px;height:20px;accent-color:var(--action)}.stay-reset{padding:10px 16px;background:transparent;border:1px solid var(--line);border-radius:8px;font:inherit;color:var(--ink);min-height:44px}.stay-context{font-size:12px;line-height:1.6;color:var(--muted);margin:20px 0}.stay-results-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:30px 0 18px}.stay-results-heading h2{font-size:26px;font-weight:750}.stay-count{font-size:13px;color:var(--muted)}.stay-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.stay-card{min-width:0;background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:24px;display:flex;flex-direction:column;gap:14px;overflow-wrap:anywhere;border-top:3px solid var(--action,#00f5d4)}.stay-card[data-county=Avery]{border-top-color:#CE1126}.stay-card[data-county=Ashe]{border-top-color:#800080}.stay-card h3{font-size:21px;line-height:1.3;font-weight:800}.stay-card-location{color:var(--muted);font-size:12px}.stay-type{font-size:10px;color:var(--action);font-weight:800;letter-spacing:1px;text-transform:uppercase}.stay-tags{display:flex;gap:6px;flex-wrap:wrap}.stay-tag{font-size:10px;padding:4px 9px}.stay-note{font-size:12px;line-height:1.65;color:var(--muted);background:var(--light);border-radius:8px;padding:12px}.stay-season{color:var(--orange);font-size:11px;font-weight:750}.stay-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:auto;padding-top:12px;border-top:1px solid var(--line)}.stay-actions a{font-size:12px;font-weight:800;color:var(--action);min-height:32px}.stay-empty{border:1px dashed var(--line);border-radius:14px;padding:40px;text-align:center;grid-column:1/-1}.stay-empty p{color:var(--muted);margin:12px 0 20px}.stay-commercial{border:1px solid var(--line);border-radius:16px;background:var(--paper);padding:24px;margin-top:36px;display:flex;gap:24px;align-items:center;justify-content:space-between}.stay-commercial h2{font-size:24px;font-weight:750}.stay-commercial p{color:var(--muted);font-size:13px;margin-top:10px;max-width:750px}.stay-commercial a{color:var(--action);font-weight:750;white-space:nowrap}.stay-placement-label{font-size:11px;letter-spacing:1px;font-weight:850;color:var(--orange)}.stay-placements{margin:30px 0}.stay-placements h2{font-size:26px;font-weight:750;margin-bottom:20px}.stay-disclosure{font-size:12px;color:var(--muted);margin:16px 0}.home-stay{padding:36px 0;border-top:1px solid var(--line)}.home-stay-head{display:flex;justify-content:space-between;align-items:end;gap:20px}.home-stay-head p{color:var(--muted);max-width:710px;font-size:15px}.home-stay-head>a{color:var(--action);white-space:nowrap;font-weight:800}.stay-discovery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:28px}.stay-discovery{display:flex;flex-direction:column;gap:14px;min-height:176px;text-decoration:none;padding:24px;background:var(--paper);border:1px solid var(--line);border-radius:14px;border-top:3px solid var(--action);transition:border-color .15s}.stay-discovery:nth-child(2){border-top-color:#ff2a85}.stay-discovery:nth-child(3){border-top-color:#ffb703}.stay-discovery:nth-child(4){border-top-color:#ba9cff}.stay-discovery strong{font-size:19px;line-height:1.3}.stay-discovery span{font-size:12px;line-height:1.6;color:var(--muted)}.stay-discovery b{color:var(--action);margin-top:auto}.stay-discovery:hover{border-color:var(--action)}.stay-main :focus-visible,.home-stay :focus-visible{outline:3px solid var(--action);outline-offset:4px}.stay-main [hidden]{display:none!important}@media(max-width:960px){.stay-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stay-discovery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.stay-main,.home-stay{width:calc(100% - 32px);margin:28px auto 40px}.stay-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.stay-filters{padding:18px}.stay-grid{grid-template-columns:1fr}.stay-card{padding:22px}.home-stay-head,.stay-commercial{flex-direction:column;align-items:flex-start}.home-stay h2{font-size:32px}.stay-discovery{padding:18px;min-height:186px}.stay-discovery strong{font-size:17px}.stay-results-heading{flex-wrap:wrap}.stay-lead{font-size:15px}}@media(prefers-reduced-motion:reduce){.stay-discovery{transition:none}}

.stay-filters fieldset{border:0;padding:0;margin:0}.stay-filters legend{margin-bottom:18px}

/* Keep the lodging title in proportion with the guide and expose category choices. */
.stay-hero h1{font-size:clamp(32px,3.4vw,46px);letter-spacing:-1px;line-height:1.15}
.stay-hero h1 em{color:var(--orange,#ff2a85)}
.stay-categories{border:0;padding:0;margin:24px 0 0;min-width:0}
.stay-categories legend{font-size:12px;font-weight:750;color:var(--muted);margin-bottom:10px}
.stay-category-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px 12px}
.stay-category-options label{display:flex;align-items:center;gap:8px;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:10px;font-size:12px;font-weight:700;cursor:pointer}
.stay-category-options label:has(input:checked){border-color:var(--orange,#ff2a85);background:var(--paper)}
.stay-category-options input{margin:0;width:16px;height:16px;accent-color:var(--orange,#ff2a85)}
.stay-category-options label:focus-within{outline:2px solid var(--orange,#ff2a85);outline-offset:2px}
@media(max-width:600px){.stay-category-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.stay-category-options label{font-size:11px;padding:8px}.stay-hero h1{font-size:32px}}

@media(min-width:601px) and (max-width:960px){.stay-category-options{grid-template-columns:repeat(3,minmax(0,1fr))}}
/* Compact category pills mirror the county labels while retaining native radios. */
.stay-category-options{display:flex;flex-wrap:wrap;gap:8px}
.stay-category-options label{position:relative;display:inline-flex;min-height:0;padding:6px 11px;border-radius:20px;font-size:11px;font-weight:500;line-height:1.4;gap:0}
.stay-category-options input{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.stay-category-options label:has(input:checked){color:var(--orange,#ff2a85);border-color:var(--orange,#ff2a85);background:var(--paper)}

/* Exact county accents from the restaurant geography palette. */
.stay-card[data-county=Watauga]{border-top-color:#B9D9EB}

.stay-actions a.stay-expedia-link,#stay-expedia>a{display:inline-flex;align-items:center;justify-content:center;background:#ffdf00;color:#101019;border:1px solid #ffdf00;border-radius:9px;padding:10px 14px;min-height:44px;text-decoration:none;font-size:13px;font-weight:800;line-height:1.4}.stay-actions a.stay-expedia-link:hover,#stay-expedia>a:hover{background:#ffe94d;border-color:#ffe94d}.stay-actions a.stay-expedia-link:focus-visible,#stay-expedia>a:focus-visible{outline:3px solid var(--ink);outline-offset:4px}
