/* Base visual compartilhada entre todos os temas. A identidade fica nos arquivos /themes/<tema>. */
:root{--portal-radius:18px;--portal-line:#e5eaed;--portal-muted:#66757e;--portal-bg:#f5f8fa;--portal-card:#fff;--portal-primary:#17658a}
html{scroll-behavior:smooth}body{margin:0;background:var(--portal-bg);color:#17252d}a{text-decoration:none}.text-muted{color:var(--portal-muted)!important}
.form-control,.form-select{border-radius:13px;border-color:var(--portal-line);padding:11px 13px}.form-control:focus,.form-select:focus{border-color:var(--portal-primary);box-shadow:0 0 0 .2rem rgba(23,101,138,.12)}
.page-header{padding:62px 0;background:linear-gradient(135deg,#173c50,#17658a);color:#fff}.page-header h1{font:800 clamp(30px,4vw,52px)/1.05 'Manrope',sans-serif;letter-spacing:-1.2px}.page-header p{color:rgba(255,255,255,.78);max-width:700px}
.filter-box,.contact-card,.form-card,.info-panel,.detail-card,.ad-card,.list-card{background:var(--portal-card);border:1px solid var(--portal-line);border-radius:var(--portal-radius);box-shadow:0 12px 35px rgba(23,55,70,.07);overflow:hidden}.filter-box,.contact-card,.form-card,.info-panel{padding:26px}.list-card{display:flex;height:100%}.list-img{width:150px;min-width:150px;min-height:180px;object-fit:cover;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#e9f2f5,#f4faf8);color:var(--portal-primary);font-size:40px}.list-content{padding:22px}.detail-cover{height:330px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#e7f0f4,#f4faf8);color:var(--portal-primary);font-size:60px}.ad-image{height:190px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#e7f0f4,#f4faf8);font-size:52px;color:var(--portal-primary)}.tags span{display:inline-block;background:#eaf3f6;color:var(--portal-primary);border-radius:999px;padding:7px 12px;margin:4px;font-size:13px;font-weight:700}.check-list{list-style:none;padding:0}.check-list li{margin-bottom:9px}.check-list li:before{content:'✓';color:var(--portal-primary);font-weight:800;margin-right:8px}
.whatsapp-float{position:fixed;right:20px;bottom:20px;width:58px;height:58px;border-radius:50%;background:#25d366;color:#fff;display:flex;align-items:center;justify-content:center;font-size:28px;text-decoration:none;box-shadow:0 10px 25px rgba(0,0,0,.22);z-index:999}.whatsapp-float:hover{color:#fff;transform:translateY(-2px)}
.leadmodal.active{display:flex}
@media(max-width:768px){.page-header{padding:48px 0}.filter-box,.contact-card,.form-card,.info-panel{padding:20px}.list-card{display:block}.list-img{width:100%;min-width:0;height:180px}}

/* Busca avançada — layout compatível com os temas novos */
.search-page{background:var(--theme-bg,var(--portal-bg));min-height:calc(100vh - 140px)}
.search-page-heading{margin-bottom:30px}.search-page-heading h1{font:800 clamp(32px,4vw,50px)/1.05 'Manrope',sans-serif;margin:8px 0;color:var(--theme-text,#17251f);letter-spacing:-1.4px}.search-page-heading p{margin:0;color:var(--theme-muted,var(--portal-muted))}
.search-filter{background:var(--theme-card,#fff);border:1px solid var(--theme-line,var(--portal-line));border-radius:24px;padding:26px;box-shadow:var(--theme-shadow,0 12px 35px rgba(23,55,70,.07));margin-bottom:42px}.search-filter-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid var(--theme-line,var(--portal-line))}.search-filter-head strong{display:block;font:800 21px/1.2 'Manrope',sans-serif;color:var(--theme-text,#17251f)}.search-filter-head span{display:block;margin-top:4px;color:var(--theme-muted,var(--portal-muted));font-size:13px}.search-filter-head>i{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#edf5f0;color:var(--theme-primary,var(--portal-primary));font-size:19px}
.search-grid{display:grid;gap:18px;margin-bottom:18px}.search-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.search-field label{display:block;margin-bottom:8px;font-size:12px;font-weight:800;color:#405047}.search-control{width:100%;min-height:48px;border:1px solid var(--theme-line,var(--portal-line));border-radius:14px;padding:11px 13px;background:#fff;color:#24332d;outline:0;font:inherit}.search-control:focus{border-color:var(--theme-primary,var(--portal-primary));box-shadow:0 0 0 4px color-mix(in srgb,var(--theme-primary,var(--portal-primary)) 11%,transparent)}.search-control::placeholder{color:#9ba7a1}
.search-checks{min-height:48px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.search-checks label{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--theme-line,var(--portal-line));background:#fafcfb;border-radius:12px;padding:10px 12px;margin:0;font-size:12px;font-weight:700;color:#55635d;cursor:pointer}.search-checks input{accent-color:var(--theme-primary,var(--portal-primary))}
.search-filter-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding-top:4px}.search-submit,.search-clear{min-height:48px;border-radius:14px;padding:11px 18px;font-weight:800;font-size:13px;text-decoration:none;display:inline-flex;align-items:center;gap:8px}.search-submit{border:0;background:var(--theme-primary,var(--portal-primary));color:#fff}.search-submit:hover{background:var(--theme-primary-2,#0d4b3d);color:#fff}.search-clear{border:1px solid var(--theme-line,var(--portal-line));background:#fff;color:#596860}.search-clear:hover{color:var(--theme-primary,var(--portal-primary));border-color:#cddbd3}
.search-results-head{margin-bottom:22px}.search-results-head span{display:block;color:var(--theme-primary,var(--portal-primary));text-transform:uppercase;font-size:11px;letter-spacing:.16em;font-weight:900}.search-results-head h2{margin:7px 0 0;font:800 clamp(25px,3vw,34px)/1.1 'Manrope',sans-serif;color:var(--theme-text,#17251f);letter-spacing:-1px}.search-results-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.search-card{display:flex;flex-direction:column;min-width:0;background:var(--theme-card,#fff);border:1px solid var(--theme-line,var(--portal-line));border-radius:22px;overflow:hidden;box-shadow:0 9px 30px rgba(23,62,48,.06);transition:transform .2s ease,box-shadow .2s ease}.search-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(23,62,48,.11)}.search-card-image{position:relative;background:#e9efeb;aspect-ratio:16/10;overflow:hidden}.search-card-image img{width:100%;height:100%;object-fit:cover;display:block}.search-card-plan{position:absolute;left:14px;top:14px;background:rgba(255,255,255,.94);color:#53625b;padding:7px 10px;border-radius:999px;font-size:10px;font-weight:900}.search-card-plan.is-premium{color:var(--theme-primary,var(--portal-primary))}.search-card-body{padding:19px;display:flex;flex-direction:column;flex:1}.search-card-category{font-size:10px;color:var(--theme-primary,var(--portal-primary));font-weight:900;text-transform:uppercase;letter-spacing:.09em;margin-bottom:7px}.search-card h3{margin:0 0 7px;font:800 20px/1.18 'Manrope',sans-serif;color:var(--theme-text,#17251f)}.search-card-location{margin:0 0 9px;font-size:12px;color:var(--theme-muted,var(--portal-muted))}.search-card-location i{color:var(--theme-primary,var(--portal-primary));margin-right:4px}.search-card-description{font-size:13px;color:var(--theme-muted,var(--portal-muted));line-height:1.55;margin:0;min-height:60px}.search-card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto;padding-top:18px}.search-btn-main,.search-btn-whatsapp{border:0;border-radius:12px;padding:10px 13px;font-size:12px;font-weight:800;text-decoration:none;cursor:pointer}.search-btn-main{background:var(--theme-primary,var(--portal-primary));color:#fff}.search-btn-main:hover{background:var(--theme-primary-2,#0d4b3d);color:#fff}.search-btn-whatsapp{background:#23c76f;color:#fff}.search-btn-whatsapp:hover{background:#1cae60;color:#fff}
.search-pagination{display:flex;align-items:center;justify-content:center;gap:7px;flex-wrap:wrap;margin-top:34px}.search-pagination a{min-width:40px;height:40px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--theme-line,var(--portal-line));border-radius:12px;background:#fff;color:#5a6961;font-size:13px;font-weight:800}.search-pagination a:hover{color:var(--theme-primary,var(--portal-primary));border-color:#cadad1}.search-pagination a.active{background:var(--theme-primary,var(--portal-primary));border-color:var(--theme-primary,var(--portal-primary));color:#fff}
@media(max-width:991px){.search-results-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.search-grid-2{grid-template-columns:1fr}.search-filter{padding:18px;border-radius:20px}.search-results-grid{grid-template-columns:1fr}.search-page-heading{align-items:flex-start}.search-filter-head{align-items:flex-start}.search-checks{align-items:stretch}.search-checks label{flex:1 1 140px}}

.search-btn-consulte{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:12px;padding:11px 17px;font-size:12px;font-weight:900;text-decoration:none;cursor:pointer;background:#b85a16;color:#fff!important;box-shadow:0 8px 18px rgba(184,90,22,.16)}.search-btn-consulte:hover{background:#93430d;color:#fff!important}

/* v27 - preços das clínicas */
.search-card-price{margin:10px 0 0;font-size:14px;font-weight:900;color:var(--theme-primary,var(--portal-primary))}

/* v28 - Página pública de agendamento */
.booking-page{padding:42px 0}.booking-public-card{max-width:780px;margin:0 auto;background:#fff;border:1px solid #e7e9ed;border-radius:20px;padding:28px;box-shadow:0 10px 30px rgba(0,0,0,.05)}.booking-public-card h1{margin:.35rem 0}.booking-public-card form{display:grid;gap:12px}.booking-public-card .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.booking-submit{min-height:48px}.btn.secondary{background:#edf2f0!important;color:#163d2a!important}
@media(max-width:640px){.booking-public-card{padding:20px}.booking-public-card .row{grid-template-columns:1fr}}
