/*
Theme Name: Holaria
Theme URI:	https://ape1001.com.br/
Author: Rafael Forcadell
Version: 1.0
Text Domain: holaria
*/



* { position:relative; margin:0; box-sizing:border-box; }
img { display:block; margin:0; max-width:100%; height:auto; }


body { position:relative; margin:0; background-color:#f2f2f2; color:rgba(0,0,0,.6); font-family:'Montserrat', sans-serif; font-size:16px; font-weight:300; line-height:1.5em; letter-spacing:-0.03em; -webkit-font-smoothing:antialiased; overflow-y:scroll; }


.xdebug-var-dump, .xdebug-var-dump small { font-size:12px; line-height:20px; }
.xdebug-var-dump small { color:#04c5ef; }


strong, b { font-weight:500; }
*:focus { outline:none; }
*::-ms-clear { display:none; }
*::-ms-reveal { display:none; }
*::selection { background-color:rgba(0,0,0,.2); opacity:1; }
.clearfix { clear:both; }


a[href] {
	font-weight:500; 
	text-decoration:none;
	background-image:linear-gradient(currentColor, currentColor);
	background-position:0 100%;
	background-repeat:no-repeat;
	background-size:0% 1px;
	transition:background-size 100ms ease-in-out;
	-webkit-tap-highlight-color:transparent; 
}
a:link { color:#04c5ef; text-decoration:none; }
a:visited { color:#851992; }
a.static:visited { color:#04c5ef; }
a:hover, a:focus { text-decoration:none; background-size:100% 1px; }
a:active, a.static:active { color:#f70973; background-image:linear-gradient(#f70973, #f70973); }

a[href^="tel"] { color:inherit; }

a.ancora { position:absolute; left:0; display:block; height:0; }


h1, h2, h3, h4, h5, h6 { position:relative; font-weight:200; margin:0 0 1em 0; letter-spacing:-0.03em; }

h1, h2 { font-weight:100; }

h1 { font-size:48px; line-height:52px; }
h2 { font-size:48px; line-height:52px; }
h3 { font-size:36px; line-height:40px; }
h4 { font-size:32px; line-height:36px; }
h5 { font-size:28px; line-height:32px; }
h6 { font-size:24px; line-height:28px; }

h1 strong, h1 b,
h2 strong, h2 b,
h3 strong, h3 b,
h4 strong, h4 b,
h5 strong, h5 b,
h6 strong, h6 b { font-weight:400; }

* + h1 { margin-top:48px; }
* + h2 { margin-top:48px; }
* + h3 { margin-top:40px; }
* + h4 { margin-top:36px; }
* + h5 { margin-top:32px; }
* + h6 { margin-top:28px; }

h1 + h2,
h1 + h3,
h2 + h3 { margin-top:-1em; }


.boundaries { position:relative; z-index:1; clear:both; float:left; display:flex; flex-direction:column; align-items:stretch; width:100%; min-height:100vh; margin:0; overflow:hidden; }
/*.boundaries:after { position:fixed; z-index:99999; top:20px; left:20px; width:calc(100% - 40px); height:calc(100% - 40px); border:1px solid rgba(0,0,0,.2); box-sizing:border-box; content:""; pointer-events:none; }*/

.boundaries.lock { height:100vh; overflow:hidden; overflow-y:scroll; }


main { /*flex-grow:1;*/ }
header.header, main, footer.footer { flex-shrink:0; }


.logo { position:relative; display:flex; justify-content:center; align-items:center; vertical-align:top; background-color:#333; text-transform:uppercase; }
a[href].logo { font-weight:200; transition:background 100ms ease-in-out; }

.logo span { display:inline-block; vertical-align:top; background-image:url(images/holaria.svg); background-position:top center; background-repeat:no-repeat; background-size:contain; text-indent:-9999px; }
.logo strong { font-weight:600; margin:0 0 0 5px; }

.logo:link { color:#fff; }
.logo:visited { color:#fff; }
.logo:hover, .logo:focus { background-size:0; background-color:#222; }
.logo:active { color:#fff; }


.boundary { position:relative; z-index:1; width:100%; margin:0 auto; }


p { margin:0 0 .7em 0; }


ul { margin:0 0 .7em 0; padding:0 0 0 15px; list-style:url(images/icons/li.svg); }
ul li { position:relative; }


ol { margin:0 0 .7em 0; padding:0; list-style:none; counter-reset:contador; }
ol li { counter-increment:contador; }
ol li::before { content:counter(contador) ". ";  }


.button { clear:both; display:table; z-index:1; width:auto; padding:0 25px; font-family:'Montserrat', sans-serif; font-size:16px; line-height:50px; font-weight:400; color:#fff; background-color:#333; cursor:pointer; -webkit-appearance:none; border:0; transition:background 100ms ease-in-out; }
.button.inline { clear:none; display:inline-block; vertical-align:bottom; margin:0 0 30px 20px; }
.button:hover, .button:focus { background-color:#222; border-color:#222; color:#fff; background-size:0; }

.button.inline.or { margin-left:65px; }
.button.inline.or:before { position:absolute; top:0; left:-40px; color:rgba(0,0,0,.6); font-family:'Montserrat', sans-serif; font-weight:500; font-size:12px; content:"or"; pointer-events:none; }


.flat-button { display:inline-block; vertical-align:middle; font-size:10px; line-height:18px; text-transform:uppercase; font-weight:600; color:rgba(0,0,0,.6); cursor:pointer; -webkit-appearance:none; border:0;  
	text-decoration:none;
	background-image:linear-gradient(currentColor, currentColor);
	background-position:0 100%;
	background-repeat:no-repeat;
	background-size:0% 1px;
	transition:background-size 100ms ease-in-out;
	-webkit-tap-highlight-color:transparent; 
}
.flat-button:link { color:rgba(0,0,0,.6); text-decoration:none; }
.flat-button:visited { color:rgba(0,0,0,.6); }
.flat-button:hover, .flat-button:focus { text-decoration:none; background-size:100% 1px; }
.flat-button:active { color:rgba(0,0,0,.6); background-image:linear-gradient(rgba(0,0,0,.6), rgba(0,0,0,.6)); }


.right { float:right; }


@media screen and (min-width:1220px) {
	
	a.anchor { top:-100px; } 
	
	.boundary { max-width:1100px; }
	
	.logo { width:400px; height:130px; font-size:19px; }
	
	.logo span { width:75px; height:23px; margin-right:5px; }
	
}


@media screen and (min-width:1000px) and (max-width:1219px) {
	
	a.anchor { top:-70px; }
	
	.boundary { max-width:calc(100% - 120px); }
	
	.logo { width:400px; height:130px; }
	
	.logo span { width:75px; height:23px; margin-right:5px; }
	
}


@media screen and (min-width:750px) and (max-width:999px) {
	
	a.anchor { top:-60px; }
	
	.boundary { max-width:calc(100% - 120px); }
	
	.logo { width:400px; height:130px; }
	
	.logo span { width:75px; height:23px; margin-right:5px; }
	
}


@media screen and (max-width:749px) {
	
	body { font-size:14px; line-height:26px; }
	
	a.anchor { top:-60px; }
	
	.boundary { max-width:calc(100% - 90px); }
	
	.logo { width:110px; height:110px; background-size:contain; }
	
}


@media screen and (max-width:359px) {
	
	.boundary { max-width:calc(100% - 60px); }
	
}


figure .loading { position:absolute; top:50%; left:50%; width:20px; height:20px; margin:-10px; background-image:url(images/icons/loading.svg); background-repeat:no-repeat; background-position:center; background-size:contain; opacity:.2; animation:loading 500ms linear infinite; }

@keyframes loading{
	100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}
}
@-webkit-keyframes loading{
	100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}
}


/*.blink { animation:blink 500ms steps(5, start) infinite; }*/
@keyframes blink {
	0%{opacity:0;}
	10%{opacity:1;}
	40%{opacity:1;}
	50%{opacity:0;}
	100%{opacity:0;}
}
@-webkit-keyframes blink {
	0%{opacity:0;}
	10%{opacity:1;}
	40%{opacity:1;}
	50%{opacity:0;}
	100%{opacity:0;}
}