/* vitrine
   Rodrigo Nishino <rodrigo.nsh@gmail.com>
   */

/*
@font-face {
    font-family: 'Museo700';
    src: url('/fonts/museo700-regular-webfont.eot');
    src: url('/fonts/museo700-regular-webfont.eot?#iefix') format('embedded-opentype'),
	url('/fonts/museo700-regular-webfont.woff') format('woff'),
	url('/fonts/museo700-regular-webfont.ttf') format('truetype'),
	url('/fonts/museo700-regular-webfont.svg#Museo700') format('svg');
    font-weight: normal;
    font-style: normal;
}
*/

body
{
	background: #E3E3E3;
	color: #2A2A2A;
	margin: 0px;
	scrollbar-width: 2px;
	font-family: "Roboto";
	font-weight: 300;
	overflow: hidden;
	height: 100%;
	padding-top: 0px !important;

	--accent: #3772cb;

}

.photo #main { background: transparent !important; }
.photo #home{ background: #eee; }

header
{
	width: 100%;
	height: 58px;
	position: relative;
	flex-shrink: 0;
	background: #202020;
}

[orientation=landscape] header{ display: none; }

#logolink { display: none; }

[orientation=portrait] #logolink{

	display: block;
	position: absolute;
	top: 16px;
	left: 16px;
	z-index: 100;	
}


#logolink img{ height: 25px; }




#logona
{
	margin-bottom: 32px;
	width: 100%;
	object-fit: none;
}

#logona img{ width: 100%; }

[center]
{
  text-align: center;
}

.btn,
button
{
	display: flex;
	
	font-size: 14px;
	background: #eee;
	text-shadow: 1px 1px 1px white;
	border: 0;
	padding: 8px 32px;
	color: black;
	border-radius: 2px;
	
	box-sizing: border-box;
	opacity: 0.9;
	margin-bottom: 16px;
	
	text-decoration: none;
	box-shadow: 2px 2px 5px #00000037, -2px -2px 5px #fffdfd94;
	align-items: center;
	justify-content: center;

}

.btn.primary,
button[primary]
{
	background: var(--accent);
	color: white;
	text-shadow: 1px 1px 1px black;
}





#root
{
	display: flex;
	transition: transform 0.4s;
	width: 100vw;
	height: 100%;
	position: absolute;
}

[orientation=portrait] #root
{
	width: calc( 300px + 100vw );
	transform: translateX(-300px);
}

#root.showmenu
{
	transform: translateX(0px);
}

#menu
{
	display: flex;
	flex-direction: column;
	width: 300px;
	padding: 32px;
	background: linear-gradient(90deg, rgba(238,238,238,1) 0%, rgba(238,238,238,1) 82%, rgba(221,221,221,1) 100%); 
	box-sizing: border-box;
	flex-shrink: 0;
	height: 100%;
	overflow-y: auto;
	overflow-x: hidden;
}

#menu::-webkit-scrollbar {
    width: 2px;
}

#menu::-webkit-scrollbar-thumb {
	background-color: #eee;
}

#menu::-webkit-scrollbar-track{
	
	background-color: #ccc;
}


#main
{
	display: flex;
	flex-direction: column;
	width: 100%;
	transition: filter 1s;
}

#pages
{
	flex-grow: 1;
	height: 100vh;
	background-size: cover;
	background-position: center center;
	position: relative;
	overflow-y: auto;
	display: flex;
	flex-direction: column;
}


section
{
	position: absolute;
	top: 0px;
	left: 0px;
	right: 0px;
	bottom: 0px;
	display: flex;
	flex-direction: column;
}

vv-row
{
    display: flex;
    align-items: center;
    gap: 14px;
}

vv-row button{ margin-bottom: 0px; }

[breathe]
{
	padding: 22px;
}

[orientation=portrait]  [breathe=landscape]
{
	padding: 0px;
}

[scrolls]
{
	flex-grow: 1;
	overflow-y: scroll;
	overflow-x: hidden;
}

[responsive]
{
	max-width: 100%;
}

[hidden],
.hidden{ display: none !important; }

[grows],
vv-spacer
{
	flex-grow: 1;
}

a { color: var(--accent); text-decoration: none; }

p{ font-size: 16px; margin: 0px 0px 10px; }
ons-icon{ margin-right: 10px; }
ons-icon[icon=fa-info-circle]{ margin-right: 0px; }
ons-icon[icon=fa-images]{ margin-right: 0px; }

h1
{
  font-size: 25px;
  font-weight: normal;
  line-height: 0.84em;
  text-shadow: #0000003d 5px 5px 5px;
}



