/* Search results: readable, compact cards with the secondary information on demand. */
.site-header{min-height:66px;gap:16px;padding-inline:clamp(16px,4vw,54px)}
.site-header .brand img{width:190px!important;max-width:42vw!important}
main>section{padding-inline:clamp(16px,4vw,54px)}
.hero{min-height:0;gap:28px;padding-block:32px}
.hero h1{font-size:clamp(30px,3.8vw,48px);line-height:1.12}
.hero-intro{margin:12px 0 16px;font-size:15px;line-height:1.5}
.hero .route-card{padding:22px}.hero .route-card h2{font-size:26px;margin-top:12px}
.hero .route-card p,.hero .route-card li{font-size:14px;line-height:1.4}
.directory-note{margin:10px 0;font-size:12px;line-height:1.4}
.quick-section,.results-section{padding-block:24px}
.section-heading{gap:16px;margin-bottom:14px}
.section-heading h2{font-size:clamp(23px,2.6vw,30px);line-height:1.2}
.section-heading>p{font-size:14px;margin:0}
.eyebrow{margin-bottom:5px}
.category-grid{gap:9px}
.category-grid button{padding:12px;gap:6px;min-height:0}
.category-grid button>span{width:30px;height:30px;font-size:18px;border-radius:8px}
.category-grid strong{font-size:17px;margin:6px 0 2px}.category-grid small{font-size:12px;line-height:1.35}
.results-section{scroll-margin-top:74px}
.directory-filters{grid-template-columns:minmax(180px,1.7fr) repeat(3,minmax(120px,1fr));gap:8px 12px;padding:12px;border-radius:12px;margin:10px 0}
.directory-filters label{font-size:12px;gap:4px}
.directory-filters .free-text-filter{grid-column:auto}
.directory-filters input,.directory-filters select{padding:8px 9px;min-height:36px;border-radius:6px;font-size:14px}
.directory-filters .route-toggle{grid-column:1/3;gap:7px;font-size:12px}
.directory-filters .route-toggle input{width:16px;height:16px;min-height:0;padding:0}
.directory-filters .search-everywhere{grid-column:3/5;justify-self:end;font-size:12px;padding:5px 0}
#results-status{font-size:13px;margin:10px 0}
.results-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:12px;margin-top:12px}
.service-card{padding:13px 14px;border-radius:12px;font-size:14px;line-height:1.4;min-width:0}
.service-card>.listing-tier-badge{float:right;margin:0 0 5px 8px}
.service-card>.tag{display:block;min-height:24px;padding-top:4px;font-size:10px;letter-spacing:.07em;line-height:1.4}
.service-card h3{clear:both;font-size:18px;line-height:1.22;margin:6px 0;font-weight:700}
.service-card p{font-size:14px;line-height:1.4;margin:5px 0;overflow-wrap:anywhere}
.service-card .card-location{font-size:12px;line-height:1.35;color:#4e626a}
.service-card .card-description{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin:7px 0}
.service-card .business-contacts{grid-template-columns:auto minmax(0,1fr);gap:4px 8px;margin:8px 0;padding:8px 0 0;font-size:13px;line-height:1.35}
.service-card .business-contacts dt{font-size:12px}.service-card .business-contacts dd{margin:0;min-width:0}
.service-card .business-contacts a{font-size:13px;overflow-wrap:anywhere}
.service-card .card-actions{gap:6px;margin-top:10px;align-items:stretch}
.service-card .card-actions>*{flex:1 1 auto;width:auto;min-height:34px;padding:7px 8px;border-radius:6px;font:600 12px/1.35 Arial,sans-serif;text-align:center}
.service-card .card-actions .card-web{flex-grow:0}
.service-card .card-web .external-tab-note{display:none}
.service-card .card-details{clear:both;border-top:1px solid #dce4e2;padding-top:7px;margin-top:10px;font-size:12px}
.service-card .card-details>summary{cursor:pointer;color:#164c5c;font:600 12px/1.4 Arial,sans-serif;min-height:28px;padding:5px 0}
.service-card .card-details[open]>summary{margin-bottom:7px}
.service-card .card-details p{font-size:13px;line-height:1.5;white-space:pre-line}
.service-card .card-details .verified{font-size:11px;display:block;margin:7px 0}
.service-card .card-details .card-extra-contacts{margin:8px 0;padding-top:8px}
.service-card .card-details .owner-update{padding:0;border:0;background:none;margin:10px 0 2px}
.service-card .card-details .owner-update a{font-size:12px;display:inline-block;padding:5px 0}
.service-card .card-details .source-button{font:600 12px Arial,sans-serif;padding:7px 8px;margin:8px 0;border:1px solid #bfceca;border-radius:6px;background:#fff;color:#164c5c;cursor:pointer}
.service-card .card-alert{font-size:12px;font-weight:700;background:#fff3dc;color:#754310;padding:6px 8px;border-radius:6px}
.service-card .business-cover{width:100%;margin:8px 0 4px;border-radius:7px}
.service-card .business-cover img{height:90px;aspect-ratio:auto;object-fit:contain}
.service-card .presentation-open{font-size:12px;margin-bottom:5px;padding:6px 8px}
.feature-section,.water-section,.business-section{padding-block:36px;min-height:0;gap:30px}
.feature-section h2,.water-section h2,.business-section h2{font-size:clamp(27px,3.5vw,42px)}
.feature-section p,.water-section p,.business-section p{line-height:1.5}
.directory-shortcuts{gap:6px;margin:10px 0}.directory-shortcuts button{font-size:13px;padding:7px 10px}
@media(min-width:1600px){.results-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1000px){.results-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.directory-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.directory-filters .route-toggle{grid-column:1}.directory-filters .search-everywhere{grid-column:2}}
@media(max-width:650px){
 .site-header{min-height:60px;gap:8px}.site-header nav{top:60px}.site-header .brand img{width:170px!important}
 .hero{padding-block:22px}.hero .route-card{padding:18px}.quick-section,.results-section{padding-block:18px}
 .results-section{scroll-margin-top:68px}.section-heading{margin-bottom:10px}.section-heading h2{font-size:24px}
 .category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.category-grid button{padding:10px}.category-grid small{font-size:11px}
 .results-grid{grid-template-columns:minmax(0,1fr);gap:10px}.service-card{padding:12px}.service-card h3{font-size:18px}
 .service-card .card-actions>*{min-height:40px}.service-card .card-details>summary{min-height:36px;padding-block:9px}
 .directory-filters{gap:8px;padding:10px}.directory-filters .free-text-filter{grid-column:1/-1}.directory-filters .route-toggle{grid-column:1/-1}.directory-filters .search-everywhere{grid-column:1/-1;justify-self:start}
}

/* Revision visual V25: etiquetas completas y controles tactiles en movil. */
@media(max-width:480px){.directory-filters{grid-template-columns:minmax(0,1fr)}.directory-filters input:not([type=checkbox]),.directory-filters select,.directory-filters .search-everywhere{min-height:44px}.directory-filters .route-toggle{min-height:44px}}
