@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300..700;1,300..700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');
@import url('img/ico/fontawesome.css');

/* reset */
* { margin:0; padding:0; border:0 none; outline:0; vertical-align:baseline; background:transparent; text-decoration:none; font:inherit; list-style:none; quotes:none; border-collapse:collapse; border-spacing:0; resize:none; box-sizing:border-box; letter-spacing:inherit; color:inherit; text-align:inherit; left:auto; top:auto; caret-color:transparent; }
@-ms-viewport { width:extend-to-zoom; zoom:1.0; }
a { cursor:pointer; }
:focus { outline:0; }
::-ms-clear { display: none;}

/* geral */
html { height:100%; --escuro:#0c0f11; --claro:#c1986c; --sombra:-2px 2px 10px rgba(0,0,0,0.1); font:300 16px/1.5 'Montserrat', Helvetica, sans-serif; scroll-behavior:smooth; padding-top:80px; }
body { background:#fff; color:var(--claro); min-height:100%; width:100%; position:absolute; border-bottom:30px solid #040707; }
section>* { max-width:1200px; margin:auto; padding:80px 30px; text-align:center; scroll-margin-top:81px; }
section.v { background:linear-gradient(0deg,#040707,#09151b); }
section.h { background:linear-gradient(270deg,#0a161b,#040707); }
	a.bt { padding:10px; border:1px solid var(--claro); text-transform:uppercase; display:inline-block; }
	a.bt::selection { background:none; }
	a.bt:hover, a.bt.ativo { border-color:#fff; color:#fff; }
		a.bt:not(.btv) i { font-size:1.5em; line-height:0; margin-right:5px; position:relative; top:3px; -webkit-text-stroke:0.75px black; }
	a.btv { border-radius:99px; padding:10px 30px; background:var(--escuro); font-weight:500; }
	a.btv:hover { background:var(--escuro); border-color:var(--claro); }
	h2 { font:normal 2.8em/1 'Cormorant Garamond', serif; }
	h3 { text-transform:uppercase; font-size:2em; font-weight:500; margin-bottom:1em; }
	.padrao p { margin-bottom:1em; text-align:justify; }
	.padrao a { color:var(--escuro); text-decoration:underline; }
	.padrao strong { font-weight:bold; }
	.padrao em { font-style:italic; }
	.padrao s { text-decoration:line-through; }
	.padrao mark { background:var(--medio); color:#fff; padding:0 0.25em; }
	.padrao blockquote { font-style:italic; color:var(--medio); padding-left:1em; border-left:0.2em solid var(--claro); }
	.padrao ul, .padrao ol { padding-bottom:1em; counter-reset:li; }
		.padrao li { padding:0 0 0.5em 1em; position:relative; overflow:hidden; text-align:justify; }
		.padrao ul>li:before { content:''; width:0.25em; height:0.25em; display:inline-block; margin:0 0.5em 0 -1em; border:0.2em solid var(--claro); }
		.padrao ol>li:before { content:counters(li,'.')' '; counter-increment:li; font-weight:bold; color:var(--claro); text-align:right; position:absolute; right:calc(100% - 0.75em); }
			.padrao li>ol, .padrao li>ul { margin:0.5em 0 0; padding-left:1em; border-left:2px solid var(--claro); }
				.padrao li>ol>li:before, .padrao li>ul>li:before { position:static; margin-left:-1em; }		
#topo { position:fixed; width:100%; left:0; top:0; z-index:999; height:80px;; transition:top 0.5s; text-transform:uppercase; vertical-align:middle;  }
	nav { display:flex; flex-wrap:wrap; gap:30px; justify-content:space-between; padding:30px }
		nav a.mobile { display:none; }
		nav a.bt { margin-top:-10px; }
		nav a:hover, nav a.ativo { color:#fff; }
	#topo>a { display:none; }
#banner { background:url(img/topo.jpg) center/cover; max-width:1366px; padding:30px 113px; font-size:1.5em; line-height:1.3; aspect-ratio:1366/590; border-bottom:1px solid var(--claro); }
	#banner div { max-width:400px; text-align:left;}
	#banner em { color:#fff; display:block; padding:1em 0 0; }
	#banner a.bt { margin:1em 0 0; padding:1em; font-size:0.8em; display:inline-block; }
#instituto { border-bottom:1px solid var(--claro); }
	#instituto ul { display:flex; flex-wrap:wrap; gap:80px 30px; justify-content:space-around; }
		#instituto li { width:250px; color:#fff; }
			#instituto h3 { color:var(--claro); font-size:1.2em; }
.citacao { }
	.citacao p { font:normal 24px/1.3 'Cormorant Garamond', serif; color:var(--escuro); padding:10px 0; }
	.citacao blockquote { text-align:left; display:grid; grid:auto/200px 1fr; align-items:center; }
		.citacao blockquote h2 { text-align:right; padding:10px 30px 10px 0; }
		.citacao blockquote p { border-left:1px solid var(--claro); padding-left:30px; }
	#historia video { max-width:700px; aspect-ratio:16/9; width:calc(100% - 52px); outline:1px solid var(--claro); display:block; border:25px solid transparent; box-sizing:content-box; margin:0 auto -17px; cursor:pointer; object-fit:cover; }
		#historia video+a.bt { position:relative; }
		#historia video:hover+a.bt { color:#fff; }
		#historia>p { max-width:800px; margin:auto; }
#profissionais { border-bottom:1px solid var(--claro); padding-bottom:40px; }
	#profissionais h3 small { display:block; font-size:0.6em; font-weight:300; padding-top:0.3em; }
		#profissionais div { text-align:left; padding:0 0 50px; clear:both; overflow:hidden; }
			#profissionais img { margin-right:30px; width:200px; float:left; }
			#profissionais p { color:#fff; margin:1em 0; }
			#profissionais ul { background:rgba(255,255,255,0.2); font-size:1.2em; padding:30px; padding-left:50px; margin-left:230px; border-radius:0 60px 60px 60px; color:#fff; display:none; }
				#profissionais li { list-style:disc; line-height:1.2em; padding-bottom:0.8em; }
#especialidades { }
	#especialidades ul { display:flex; gap:30px; flex-wrap:wrap; justify-content:space-around; padding:80px 0 0; }
		#especialidades li { width:350px; color:#fff; background:#715839; padding:30px; border-radius:30px; margin-bottom:10px;	}
			#especialidades h3 { color:var(--escuro); font-size:1.2em; overflow-wrap:break-word; }
	#especialidades a.bt { display:inline-block; margin:30px 0; }
#assessoria a.bt { font:300 16px/1.5 'Montserrat', Helvetica, sans-serif; color:var(--claro); font-weight:500; }
#assessoria a.bt:hover { border-color:var(--escuro); color:var(--escuro); }
		#assessoria a.bt i { -webkit-text-stroke:0; font-weight:100; }	
#programas { }
	#programas ul { display:flex; gap:30px; padding:30px 0 0; justify-content:space-around; flex-wrap:wrap; margin-bottom:-80px; }
		#programas li { width:360px; background:#715839; padding:10px; margin-bottom:30px; background:linear-gradient(rgba(0,0,0,0),#2c2218,var(--claro)); position:relative; }
			#programas li img { width:100%; aspect-ratio:16/9; outline:20px solid var(--claro); cursor:pointer; border-radius:30px; object-fit:cover; margin-bottom:-20px; }
				#programas aside { position:fixed; z-index:1000; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,0.5); display:none; justify-content:center; align-items:center; }
				#programas aside:after { content:'×'; background:var(--claro); position:absolute; right:calc(50% - 0.75em); bottom:15px; left:auto; font-size:2em; color:var(--escuro); width:1.5em; height:1.5em; text-align:center; border-radius:50%; cursor:pointer; }
					#programas aside video { max-width:90%; max-height:80%; aspect-ratio:16/9; }
			#programas li div { text-align:left; padding:20px; }
				#programas li h2 { font-size:2em; font-weight:900; margin-bottom:0.8em; }
				#programas li h2 em { display:block; color:#fff; font:bold 16px/1.5 'Montserrat', Helvetica, sans-serif !important;  }
				#programas div p { color:#fff; margin-bottom:1em; }
			#programas li a.bt:not(.btv) { position:absolute; bottom:-15px; left:50%; margin-left:-115px; width:230px; background:var(--escuro); }
#insights h3 { display:grid; grid:auto/1fr 200px 1fr; font-size:1.5em; }
	#insights h3 em { border-top:1px solid var(--claro); margin:0.75em 0 0; }
	#insights ul { display:flex; gap:30px; flex-wrap:wrap; justify-content:space-around; padding:40px 0 0; margin:auto; }
		#insights li { width:260px; }
			#insights li p { margin-bottom:2em;	color:#fff; text-align:justify; }
			#insights li img { width:100%; border:1px solid var(--claro); border-radius:50px; aspect-ratio:1; margin-bottom:1em; object-fit:cover; }
#contato { overflow:hidden; font-weight:300; color:var(--escuro); }
	#contato img { max-width:400px; display:block; margin:0 auto 30px; }
	#contato div { min-width:50%; float:left; text-align:right; margin:30px 0 0; padding:0 30px; border:1px solid var(--claro); border-width:0 1px 0 0; }
	#contato div:last-child { border:0; text-align:left; }
	#contato strong { font-weight:600; color:var(--claro); }
	#contato i { background:var(--claro); color:#fff; text-align:center; line-height:2.1em; border-radius:50%; width:2.1em; height:2.1em; display:inline-block; margin-bottom:10px; }
	#contato a:hover i { background:var(--escuro); }
	
/* responsivo */
@media (max-width:1200px)  { 
	::selection { background:none; }
	body { top:0; }
	#topo { height:auto; }
		#topo.sobe:before { content:''; width:100%; height:100%; position:fixed; z-index:-1; background:rgba(0,0,0,0.2); }
		#topo nav { display:none; }
			#topo a { width:calc(50% - 15px); padding:0; font-size:1em; text-align:left; }
			#topo a.mobile { display:block; }
				#topo a.mobile i { left:-1em; }
			#topo a.bt { display:none; }
				#topo a span { display:block; }
		#topo>a { display:block; position:absolute; background:var(--claro); position:absolute; right:17.5px; top:17.5px; left:auto; font-size:1.5em; line-height:2.1em; color:var(--escuro); width:2em; height:2em; text-align:center; border-radius:50%; cursor:pointer; box-shadow:-3px 3px 7px; rgba(0,0,0,0.25);  }
			#topo>a i+i, #topo.sobe nav+a i { display:none; }
			#topo.sobe>a i+i { display:inline; }
		#topo>a+a { top:85px; }
	section>* { scroll-margin-top:0; }
	#topo+section { padding-top:150px; }
	#banner { padding:0; font-size:1em; background-position:right top; aspect-ratio:4/3; position:relative;	}	
		#banner div { text-align:center; width:100%; max-width:100%; }
			#banner img { width:100%; height:80px; position:absolute; top:-110px; left:0; }
			#banner aside { display:block; aspect-ratio:40/18; width:100%; }
			#banner br { display:none; }
			#banner span { display:block; }
		#banner a.bt { display:none; }
	#instituto h2 span { display:block; }
		#instituto li { width:calc(50% - 15px); }
	#especialidades ul { gap:10px; }
		#especialidades li { width:calc(50% - 10px); padding:10px; }
	#profissionais {}
		#profissionais h3 span { display:block; }
		#profissionais img { margin-right:20px; width:150px; }
		#profissionais a.bt { margin-left:170px }
		#profissionais ul { clear:both; margin:0; }
	.citacao blockquote { grid:auto/170px 1fr; }
		.citacao h2 { font-size:2em; }
	#programas ul { gap:10px; }
		#programas li { width:calc(50% - 10px); }
			#programas li img { outline-width:16px; }
			#programas li div { padding:10px; }
			#programas li h2 { font-size:1.5em; }
			#programas aside:after { bottom:25%; }
	#insights li { width:calc(50% - 15px); }
	#contato div { padding:0; margin-bottom:200px; text-align:left; }
	#contato img+div { border-width:0 0 0 1px; padding-left:37px; margin:0 10px 30px; }
}