#currentPhoto
{
  
  display: block;
  width: 100%;
  height: 100vh;
  
  object-fit: contain;
  object-position: center center;
  image-orientation: from-image;

  filter: brightness(1);
  opacity: 1;
  
  transition: filter;
  
  border: 0px;

}

body[orientation=landscape] #currentPhoto[orientation=landscape]
{
  object-fit: cover;
}

body[orientation=portrait] #currentPhoto[orientation=portrait]
{
  object-fit: cover;
}



[loader] { display: none; }
[interactive] { display: flex; }


[successfull] [interactive],
[failed] [loader],
[loading] [interactive]{ display: none; }


[loading] [loader] { display: flex; }

[orientation=portrait] .hidden-mobile{ display: none !important; }

#currentPhoto[downloading],
#currentPhoto[src="#"]
{
  display: none
}



.flash #currentPhoto
{
  filter: brightness(1.5);
}



#cidade
{
	border: none;
	padding: 8px;
	background: rgba(0, 0, 0, 0.5);
	color: white;
	border-radius: 0px;
	margin-bottom: 16px;
	width: 100%;
}


hr
{
  margin: 32px 0px;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  border-bottom: 0px;
  border-left: 0px;
  border-right: 0px;
}



.icon
{
	width: 24px;
	height: 24px;
	margin-right: 16px;
}

#social
{
	padding: 0px;
	list-style-type: none;
	margin: 42px 0px 8px;;
}

#social .icon
{
	width: 16px;
	height: 16px;
	margin-right: 5px;
}

[orientation=portrait] #social .icon
{
	width: 32px;
	height: 32px;
}


img
{
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -o-user-select: none;
  user-select: none;
}

#banner
{
	height: 40vh;
	box-shadow: 0px 0px 30px black inset;
}

.close
{
	position: absolute;
	top: 20px;
	right: 16px;
	z-index: 3000;
	cursor: pointer;
}

.fscreen
{
	display: block;
	position: absolute;
	top: 20px;
	left: 16px;
	z-index: 3000;
	width: 24px;
	height: 24px;
}

nav ul
{
	list-style: none;
	list-style-position: inside;
	margin: 0px;
	padding: 0px;
}

nav ul li
{
	padding: 8px 0px;
	margin-bottom: 2px; 
}

nav a
{
	text-transform: uppercase;
	text-decoration: none;
	font-weight: 400;
}


.alert
{
    display: block;
    box-sizing: border-box;
    padding: 22px;
	margin-bottom: 22px;
    box-shadow: 3px 3px 16px inset #00000021;
    border-radius: 5px;
	list-style: none;
}

.alert-success
{
    color: green;
    font-weight: bold;
}

.alert-error
{
	color: red;
}

form
{
	padding: 22px;
}

form.short
{
	max-width: 500px;
	margin: 0px auto;
}

.header
{
    padding: 22px;
    display: flex;
    background: #ccc;
    color: black;
    align-items: center;
    font-size: 100;
}

.header h2
{
    flex-grow: 1;
    flex-shrink: 1;
    margin: 0px;
    font-weight: 400;
	color: inherit;
}

[orientation=landscape] .header
{
	background: #140b23;
	background-image: url(/img/2.jpg);
	background-size: cover;
	color: white;
}

[orientation=landscape] .header h2
{
	text-shadow: 1px 1px 1px black;
}


.header .btn
{
    margin: 0px;
}


form .field
{
    display: flex;
    margin-bottom: 16px;
}


form label,
form select,
form textarea,
form input
{
    padding: 8px;
    border: 1px solid #a8a8a8;
}

form textarea
{
    flex-grow: 1;
    min-height: 100px;
    margin: 0px;
}

form label
{
    width: 120px;
    display: block;
    background: #f9f9f9;
    border-right: 0px;
    font-size: 14px;
}

form.short input,
form .long
{
    flex-grow: 1;
}

form.short input[type=checkbox]
{
	flex-grow: 0;
}

[orientation=portrait] form .field
{
    flex-direction: column;
}


[orientation=portrait] form label
{
	padding: 8px 0px;
    border: 0;
    background: transparent;
}

[orientation=landscape] form .field[input-position=before],
[orientation=portrait] form .field[input-position=before]
{
    flex-direction: row-reverse;
}

[orientation=landscape] form .field[input-position=before] label,
[orientation=portrait] form .field[input-position=before] label
{
    flex-grow: 1;
    border: 0;
    background: transparent;
}

.form-footer
{
	border-top: 2px solid #d2d2d2;
	margin-top: 32px;
	padding-top: 32px;
    display: flex;
    justify-content: flex-end; 
}

[orientation=portrait] .form-footer
{
	flex-direction: column;
}

pre
{
	width: 80%;
	white-space: pre-wrap;
}