*{box-sizing:border-box}body{margin:0;background:#f3f6fa;color:#172a43;font:16px/1.6 system-ui,sans-serif}header{background:#fff;border-bottom:1px solid #dde5ee;padding:24px 5%;display:flex;justify-content:space-between;align-items:center;gap:16px}header>span,.small{font-size:13px;color:#60728a}.brand{display:flex;gap:8px;align-items:center;text-decoration:none;color:#172a43;font-size:21px}.mark{display:inline-flex;background:#174d43;color:#fff;width:40px;height:40px;border-radius:12px;align-items:center;justify-content:center;margin-right:6px;font-weight:800}main{max-width:1150px;margin:40px auto;padding:0 24px}h1{font-size:clamp(28px,4vw,44px);line-height:1.15;letter-spacing:-1px}h2{font-size:21px}.intro{color:#60728a}.eyebrow{font-size:12px;font-weight:700;color:#26705b;letter-spacing:2px}.panel{padding:28px;background:white;border:1px solid #dce4ed;border-radius:18px;margin:22px 0;box-shadow:0 6px 24px #172a4305}.narrow{max-width:530px;margin:60px auto}.grid{display:grid;grid-template-columns:2fr 1fr 2fr 1fr 1fr;gap:15px}label{display:block;font-size:14px;font-weight:600;margin-bottom:16px}input,select{display:block;width:100%;font:inherit;border:1px solid #bdcbd9;border-radius:9px;padding:12px;margin-top:7px;background:#fff;color:#172a43}input:focus,select:focus,button:focus{outline:3px solid #97d1bd}button,.button{display:inline-block;background:#185447;color:white;border:0;border-radius:9px;padding:12px 20px;font:600 14px system-ui;cursor:pointer;text-decoration:none}.secondary{background:#edf3f6;color:#172a43}.topline{display:flex;align-items:center;justify-content:space-between;gap:16px}.topline form{margin:0}.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.cards .panel{margin:0}.badge{display:inline-block;font-size:12px;background:#e6f5eb;color:#225c41;padding:5px 10px;border-radius:30px}.alert,.notice{padding:20px;border-radius:12px;background:#fff1ed;color:#8f3823}.notice{background:#e6f5eb;color:#225c41}.user{border-top:1px solid #dce4ed;padding-top:20px;margin-top:25px}summary{cursor:pointer;font-weight:700}details form{margin-top:20px}footer{text-align:center;font-size:13px;color:#60728a;padding:32px}@media(max-width:850px){.grid{grid-template-columns:1fr 1fr}.cards{grid-template-columns:1fr}header>span{display:none}}@media(max-width:500px){.grid{grid-template-columns:1fr}.panel{padding:20px}.brand{font-size:18px}.topline{flex-wrap:wrap}}

[hidden]{display:none!important}.grid{grid-template-columns:1fr 2fr 2fr 1fr 1fr}.grid .small{margin-top:0}.grid button{margin-bottom:12px}@media(max-width:850px){.grid{grid-template-columns:1fr 1fr}}@media(max-width:500px){.grid{grid-template-columns:1fr}}

.contact-actions{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}

/* Formulário de pesquisa: localização e filtros em linhas separadas. */
.grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:20px 24px;align-items:start;margin-bottom:24px}
.grid>*{min-width:0;margin:0}
.grid>label:first-child{grid-column:span 3}
.grid>div:nth-child(2){grid-column:span 9;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}
.grid>div:nth-child(2)>label{margin:0}
.grid>div:nth-child(2)>p,.grid>div:nth-child(2)>button,.grid>div:nth-child(2)>#city-manual-label{grid-column:1/-1}
.grid>div:nth-child(2)>p{margin:8px 0 0;min-height:21px}
.grid>div:nth-child(3){grid-column:span 6}
.grid>div:nth-child(3)>label{margin:0}
.grid #other-label{margin-top:12px}
.grid>label:nth-child(4),.grid>label:nth-child(5){grid-column:span 3}
.grid label{font-size:14px;line-height:1.45}
.grid input,.grid select{width:100%;min-width:0;height:48px;font-size:16px;line-height:normal;margin-top:8px;padding:10px 12px}
.grid+button{min-height:48px;padding:12px 24px}
.grid~p.small{max-width:760px;line-height:1.6;margin:12px 0 0}
#retry-cities{justify-self:start;margin-top:12px}
input:disabled,select:disabled{background:#f3f6fa;color:#718096}
@media(max-width:850px){
 .grid{gap:20px 16px}
 .grid>label:first-child{grid-column:span 4}
 .grid>div:nth-child(2){grid-column:span 8;grid-template-columns:1fr;gap:16px}
 .grid>div:nth-child(2)>p{margin:0}
 .grid>div:nth-child(3){grid-column:1/-1}
 .grid>label:nth-child(4),.grid>label:nth-child(5){grid-column:span 6}
}
@media(max-width:600px){
 main{padding:0 16px;margin-top:24px}
 .panel{padding:20px;border-radius:14px}
 .grid{grid-template-columns:minmax(0,1fr);gap:18px;margin-bottom:22px}
 .grid>label:first-child,.grid>div:nth-child(2),.grid>div:nth-child(3),.grid>label:nth-child(4),.grid>label:nth-child(5){grid-column:1/-1}
 .grid>div:nth-child(2){gap:18px;grid-template-columns:minmax(0,1fr)}
 .grid>div:nth-child(2)>p{margin-top:-10px;font-size:12px}
 .grid+button{width:100%;min-height:50px}
 .grid~p.small{font-size:12px}
 .grid input,.grid select{height:50px}
 .topline>span{overflow-wrap:anywhere}
}

/* Desktop: distribuição explícita dos campos, com alturas e alinhamentos iguais. */
@media(min-width:851px){
 .grid{grid-template-columns:minmax(140px,1fr) minmax(210px,1.5fr) minmax(210px,1.5fr);grid-template-rows:auto auto auto;gap:12px 24px;align-items:start}
 .grid>label:first-child{grid-column:1;grid-row:1}
 .grid>div:nth-child(2){display:contents}
 .grid>div:nth-child(2)>label[for="city-filter"]{grid-column:2;grid-row:1}
 .grid>div:nth-child(2)>label[for="city"]{grid-column:3;grid-row:1}
 .grid>div:nth-child(2)>p{grid-column:2/4;grid-row:2;margin:0;min-height:0}
 .grid>div:nth-child(2)>#retry-cities{grid-column:2/4;grid-row:auto}
 .grid>div:nth-child(2)>#city-manual-label{grid-column:2/4;grid-row:auto}
 .grid>div:nth-child(3){grid-column:1;grid-row:3;margin-top:8px}
 .grid>label:nth-child(4){grid-column:2;grid-row:3;margin-top:8px}
 .grid>label:nth-child(5){grid-column:3;grid-row:3;margin-top:8px}
 .grid>label,.grid>div:nth-child(2)>label,.grid>div:nth-child(3)>label:first-child{line-height:20px}
 .grid input,.grid select{height:48px;margin-top:8px}
}
