/*
 * melhorespousadas.tur.br - CSS único, sem Bootstrap.
 * Reproduz o layout legado (Bootstrap 3 + estilo.css + melhorespousadas.css) implementando
 * só as classes realmente usadas no HTML: grid (container/row/col-*), navbar de estados,
 * breadcrumbs, cards de pousada, galeria, formulários, botões, dialog (modal) e rodapé.
 * Breakpoints do Bootstrap 3: sm >= 768px, md >= 992px, lg >= 1200px.
 * Ícones de comodidades: fonte fontic-hotel (../fonts). Demais ícones: SVG (../img/icones.svg).
 */

@font-face {
	font-family: 'fontic-hotel';
	src: url('../fonts/fontic-hotel.woff') format('woff'), url('../fonts/fontic-hotel.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

/* ---------- Base ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
	margin: 0;
	background: #fff;
	color: #333;
	font-family: Arial, sans-serif;
	font-size: 16px;
	line-height: 1.428571429;
	overflow-x: hidden;
	overflow-y: scroll;
}
a { color: #337ab7; text-decoration: none; }
a:hover, a:active, a:visited { text-decoration: none; }
a:hover { color: #23527c; }
/* links dentro de texto corrido precisam de marca além da cor (WCAG 1.4.1); sublinhado fixo, sem mudar no hover */
p a:not(.btn), .modal-body a { text-decoration: underline !important; }
img { vertical-align: middle; border: 0; }
p { margin: 0 0 10px; }
ul, ol { margin: 0 0 10px; padding-left: 40px; }
h1, h2, h3, h4, h5 { font-family: inherit; font-weight: 500; line-height: 1.1; color: inherit; margin: 20px 0 10px; }
h1 { font-size: 36px; }
h2 { font-size: 30px; }
main h2 { font-size: 2em; border-bottom: 1px solid #ffda1b; }
h3 { font-size: 1.8em; }
h4 { font-size: 1.6em; }
h5 { font-size: 1.4em; padding: 0; margin: 10px 0 0; }
#SetorDeReservas h3 { font-size: 1.6em; }
#Resultado h2, #Resultado h3 { font-size: 1.4em; padding: 0; margin: 10px 0 0; border-bottom: 0; }
hr { border: 0; height: 4px; margin: 20px 0; background-image: linear-gradient(to right, rgba(255,214,0,0), rgba(255,214,0,.9), rgba(255,214,0,0)); }
label { display: inline-block; max-width: 100%; margin-bottom: 5px; font-weight: normal; }
.sr-only { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0,0,0,0); border: 0; }

/* ---------- Ícones SVG ---------- */
.icone { width: 1em; height: 1em; fill: currentColor; vertical-align: -.125em; display: inline-block; }
.icone-lg { font-size: 1.33em; }
.icone-whatsapp { color: #43d854; }
.icone-estrela { color: #ffc107; }
.icone-social { font-size: 2em; margin: 5px; }
.icone-google-plus { color: #dd4b39; }
.icone-facebook { color: #3b5998; }
.icone-twitter { color: #00aced; }
.icone-youtube { color: #bb0000; }
.icone-instagram { color: #517fa4; }

/* ---------- Grid (container / row / col-*) ---------- */
.container { width: 100%; margin: 0 auto; padding: 0 15px; }
@media (min-width: 768px) { .container { max-width: 750px; } }
@media (min-width: 992px) { .container { max-width: 970px; } }
@media (min-width: 1200px) { .container { max-width: 1170px; } }
.row { display: flex; flex-wrap: wrap; margin-left: -15px; margin-right: -15px; }
.row > [class*="col-"] { flex: 0 0 100%; max-width: 100%; padding-left: 15px; padding-right: 15px; min-height: 1px; }
.row > .clearfix { flex: 0 0 100%; height: 0; }
.col-xs-6 { flex-basis: 50% !important; max-width: 50% !important; }
.col-xs-12 { flex-basis: 100% !important; max-width: 100% !important; }
@media (min-width: 768px) {
	.col-sm-3 { flex-basis: 25% !important; max-width: 25% !important; }
	.col-sm-4 { flex-basis: 33.33333333% !important; max-width: 33.33333333% !important; }
	.col-sm-5 { flex-basis: 41.66666667% !important; max-width: 41.66666667% !important; }
	.col-sm-6 { flex-basis: 50% !important; max-width: 50% !important; }
	.col-sm-7 { flex-basis: 58.33333333% !important; max-width: 58.33333333% !important; }
	.col-sm-9 { flex-basis: 75% !important; max-width: 75% !important; }
	.col-sm-12 { flex-basis: 100% !important; max-width: 100% !important; }
	/* ul.col-sm-6 (comodidades) fica fora de .row no legado: coluna flutuante como no Bootstrap */
	ul.col-sm-6 { float: left; width: 50%; padding: 0 15px; margin: 0 0 10px; }
}
@media (min-width: 1200px) {
	.col-lg-3 { flex-basis: 25% !important; max-width: 25% !important; }
	.col-lg-9 { flex-basis: 75% !important; max-width: 75% !important; }
	.col-lg-12 { flex-basis: 100% !important; max-width: 100% !important; }
}
.clearfix::after { content: ""; display: table; clear: both; }

/* ---------- Utilitários ---------- */
.text-center, .center { text-align: center; }
.text-right { text-align: right; }
.text-justify { text-align: justify; }
.pull-right { float: right; }
.pull-left { float: left; }
.text-danger { color: #a94442; }
.text-info { color: #31708f; }
.hidden { display: none !important; }
.visible-xs, .visible-xs-block { display: none !important; }
@media (max-width: 767px) {
	.hidden-xs { display: none !important; }
	.visible-xs { display: inline !important; }
	.visible-xs-block { display: block !important; }
	.desktop { display: none !important; }
}
.espaco15 { margin-top: 15px; margin-bottom: 15px; }
.espaco30 { margin-top: 30px; margin-bottom: 30px; }
.espaco45 { margin-top: 45px; margin-bottom: 45px; }
.responsive, .logo { max-width: 100%; height: auto; }
.textopequeno { font-size: .9em; }
.Vermelho { color: #c4400f !important; text-decoration: none !important; }
.publicidade { padding: 0; margin: 5px 0; text-align: center; }
/* reserva a altura do anúncio responsivo para o texto não pular quando ele carrega (CLS) */
.publicidade-responsiva { min-height: 280px; }
.fakeImg { background: no-repeat center; background-size: cover; }

/* ---------- Cabeçalho / topo ---------- */
header img { float: left; margin-right: 5px; }
header h1 { font-size: 18px; }
/* só cor/decoração nos estados do link: tamanho e peso não podem mudar no hover (CLS) */
header h1, header a:hover, header a:active, header a:visited { color: #c4400f; text-decoration: none; }
.topo > div { z-index: 100; }
nav h2 { display: none; }
nav h3, nav h4 { color: #000; font-size: 1em; margin: 0; padding: 0 0 3px; }

/* ---------- Navbar (menu de estados) ---------- */
.navbar { position: relative; min-height: 50px; margin-bottom: 20px; background: #ffd600; border: 1px solid #ff8700; border-radius: 4px; z-index: 100; }
.navbar-header { display: flex; align-items: center; justify-content: space-between; flex-direction: row-reverse; }
.navbar-brand { display: block; height: 50px; padding: 12px 15px; color: #000; }
.navbar-toggle { margin: 8px 15px 8px 0; padding: 9px 10px; background: transparent; border: 1px solid #ff8700; border-radius: 4px; cursor: pointer; }
.navbar-toggle:hover, .navbar-toggle:focus { background: #ff8700; }
.navbar-toggle .icon-bar { display: block; width: 22px; height: 2px; background: #000; border-radius: 1px; }
.navbar-toggle .icon-bar + .icon-bar { margin-top: 4px; }
.navbar-collapse { display: none; border-top: 1px solid #000; }
.navbar-collapse.in { display: block; }
.nav { margin: 0; padding: 0; list-style: none; }
.nav > li > a { display: block; padding: 10px 15px; color: #000; }
.nav > li > a:hover, .nav > li > a:focus { color: #000; background: #ff8700; }
.nav > li.active > a { color: #000; background: #ff8700; }
/* `header a:hover/:visited` (logo) não pode alterar o tamanho dos links do menu: causava CLS */
.nav > li > a, .nav > li > a:hover, .nav > li > a:active, .nav > li > a:visited { font-size: inherit; color: #000; }
@media (min-width: 768px) {
	.navbar-header { display: none; }
	.navbar-collapse { display: block !important; border-top: 0; }
	.nav.navbar-nav { display: flex; flex-wrap: wrap; }
	.estados li a { padding: 15px 11px; }
}

/* ---------- Breadcrumbs (setas em CSS) ---------- */
.breadcrumbs { padding: 5px 0 0; margin: -10px 0 -20px -40px; }
.breadcrumbs ol { list-style: none; display: inline-table; }
.breadcrumbs ol li { display: inline; }
.breadcrumbs ol li a, .breadcrumbs ol li a:visited {
	display: block; float: left; height: 22px; background: #3498db; text-align: center;
	padding: 2px 10px 0 30px; position: relative; margin: 0 5px 8px 0; font-size: 14px; color: #fff;
}
.breadcrumbs ol li:first-child a { padding: 2px 10px 0 15px; border-radius: 5px 0 0 5px; }
.breadcrumbs ol li a::after { content: ""; margin-top: -5px; border-top: 16px solid transparent; border-bottom: 16px solid transparent; border-left: 16px solid #3498db; position: absolute; right: -16px; top: 0; z-index: 1; }
.breadcrumbs ol li a::before { content: ""; margin-top: -5px; border-top: 16px solid transparent; border-bottom: 16px solid transparent; border-left: 16px solid #d4f2ff; position: absolute; left: 0; top: 0; }
.breadcrumbs ol li:first-child a::before { display: none; }
.breadcrumbs ol li:last-child a { padding-right: 10px; border-radius: 0 5px 5px 0; }
.breadcrumbs ol li:last-child a::after { display: none; }
.breadcrumbs ol li a:hover { color: #fff; background: #7f939f; }
.breadcrumbs ol li a:hover::after { border-left-color: #7f939f; }

/* ---------- Cards de pousada/destino e galeria ---------- */
.item { padding-bottom: 10px; }
.item:hover { animation: itemhover 2s; background-color: #fff; }
@keyframes itemhover { from { background-color: #fff5d2; } to { background-color: #fff; } }
.item .fakeImg { float: left; margin: 10px; width: 128px; height: 128px; }
.categoria, .categoria a, .categoria a:hover, .categoria a:visited { color: #a35400; padding: 0; margin: 0; }
.estrelas { color: #ffc107; }
.avaliacao { color: #c4400f; font-weight: bold; }
#CarregarMais { margin: 20px 0; flex: 0 0 100%; text-align: center; }

.thumbnail { display: block; position: relative; width: 100px; height: 100px; overflow: hidden; padding: 4px; margin-bottom: 20px; background: #fff; border: 1px solid #ddd; border-radius: 4px; }
.thumbnail img { position: absolute; left: 50%; top: 50%; height: 100%; width: auto; max-width: none; transform: translate(-50%, -50%); }
.thumbnail img.portrait { width: 100%; height: auto; }
.Comodidades { color: #c0c0c0; margin: 0; padding: 0; text-align: center; }
.Comodidades li { display: inline-block; margin: 0 5px 5px 0; list-style: none; }
.ComodidadesPousadas, .ComodidadesPousadas li { list-style: none; }
[class^="icon-fontic-hotel-"], [class*=" icon-fontic-hotel-"] { font-family: 'fontic-hotel'; speak: none; font-style: normal; font-weight: normal; font-variant: normal; text-transform: none; line-height: 1; -webkit-font-smoothing: antialiased; }

/* ---------- Botões ---------- */
.btn { display: inline-block; padding: 6px 12px; margin: 0; font-size: 14px; font-weight: normal; line-height: 1.428571429; text-align: center; white-space: nowrap; vertical-align: middle; cursor: pointer; background: #fff; border: 1px solid #ccc; border-radius: 4px; color: #333; font-family: inherit; user-select: none; }
.btn:hover { background: #e6e6e6; color: #333; }
.btn-lg { padding: 10px 16px; font-size: 18px; line-height: 1.3333333; border-radius: 6px; white-space: normal; }
.btn-block { display: block; width: 100%; }
.btn-default { color: #333; background: #fff; border-color: #ccc; }
.btn-primary { color: #fff; background: #337ab7; border-color: #2e6da4; }
.btn-primary:hover { color: #fff; background: #286090; border-color: #204d74; }
.btn-success { color: #fff; background: #2e7d32; border-color: #276a2a; }
.btn-success:hover { color: #fff; background: #25672a; border-color: #1e5522; }
.btn-warning { color: #212121; background: #f0ad4e; border-color: #eea236; }
.btn-warning:hover { color: #212121; background: #ec971f; border-color: #d58512; }
.btn-info { color: #fff; background: #1a7490; border-color: #15627a; }
.btn-info:hover { color: #fff; background: #15627a; border-color: #105063; }

/* ---------- Formulários ---------- */
.form-group { margin-bottom: 15px; }
.form-control { display: block; width: 100%; height: 34px; padding: 6px 12px; font-size: 14px; line-height: 1.428571429; color: #555; background: #fff; border: 1px solid #ccc; border-radius: 4px; box-shadow: inset 0 1px 1px rgba(0,0,0,.075); font-family: inherit; }
.form-control:focus { border-color: #66afe9; outline: 0; box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102,175,233,.6); }
textarea.form-control { height: auto; }
.input-lg { height: 46px; padding: 10px 16px; font-size: 18px; line-height: 1.3333333; border-radius: 6px; }
textarea.input-lg { height: auto; }
.input-group { display: flex; align-items: stretch; width: 100%; }
.input-group .form-control { flex: 1 1 auto; width: auto; min-width: 0; }
.input-group-addon { display: flex; align-items: center; padding: 6px 12px; font-size: 14px; color: #555; background: #eee; border: 1px solid #ccc; }
.help-block { display: block; margin-top: 5px; margin-bottom: 10px; color: #737373; }
.alert { padding: 15px; margin-bottom: 20px; border: 1px solid transparent; border-radius: 4px; }
.alert-danger { color: #a94442; background: #f2dede; border-color: #ebccd1; }
.alert-info { color: #31708f; background: #d9edf7; border-color: #bce8f1; }
.close { float: right; font-size: 21px; font-weight: bold; line-height: 1; color: #000; opacity: .2; background: transparent; border: 0; cursor: pointer; }
.close:hover { opacity: .5; }
.Processando { padding: 10px; }

/* ---------- Dialog nativo (modais e lightbox) ---------- */
dialog.modal { width: calc(100% - 20px); max-width: 600px; margin: 30px auto; padding: 0; border: 1px solid rgba(0,0,0,.2); border-radius: 6px; box-shadow: 0 5px 15px rgba(0,0,0,.5); color: #333; background: #fff; }
dialog.modal.modal-lg { max-width: 900px; }
dialog.modal::backdrop { background: rgba(0,0,0,.5); }
.modal-header { padding: 15px; border-bottom: 1px solid #e5e5e5; }
.modal-header h4, .modal-title { margin: 0; font-size: 18px; line-height: 1.428571429; }
.modal-body { padding: 15px; }
.modal-footer { padding: 15px; text-align: right; border-top: 1px solid #e5e5e5; }
dialog.lightbox { max-width: 95vw; max-height: 95vh; padding: 10px; border: 0; background: #000; color: #fff; text-align: center; overflow: hidden; }
dialog.lightbox::backdrop { background: rgba(0,0,0,.85); }
dialog.lightbox img { max-width: 100%; max-height: calc(95vh - 90px); width: auto; height: auto; }
dialog.lightbox .lightbox-legenda { margin-top: 6px; font-size: 14px; }
dialog.lightbox button { margin: 8px 4px 0; padding: 4px 14px; font-size: 18px; cursor: pointer; }

/* ---------- Rodapé ---------- */
footer { background: linear-gradient(to bottom, rgba(254,252,234,1) 0%, rgba(241,218,54,1) 100%); padding: 0 15px; }
footer .tagline { text-align: center; font-style: italic; }
footer h3 { font-size: 1.2em; color: #000; }
footer h2, footer h2 a, footer h2 a:hover, footer h2 a:visited { margin-top: 5px; font-size: 1.3em !important; color: #000 !important; text-align: center !important; }
footer > .row { margin-left: 0; margin-right: 0; }

/* ---------- Ícones de comodidades (fontic-hotel) ---------- */
.icon-fontic-hotel-wireless:before{content:"\e000"}
.icon-fontic-hotel-wine:before{content:"\e001"}
.icon-fontic-hotel-water:before{content:"\e002"}
.icon-fontic-hotel-washing-machine:before{content:"\e003"}
.icon-fontic-hotel-valet:before{content:"\e004"}
.icon-fontic-hotel-unisex:before{content:"\e005"}
.icon-fontic-hotel-umbrella:before{content:"\e006"}
.icon-fontic-hotel-tv:before{content:"\e007"}
.icon-fontic-hotel-towel:before{content:"\e008"}
.icon-fontic-hotel-toilet-paper:before{content:"\e009"}
.icon-fontic-hotel-toilet:before{content:"\e00a"}
.icon-fontic-hotel-tennis:before{content:"\e00b"}
.icon-fontic-hotel-taxi:before{content:"\e00c"}
.icon-fontic-hotel-swimming-pool:before{content:"\e00d"}
.icon-fontic-hotel-stove:before{content:"\e00e"}
.icon-fontic-hotel-steps:before{content:"\e00f"}
.icon-fontic-hotel-snowflake:before{content:"\e010"}
.icon-fontic-hotel-smoke:before{content:"\e011"}
.icon-fontic-hotel-single-bed:before{content:"\e012"}
.icon-fontic-hotel-shower:before{content:"\e013"}
.icon-fontic-hotel-shop:before{content:"\e014"}
.icon-fontic-hotel-service:before{content:"\e015"}
.icon-fontic-hotel-satelite:before{content:"\e016"}
.icon-fontic-hotel-safe:before{content:"\e017"}
.icon-fontic-hotel-restaurant:before{content:"\e018"}
.icon-fontic-hotel-refridgerator:before{content:"\e019"}
.icon-fontic-hotel-recycle-bin:before{content:"\e01a"}
.icon-fontic-hotel-reception:before{content:"\e01b"}
.icon-fontic-hotel-pool:before{content:"\e01c"}
.icon-fontic-hotel-police:before{content:"\e01d"}
.icon-fontic-hotel-pin:before{content:"\e01e"}
.icon-fontic-hotel-photo:before{content:"\e01f"}
.icon-fontic-hotel-phone:before{content:"\e020"}
.icon-fontic-hotel-pet:before{content:"\e021"}
.icon-fontic-hotel-pc:before{content:"\e022"}
.icon-fontic-hotel-parking:before{content:"\e023"}
.icon-fontic-hotel-no-smoking:before{content:"\e024"}
.icon-fontic-hotel-normal:before{content:"\e025"}
.icon-fontic-hotel-no-pets:before{content:"\e026"}
.icon-fontic-hotel-non-stop:before{content:"\e027"}
.icon-fontic-hotel-music:before{content:"\e028"}
.icon-fontic-hotel-meal:before{content:"\e029"}
.icon-fontic-hotel-massage:before{content:"\e02a"}
.icon-fontic-hotel-male:before{content:"\e02b"}
.icon-fontic-hotel-maide:before{content:"\e02c"}
.icon-fontic-hotel-luggage:before{content:"\e02d"}
.icon-fontic-hotel-lamp:before{content:"\e02e"}
.icon-fontic-hotel-key:before{content:"\e02f"}
.icon-fontic-hotel-iron:before{content:"\e030"}
.icon-fontic-hotel-info:before{content:"\e031"}
.icon-fontic-hotel-ice-cream:before{content:"\e032"}
.icon-fontic-hotel-hotel-2:before{content:"\e033"}
.icon-fontic-hotel-hotel:before{content:"\e034"}
.icon-fontic-hotel-hot-chocolate:before{content:"\e035"}
.icon-fontic-hotel-hospital:before{content:"\e036"}
.icon-fontic-hotel-gym:before{content:"\e037"}
.icon-fontic-hotel-golf:before{content:"\e038"}
.icon-fontic-hotel-gift:before{content:"\e039"}
.icon-fontic-hotel-football:before{content:"\e03a"}
.icon-fontic-hotel-fishing:before{content:"\e03b"}
.icon-fontic-hotel-fire-extinguisher:before{content:"\e03c"}
.icon-fontic-hotel-female:before{content:"\e03d"}
.icon-fontic-hotel-escalator:before{content:"\e03e"}
.icon-fontic-hotel-elevator:before{content:"\e03f"}
.icon-fontic-hotel-eco:before{content:"\e040"}
.icon-fontic-hotel-dvd:before{content:"\e041"}
.icon-fontic-hotel-dryer:before{content:"\e042"}
.icon-fontic-hotel-drink:before{content:"\e043"}
.icon-fontic-hotel-double-bed:before{content:"\e044"}
.icon-fontic-hotel-dock:before{content:"\e045"}
.icon-fontic-hotel-dnd:before{content:"\e046"}
.icon-fontic-hotel-disabled:before{content:"\e047"}
.icon-fontic-hotel-controller:before{content:"\e048"}
.icon-fontic-hotel-connect:before{content:"\e049"}
.icon-fontic-hotel-closet:before{content:"\e04a"}
.icon-fontic-hotel-chicken:before{content:"\e04b"}
.icon-fontic-hotel-champaigne:before{content:"\e04c"}
.icon-fontic-hotel-casino:before{content:"\e04d"}
.icon-fontic-hotel-cash:before{content:"\e04e"}
.icon-fontic-hotel-card:before{content:"\e04f"}
.icon-fontic-hotel-car:before{content:"\e050"}
.icon-fontic-hotel-bunk-bed:before{content:"\e051"}
.icon-fontic-hotel-breakfast:before{content:"\e052"}
.icon-fontic-hotel-bed-6:before{content:"\e053"}
.icon-fontic-hotel-bed-5:before{content:"\e054"}
.icon-fontic-hotel-bed-4:before{content:"\e055"}
.icon-fontic-hotel-bed-3:before{content:"\e056"}
.icon-fontic-hotel-bed-2:before{content:"\e057"}
.icon-fontic-hotel-bed-1:before{content:"\e058"}
.icon-fontic-hotel-bed:before{content:"\e059"}
.icon-fontic-hotel-beach:before{content:"\e05a"}
.icon-fontic-hotel-bathtube:before{content:"\e05b"}
.icon-fontic-hotel-barber:before{content:"\e05c"}
.icon-fontic-hotel-airport:before{content:"\e05d"}
.icon-fontic-hotel-air-condition:before{content:"\e05e"}
.icon-fontic-hotel-5-stars:before{content:"\e05f"}
.icon-fontic-hotel-4-stars:before{content:"\e060"}
.icon-fontic-hotel-3-stars:before{content:"\e061"}
.icon-fontic-hotel-2-stars:before{content:"\e062"}
.icon-fontic-hotel-1-star:before{content:"\e063"}

mark { padding: .2em; background-color: #fcf8e3; color: #000; }
